Resolving .net standard depedencies
See original GitHub issueDescription
I’m experiencing the same problem as @baronfel from the gitter chat:
Chester Husk III @baronfel Jul 21 20:21
I've got a question about how we resolve nuget framework dependencies for a package with the
profile/framework/standard of a project. As a specific example, I have an F# project that is on
NetFramework 4.6.1. This constraint is set in my paket.dependencies to pin to that framework
specifically. This project has a reference to Marten at version 0.9.9.543, which has only a single
nuget dependency on NpgSql. Then I update Marten to version 0.9.12.563, which has a framework
dependency group for netstandard1.3. When the install occurs, because Marten has no specific
netframework4.6.1 or untethered dependencies anymore, my project breaks due to missing
dependencies. Is this something that can be addressed in Paket? Per the .netstandard spec we
should be able to infer that a netstandard1.3 runtime is usable by a .netframework4.6 client, unless
my understanding is wrong.
Repro steps
Please provide the steps required to reproduce the problem
- Use paket to install Marten
- Try to compile getting started page
Here is a repo demonstrating the issue: https://github.com/TheAngryByrd/paketnetstandard
paket folder uses paket (VSCode Ionide console template) while nuget folder uses nuget (VS console template).
Expected behavior
Should be able to compile and put correct dlls in bin
Actual behavior
Does not compile.
Known workarounds
Use nuget 😿
Related information
- Operating system : Windows 10/OSX
- Branch : master
- .NET Runtime, CoreCLR or Mono Version: .NET/Mono
Build error from FAKE:
Build Time Report
---------------------------------------------------------------------
Target Duration
------ --------
Clean 00:00:00.1086663
Total: 00:00:29.4679452
Status: Failure
---------------------------------------------------------------------
1) Building z:\Documents\GitHub\paketnetstandard\vscode\src\vscode\vscode.fsproj failed with exitcode 1.
2) FS1108: z:\Documents\GitHub\paketnetstandard\vscode\src\vscode\vscode.fs(14,19): The type 'IsolationLevel' is required here and is unavailable. You must add a reference to assembly 'System.Data.Common, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
3) FS0072: z:\Documents\GitHub\paketnetstandard\vscode\src\vscode\vscode.fs(16,5): Lookup on object of indeterminate type based on information prior to this program point. A type annotation may be needed prior to this program point to constrain the type of the object. This may allow the lookup to be resolved.---------------------------------------------------------------------
4) FS0072: z:\Documents\GitHub\paketnetstandard\vscode\src\vscode\vscode.fs(17,5): Lookup on object of indeterminate type based on information prior to this program point. A type annotation may be needed prior to this program point to constrain the type of the object. This may allow the lookup to be resolved.
5) FS0072: z:\Documents\GitHub\paketnetstandard\vscode\src\vscode\vscode.fs(18,20): Lookup on object of indeterminate type based on information prior to this program point. A type annotation may be needed prior to this program point to constrain the type of the object. This may allow the lookup to be resolved.
Issue Analytics
- State:
- Created 7 years ago
- Comments:60 (60 by maintainers)
Top Results From Across the Web
Dependencies and .NET libraries
The primary way of adding dependencies to a .NET library is referencing NuGet packages. NuGet package references allow you to quickly reuse and ......
Read more >Getting the right dependency version when using a .NET ...
Project X has a dependency on an external nuget package "ENP" which has different versions for netstandard and netframework. When you add ENP...
Read more >NuGet Package Dependency Resolution
Details on the process through which a NuGet package's dependencies are resolved and installed in both NuGet 2.x and NuGet 3.x+.
Read more >NuGet dependencies of .NET Standard library referenced ...
Let's assume there is a simple .NET Standard library that has a dependency from Newtonsoft.Json NuGet package. And this library, in turn, is ......
Read more >Dependencies don't flow from new NETStandard project to ...
If I look at the .net standard library, it uses the MySqlConnector nuget package, which has a dependency on System.Data.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Just making sure the steps i should take is:
Seems to work still on windows with .net 4.6.1 without the warning messages.
However on OSX/Mono 4.4.2 it seems to have the issue with not finding certain dlls.
you guys need to run update since it influences the lock file as well