-
Notifications
You must be signed in to change notification settings - Fork 3k
Switch to Gradle component variant-based approach to resolve conditional and deployment dependencies #49224
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
Conversation
This comment has been minimized.
This comment has been minimized.
15e8022
to
3c352a6
Compare
@reaver585 fyi. It'd be great if you could also review this one. Thanks! |
This comment has been minimized.
This comment has been minimized.
🙈 The PR is closed and the preview is expired. |
|
||
=== Quarkus component variants | ||
|
||
`disableQuarkusComponentVariants` project property was introduced in Quarkus 3.26.0 to control whether Quarkus component variants should be added to certain dependencies of a project to enable link:conditional-extension-dependencies.adoc[Quarkus conditional] and build time (deployment) dependencies. Quarkus component variants are enabled by default since 3.26.0. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'''
link:conditional-extension-dependencies.adoc[Quarkus conditional]
'''
doesn't appear to work in the preview
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You have to use xref:
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will fix it as it's going to be annoying for multi-version doc.
3c352a6
to
5d00ffd
Compare
Updated the links in the docs |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
5d00ffd
to
10e9dfe
Compare
This comment has been minimized.
This comment has been minimized.
10e9dfe
to
a77f9bf
Compare
Updated versions in the docs to 3.25.1, since this is the target now. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
and deployment dependencies
a77f9bf
to
01d1bcf
Compare
Status for workflow
|
Status for workflow
|
@aloubyansky since you state:
Was this PR supposed to be frictionless to users? Because our extension started failing after this change. https://gitlab.com/rug-digitallab/resources/quarkus-signalr/-/merge_requests/160 |
@LarsSven sorry to hear that and glad the switch to the previous impl still works for you (afaiu). |
Fixes #48992
Quoting the doc update added as part of this PR:
disableQuarkusComponentVariants
project property was introduced in Quarkus 3.26.0 to control whether Quarkus component variants should be added to certain dependencies of a project to enable link:conditional-extension-dependencies.adoc[Quarkus conditional] and build time (deployment) dependencies. Quarkus component variants are enabled by default since 3.26.0.The approach to enable Quarkus conditional and extension build time (deployment) dependencies has changed in Quarkus 3.26.0 due to a few issues with the previous implementation.
Specifically, the previous implementation would not apply relevant dependency exclusions to enabled conditional and deployment dependencies. It would also appear to leak devmode-only dependencies into non-devmode classpaths (such as test and prod) in some cases. These issues couldn't be fixed in a reasonable way in the previous implementation, which is why the Quarkus dependency resolution had to be re-implemented based on a different approach using link:https://docs.gradle.org/current/userguide/variant_attributes.html[Gradle component variants].
The previous implementation still remains available for now in case the new one appears to introduce not yet detected regressions and can be enabled by setting
disableQuarkusComponentVariants
project property totrue
.