Remora / Remora.Results

A simple, versatile algebraic data type for C#.
GNU Lesser General Public License v3.0
15 stars 5 forks source link

Add net461 and net462 targets #10

Closed Foxtrek64 closed 1 year ago

Foxtrek64 commented 1 year ago

Fixes #9

Blocked by Remora/Remora.SDK#3 (build will not succeed until this issue is fixed)

Nihlus commented 1 year ago

Is net462 required? The library already builds for netstandard2.0, which claims support for .NET 4.6.2.

Nihlus commented 1 year ago

Also, TupleElementNamesAttribute is still missing with PolySharp installed. I've switched to it in Remora.Sdk anyway because it's more feature-complete, but it seems like this is one piece that's still missing.

Nihlus commented 1 year ago

Follow-up issue: installing System.ValueTuple conditionally fixes that issue, but now I'm getting multiple definitions of IsExternalInit instead.

Related: https://github.com/Sergio0694/PolySharp/issues/48

Foxtrek64 commented 1 year ago

Is net462 required? The library already builds for netstandard2.0, which claims support for .NET 4.6.2.

I was looking into this again - Microsoft attempted to retroactively add support for net461 to netstandard2.0, which completely broke and they never actually went and fixed it. Net462 was not affected and will receive support through netstandard2.0.

TL;DR: No, it is not required. Net461 is required because of bugs with the interface between Net461 and Netstandard2.0.

Nihlus commented 1 year ago

I've pushed some experimental changes that don't require PolySharp and it seems to work okay on my end. Can you test and make sure?

Foxtrek64 commented 1 year ago

I created a test project in UiPath C# (the more finnicky of the two on this version) with effectively this code:

Result<string> result = "Success!";
MessageBox.Show(result.Entity);

And the message box appeared as expected.

Nihlus commented 1 year ago

I'll close this, then.