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

Chain of transitives aligned by same platform can lead to broken resolution #9882

Closed
dansanduleac opened this issue Jul 4, 2019 · 0 comments

Comments

@dansanduleac
Copy link
Contributor

dansanduleac commented Jul 4, 2019

For a set of dependencies

start:start:1.0 -> org:foo:1.0

org:foo:1.0 -> org:bar:1.0
org:foo:1.1 -> org:bar:1.1

If we align the org group with a virtual platform, constrain that virtual platform to require 1.1, and depend on start:start:1.0, this situation produces a broken resolution graph in 5.5-rc2 and higher (git bisected this behaviour to 360949f).

Expected Behavior

The above situation should resolve to

start:start:1.0
\--- org:foo:1.0 -> 1.1
     \--- org:bar:1.1

Current Behavior

It resolves to

start:start:1.0
\--- org:foo:1.0 -> 1.1

completely losing foo's dependency on bar.

Context

This broke an internal project.

Steps to Reproduce

Failing integration test to come shortly.

Your Environment

@dansanduleac dansanduleac mentioned this issue Jul 4, 2019
11 tasks
ljacomet added a commit that referenced this issue Jul 8, 2019
When a dependency activates a pending constraint, do not defer
selection if the pending constraint comes from a virtual platform.
Because of their special aspects, virtual platforms really need to be
handled in line each time.

Fixes #9882
@big-guy big-guy added this to the 5.5.1 milestone Jul 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants