VS 2017 Update 3 preview
I'm getting similar errors all the time inside Visual Studio. There is obviously a problem somewhere, to the point where nuget seems to be unusable...
Unable to satisfy conflicting requests for 'Company.Module': externalProject/Company.Module (>= 1.0.0.1) (via project/Company.Testing.Framework 0.1.0), Company.Module (>= 1.0.0.1) (via project/Company.Framework 0.1.0-alpha), Company.Module (>= 1.0.0.1) (via project/Company.Framework.Services 1.0.0) Framework: (.NETCoreApp,Version=v2.0)
Unable to satisfy conflicting requests for 'Company.Contracts': externalProject/Company.Contracts (>= 1.0.2.1) (via project/Company.Testing.Framework 0.1.0), Company.Contracts (>= 1.0.2.1) (via project/Company.Framework 0.1.0-alpha), Company.Contracts (>= 1.0.2.1) (via project/Company.Module 1.0.0.1), Company.Contracts (>= 1.0.2.1) (via project/Company.Framework.Services 1.0.0), Company.Contracts (>= 1.0.2.1) (via project/Company.Contracts.Framework 1.0.0.1) Framework: (.NETCoreApp,Version=v2.0)
In the first case, it's says it's conflicting because everyone has the same >= 1.0.0.1 dependency
In the second case, >= 1.0.2.1
I'm no expert, but I think it's a bug when nuget reports that there is a conflict because everyone is asking the same version...
I don't have a repro for this as it's custom code, however, I did make sure that everyone is targeting .net standard 2.0 libraries to at least remove that as a potential conflict.
Please help... I'm noticing there is a very high number of open issues. I'm still crossing my fingers that this can be somehow solved.
@philippe-lavoie Thanks for reporting the issue.
You can find more information about this issue in documentation for this error. I think that error message had an issue where it did not print the right versions.
@emgarten This looks like the error message that you recently fixed? When did that go in?
It looks like the project Company.Testing.Framework
has a project reference to Company.Module
.
Company.Framework
and Company.Framework.Services
both reference the package Company.Module
. The result is that these two conflict since the root level project here can't use both the project and package at the same time.
@philippe-lavoie is that how your project is set up? Does removing the package or project reference solve the issue?
The format is {Request} (via {Requestor})
to represent the edges in the dependency graph. The edges are comma delimited.
Version conflicts are covered by a different error, this error occurs when non-version constraints are conflicting.
It looks like this error message could be improved to make it more clear.
I think you are correct. project A was exposed as a package and used by package B. However C was using a reference to A and B was doing a nuget reference to C also.
Actually, exposing packages and working with them while doing development is forcing us to do the following custom steps inside our csproj files. It feels like a hack... especially since we wanted to also build our .net standard libraries in Linux too.
Most helpful comment
It looks like the project
Company.Testing.Framework
has a project reference toCompany.Module
.Company.Framework
andCompany.Framework.Services
both reference the packageCompany.Module
. The result is that these two conflict since the root level project here can't use both the project and package at the same time.@philippe-lavoie is that how your project is set up? Does removing the package or project reference solve the issue?
The format is
{Request} (via {Requestor})
to represent the edges in the dependency graph. The edges are comma delimited.Version conflicts are covered by a different error, this error occurs when non-version constraints are conflicting.
It looks like this error message could be improved to make it more clear.