Start converting Deedle to target netstandard2.0 #382
Merged
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.
Hi, i started working on supporting both netstandard2.0 and net45.
I have converted all the projects to the new ProjectSdk format and targeted changed the target frameworks to netstandard/netcoreapp and net45 where applicable. There are also a few code changes in order to support netstandard. Mainly the use of AssemblyBuilder instead of AppDomain.CurrentDomain.DefineDynamicAssembly. I also fixed the documentation content and samples and updated the fake build script. For the build script i pretty much copied what FSharp.Data is currently doing in their effort to support netstandard. I also updated several of the packages used.
All the tests (except for the RPlugin, see below) are working fine. The build script might need some more work, especially with regard to publishing to nuget.
There are however a few things i could use help with, mainly in regards to the RProvider:
I also updated the FSharp.Data files and the signature files are out of date. I created new ones but even with updated files, there seems to be a problem with the new project format and linking external files. If i copy a FSharp.Data file (for example IO.fs) into Deedle\src\FSharp.Data next to its signature file (IO.fsi) everything works fine. If i leave the implementation file in paket-files\fsharp\FSharp.Data, the compiler complains about a missing implementation file for the signature file, even though without a signature file at all everything compiles just fine. I'm not really sure what to do about that, so i left the signature files out for now.