-
Notifications
You must be signed in to change notification settings - Fork 525
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
net47 moniker skips netstandard2.0 dependencies #2986
Comments
@matthid isn't that correct behavior? I thought net471 is the first that is compatible with netstandard2.0 |
Officially
|
I'm confused about that. If I'm skim-reading it correctly, the issue is handling the facade/glue/forwarder assemblies. Why does Paket need to deal with that? Visual Studio / MSBuild automatically handles that, even for "normal" assembly references. |
@yaakov-h Yes it is easy to think that. I asked the same in #2391 to @0x53A and got #2391 (comment) |
That is true, but surely that edge case logic only applies to .NET Standard 1.5 and 1.6? .NET Standard 1.4 and .NET Standard 2.0 always supported |
If you agree that .NET Standard 2.0 is a super-set of .NET Standard 1.5 and 1.6 then your statement doesn't even make any sense to me. How can we even say that |
Honestly, we have no idea what we are doing - whatever we do it seems to be a bad idea. Feel free to open PRs and improve/discuss the situation - it is possible that we didn't get the details correctly yet... |
Indeed 😞 Perhaps at the very least, we could introduce a warning or error when a package only supports a newer target framework that what the user has specified? So in this case, since I'm requesting a .NET Standard 2.0 package but Paket thinks that this requires Or, perhaps Paket should only resolve the highest package version that matches is compatible with the |
I think we previously added a warning and people complained because a lot of meta packages are out there which do not support an actual framework. And we cannot really tell the difference. Also there are packages which are by design empty for some frameworks as the functionality is already part of the framework... NuGet ecosystem is a mess. About your resolving suggestion: We don;t have the meta-information regarding supported platforms at resolution time and it would complicate everything a lot. |
Hmmph. With all that considered, the workaround in the OP might actually be the most sensible solution 😞 |
Description
When depending on
Microsoft.Extensions.Configuration
fornet47
, Paket skips transitive dependencyMicrosoft.Extensions.Configuration.Abstractions
.Repro steps
Please provide the steps required to reproduce the problem
paket.dependencies
:paket.exe update
Expected behavior
paket.lock
indicates:Microsoft.Extensions.Configuration
2.0Microsoft.Extensions.Configuration.Abstractions
2.0Actual behavior
paket.lock
indicates no transitive dependencies:Known workarounds
Set
framework
tonet47, netstandard2.0
.The text was updated successfully, but these errors were encountered: