Skip to content
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

VS Nuget Client 3.3 resolves Dependencies - VS Nuget Client 3.4.4 does not #3311

Closed
MarkusWild opened this issue Aug 12, 2016 · 9 comments · Fixed by NuGet/NuGet.Client#833
Closed
Assignees
Labels
Functionality:Update The update package feature/command/experience
Milestone

Comments

@MarkusWild
Copy link

We are using ProGet 4.0.9 and have Problems in Package resolving with VS 2015 while updating packages.

With VS 2013 the packages are updated without any Problems.

The VS 2015 Error List Shows following error:
Error Unable to resolve dependencies. 'FLS.Bootstrapper 0.1.2634.1-alpha' is not compatible with 'HomagGroup.FLS.Infrastructure.Web 0.1.2634.1-alpha constraint: FLS.Bootstrapper (>= 0.1.2634.1-alpha)'. 0

Any guesses?

@rrelyea
Copy link
Contributor

rrelyea commented Aug 12, 2016

What version of VS are you using?
What version of NuGet are you using?
Please give us repro steps on how to reproduce in vs2015 with exact steps, starting from file new project?

Update: Actually, after I submitted this comment, I noticed the version details in the title. So you are saying VS2013 with NuGet v2.x works. VS2015 with NuGet v3.3 works. But VS2015 with NuGet v3.4.4 does not work?
[also --- can you please try out v3.5rc1 from http://nuget.org/downloads to tell us if this fixes this issue?]

@rrelyea rrelyea added the Viewed label Aug 12, 2016
@MarkusWild
Copy link
Author

Using 3.5rc1 has no positive effect. I also compiled the 3.6.0 Sources and installed the VSIX - also no effect. The Client can still not resolve the packages.

What other Input do you Need to resolve this issue?

@MarkusWild
Copy link
Author

Perhaps this issue is correlated to the issue 2298:

#2298

We have Packages with 4 Digits Versions that ending with Zero.

The actual Packages.config is here:

packages.zip

The old packages have the form:
package id="FLS.Bootstrapper" version="0.1.2614.0-alpha" targetFramework="net45"
The updatable packages have the form:
package id="FLS.Bootstrapper" version="0.1.2634.1-alpha" targetFramework="net45"

Perhaps this has also todo with the fact that we want to update a prerelease Version?!

The Output of the Package Manager is as following:

Attempting to gather dependency information for multiple packages with respect to project 'HomagGroup.FLS.Projects.WoodFactoryDemo.Web', targeting '.NETFramework,Version=v4.5'
Gathering dependency information took 1,57 sec
Attempting to resolve dependencies for multiple packages.
One or more unresolved package dependency constraints detected in the existing packages.config file. All dependency constraints must be resolved to add or update packages. If these packages are being updated this message may be ignored, if not the following error(s) may be blocking the current package operation: 'FLS.Bootstrapper 0.1.2614-alpha', 'HomagGroup.FLS.Applications.Update 0.1.2614-alpha', 'HomagGroup.FLS.Domain.Base 0.1.2614-alpha', 'HomagGroup.FLS.Domain.Extensions 0.1.2614-alpha', 'HomagGroup.FLS.Infrastructure.Common 0.1.2614-alpha', 'HomagGroup.FLS.Infrastructure.T4 0.1.2614-alpha', 'HomagGroup.FLS.Infrastructure.Web 0.1.2614-alpha', 'HomagGroup.FLS.Services.Common.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.Common.Samples 0.1.2614-alpha', 'HomagGroup.FLS.Services.Common.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.Configuration.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.Configuration.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataAccess.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataAccess.DomainDescription.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataAccess.DomainDescription.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataAccess.Generator.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataAccess.Generator.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataAccess.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataImport.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataImport.Samples 0.1.2614-alpha', 'HomagGroup.FLS.Services.DataImport.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.Deployment.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.LotGeneration.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.LotGeneration.Service 0.1.2614-alpha', 'HomagGroup.FLS.Services.Reporting.Contracts 0.1.2614-alpha', 'HomagGroup.FLS.Services.Reporting.Service 0.1.2614-alpha'
Unable to resolve dependencies. 'FLS.Bootstrapper 0.1.2634.1-alpha' is not compatible with 'HomagGroup.FLS.Infrastructure.Web 0.1.2634.1-alpha constraint: FLS.Bootstrapper (>= 0.1.2634.1-alpha)'.

@emgarten
Copy link
Member

There are some known issues around error messages being incorrect when the project is already in a broken state before the update/install. It looks like the client detected that this is the case and displayed a warning.

One or more unresolved package dependency constraints detected in the existing packages.config file. All dependency constraints must be resolved to add or update packages.

It may help to first find what package is missing or has invalid dependency constraints in the current packages.config file before trying to update.

You can also try:

  1. Copy the packages you expect to use to a local folder and add that as a source to rule out any ProGet issues like the one you mentioned.
  2. Install FLS.Bootstrapper and HomagGroup.FLS.Infrastructure.Web directly
  3. Update the top level package

Perhaps this has also todo with the fact that we want to update a prerelease Version?!

This shouldn't be the issue unless you have a stable package that depends on pre-release packages.

@MarkusWild
Copy link
Author

MarkusWild commented Aug 16, 2016

@emgarten thanks for the hints.

I copied all the new packages to a local Folder. Update works for the packages if they reside in one local Feed!

But there is not only an Update in this Szenario. There is also a Depending Package, that requires an Installation of new Packages:

updatewithinstall

And this packages cannot be resolved, if they are not in the same feed. When I separate these packages into a separate Local Source the Update also fails. For me this seems to be a bug in the Nuget Client Update Scenario, where the Updated Packages require new packages to be installed and the new packages are located in separate Feeds.

updatewithinstall-2localfeeds

In this Scenario the ProGet Server is not the Problem at all.

@emgarten
Copy link
Member

@MarkusWild thanks for narrowing the issue down. This is from the UI when updating a single package? Does it make a difference if you use the package management console?

//cc @jainaashish

@jainaashish
Copy link
Contributor

yeah it seems this issue will only be UI since we only pass active source in there where PMC uses all enabled sources to resolve dependency.

@MarkusWild You can also try selecting 'All' sources in UI and check. It should work in that case.

@MarkusWild
Copy link
Author

@jainaashish: Updateing the packages with "All" sources in the UI works.

But from my Point of view the beahviour of the UI is irritating. It would be better, if the UI searches all Configured "Active Sources" while trying to resolve the packages.

IMHO, the Selection in the UI should just be a filter for the Package Selection and the Configuration is the one and only place that is responsible for the Resolving mechanism.

The other Point are the missleading Error Messages. They are totaly irritating. It would be great if that could be fixed.

Thanks for your help.

@jainaashish
Copy link
Contributor

I agree with you, the correct behavior here is to have target packages only from selected sources (active sources) where as dependencies should be resolved across all enabled sources. And that's what happens in case of Package Management Console. So we should have similar behavior in UI as well.

Also I agree with misleading error message here. I'll re-open this issue and get these things fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Functionality:Update The update package feature/command/experience
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants