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
Failing test for #9882 #9883
Failing test for #9882 #9883
Conversation
Signed-off-by: Dan Sanduleac <sanduleac.dan@gmail.com>
Signed-off-by: Dan Sanduleac <sanduleac.dan@gmail.com>
Signed-off-by: Dan Sanduleac <sanduleac.dan@gmail.com>
@dansanduleac Thanks for the report and test case! @melix Because we special case constraints from virtual platforms in |
amazing! checking now |
...radle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependencies.java
Outdated
Show resolved
Hide resolved
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 gradle#9882
@dansanduleac Sorry, I just forced push this branch, reflex based on handling my own branches. |
So, good news is that this indeed fixes the issue I reported. Bad news is that I've discovered, thanks to Gradle Consistent Versions' locks, that some other commit since 5.4.1 is causing other dependencies to disappear. Constraints on this
This is broken in v5.5.0-RC1-19-g64434c7, but will need to do some more bisecting to figure out where exactly it broke. |
So there is something else broken that this PR does not fix? Or this PR breaks something else? |
One possibility is that the missing dependencies come from exclusions that were missed before. |
There is something else broken that this PR does not fix. Happy to put that into another issue once I bisect it, but I thought it might be related, as it looks similar in that there is a resolved dep which is missing some transitives. |
Consider filing a different issue, but first try to see if this is not indeed caused by the fixes made to exclude processing for Gradle 5.5 |
@melix you are actually right, just checked and there were some exclusions in the library! good spot implementation 'io.undertow:undertow-servlet', {
// Use javax.servlet:javax.servlet-api instead
exclude group: 'org.jboss.spec.javax.servlet', module: 'jboss-servlet-api_4.0_spec'
exclude group: 'org.jboss.spec.javax.annotation', module: 'jboss-annotations-api_1.2_spec'
} However, the exclusion only shows up in the library dependency that required the higher |
No, in Gradle, all paths leading to a dependency must be excluded in order for a dependency to be excluded. (Shameless plug, we explain this in the webinar). |
@melix Yep, that was my understanding too. |
This is a failing test that exhibits #9882
Context
Contributor Checklist
<subproject>/src/integTest
) to verify changes from a user perspective<subproject>/src/test
) to verify logic./gradlew <changed-subproject>:check
Gradle Core Team Checklist