Last call for the Extension Structure ADR

8 views
Skip to first unread message

clement escoffier

unread,
Sep 26, 2025, 4:04:24 AM (3 days ago) Sep 26
to Quarkus Development mailing list
Hello,

I just addressed Alexey’s and David’s comments on the ADR, revisiting the extension structure.

I think it's in good shape, and we should decide whether to move forward in this form or make some more changes. So, please have another look.


Clement

Guillaume Smet

unread,
Sep 26, 2025, 4:25:41 AM (3 days ago) Sep 26
to quark...@googlegroups.com
Good call to send this email, I missed the deployment -> build change.

As I said in the review I just added, I think we need to think of the transition path before fully approving this.
I can see us working hard on changing things when the change brings a lot of value and clarity.
I'm not entirely sure the deployment -> build change falls into that category.

For instance, adding entries in our BOM for both deployment and build is NOT something that is free. It will make our BOM significantly larger and it will impact our Maven builds (our BOM is already gigantic and causing issues in this area).

If we do actually decide to go this way, I think we need a clear transition path that is not total mayhem for the entire ecosystem.

--
You received this message because you are subscribed to the Google Groups "Quarkus Development mailing list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to quarkus-dev...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/quarkus-dev/703168C0-7EAC-4D08-91C5-350D04E3ACA4%40gmail.com.

Guillaume Smet

unread,
Sep 26, 2025, 4:58:52 AM (3 days ago) Sep 26
to quark...@googlegroups.com
To clarify my thoughts:

- deployment is not the best name but I would say it's not something you think about twice, you generate your extension, the doc tells you this is the build time stuff, it's fine
- build is a no-no as it's the default equivalent of target for Gradle and at some point it would be nice to have a better experience to develop extensions with Gradle so I wouldn't paint ourselves in this corner
- this change opens a lot of questions: significantly larger BOM as we will have to have both deployment and build artifacts in the BOM for a long while, larger BOM impacts memory usage of Maven builds (I did some patch in this area of Maven a while ago as it was in our way, growing our BOM significantly will have on impact on builds) ; some parts of Quarkus are not as flexible as they should be about the prefix, we will have to adjust to be able to handle both
- this change is orthogonal to what is needed for JPMS, which was the primary goal of this ADR IMHO, I don't think including this change will make us achieve our goal faster, it will require a significant amount of work and won't bring anything on the JPMS side
- if we think this change has value by itself and we can find a better name, then I think it's a task that we can split and achieve later

Agreed, it's not 100% clean slate for the extension structure but delaying this particular change by 6 months won't change things much. We might have 10 more extensions to migrate in the meantime but it's not that big of a deal.

I firmly believe that we should separate the concerns here if we want to be compliant with JPMS as fast as possible.

clement escoffier

unread,
4:51 AM (15 hours ago) 4:51 AM
to quark...@googlegroups.com
Hello,

I’ve reverted the renaming. Please review again.

Clement

Reply all
Reply to author
Forward
0 new messages