Add netstandard2.0 target to FSharp.Core project and nuget package #6956
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I noticed recently the FSharp.Core package on Nuget claims to support net45, netstandard1.6, and netstandard2.0. However, after downloading and inspecting the package, I found it only has net45 and netstandard1.6 binaries but no netstandard2.0 binaries.
This isn't a huge deal -- you can use the netstandard1.6 version of FSharp.Core when e.g. building a library targeting netstandard2.0. It is a bit annoying though, because referencing the netstandard1.6 version of FSharp.Core causes some additional packages (which aren't needed for netstandard2.0) to be pulled into a build and referenced by any netstandard2.0 libraries built with F#.
I've simply added the additional netstandard2.0 target framework to the FSharp.Core project + .nuspec files here, which means we'll actually have a netstandard2.0 version of FSharp.Core in the Nuget package, as advertised.
This change can stand on it's own*, but at present will still be using some conditional-compilation workarounds needed for netstandard1.6. I've submitted a separate, also-standalone PR in #6955 to address that.
FX_NO_REFLECTION_MODULE_HANDLES
constant for the netstandard2.0 build, by modifying eitherquotations.fs
orFSharp.Profiles.props
.