|
1 | 1 | --- |
2 | 2 | working-groups: |
| 3 | + - title: "Java 25 support" |
| 4 | + board-url: "https://github.com/orgs/quarkusio/projects/59" |
| 5 | + short-description: | |
| 6 | + The objective of this working group is to enable Quarkus applications to run cleanly across dev/test/production modes on Java 25, with no requirement to adopt Java 25 as a baseline. |
| 7 | + readme: | |
| 8 | + <h3>Objective</h3> |
| 9 | + <p>To enable Quarkus applications to run cleanly across dev/test/production modes on Java 25, with no requirement to adopt Java 25 as a baseline.</p> |
| 10 | + <h3>The Problem</h3> |
| 11 | + <p>Java 25 brings new features and platform-level changes (e.g., new JEPs, VM flags, performance tweaks) that may trigger warnings, break behavior, or degrade Quarkus experiences. Dependencies or extensions may also face compatibility challenges. A coordinated effort is needed to identify, fix, document, and optionally leverage these changes.</p> |
| 12 | + <h3>The Solution</h3> |
| 13 | + <p>The working group will:</p> |
| 14 | + <ul> |
| 15 | + <li>Attempt to run representative Quarkus applications under Java 25 in dev, test, and production modes.</li> |
| 16 | + <li>Catalog issues, warnings, or incompatibilities in a Wiki or issue tracker.</li> |
| 17 | + <li>Propose and implement fixes or mitigations (or document workarounds).</li> |
| 18 | + <li>Optionally explore beneficial Java 25 features (e.g., Scoped Values, Flexible Constructor Bodies), without requiring their use.</li> |
| 19 | + <li>Identify and remediate or flag problematic Quarkus extensions. |
| 20 | + ⠀</li> |
| 21 | + </ul> |
| 22 | + <h3>Definition of Done</h3> |
| 23 | + <ul> |
| 24 | + <li>Publish a wiki page detailing issues and resolutions.</li> |
| 25 | + <li>Ensure Quarkus core and its ecosystem can operate cleanly under Java 25 in all modes.</li> |
| 26 | + <li>Integrate any selected Java 25 features in an optional, non-breaking manner.</li> |
| 27 | + <li>Document or fix problematic extensions, offering guidance where needed.</li> |
| 28 | + <li>Communicate results via a blog post or quarkus-dev announcement. |
| 29 | + ⠀</li> |
| 30 | + </ul> |
| 31 | + <h3>Scope of Work</h3> |
| 32 | + <p><strong>In scope:</strong></p> |
| 33 | + <ul> |
| 34 | + <li>Running and diagnosing Quarkus on Java 25.</li> |
| 35 | + <li>Fixing issues in Quarkus core repository and extensions.</li> |
| 36 | + <li>Exploring select Java 25 enhancements.</li> |
| 37 | + </ul> |
| 38 | + <p>⠀ |
| 39 | + <strong>Out of scope:</strong></p> |
| 40 | + <ul> |
| 41 | + <li>Mandating Java 25 as the minimum supported runtime.</li> |
| 42 | + </ul> |
| 43 | + <p>⠀</p> |
| 44 | + <h3>Organizing the Work</h3> |
| 45 | + <ol> |
| 46 | + <li><strong>Communication & Transparency:</strong> |
| 47 | + <ul> |
| 48 | + <li>Use GitHub discussion, project board, and issues.</li> |
| 49 | + <li>Coordinate via Quarkus Zulip and GitHub.</li> |
| 50 | + </ul> |
| 51 | + </li> |
| 52 | + <li><strong>Timeline & Milestones:</strong> |
| 53 | + <ul> |
| 54 | + <li><strong>Exploration Phase:</strong> Run tests on Java 25 Candidate Release, document findings before GA (target: <em>before September 16, 2025</em>), so we can guide our users as soon as Java 25 reaches GA.</li> |
| 55 | + </ul> |
| 56 | + </li> |
| 57 | + </ol> |
| 58 | + <hr /> |
| 59 | + <ul> |
| 60 | + <li>Point of contact: @Sanne (@<strong>Sanne</strong> on Zulip) and @gsmet (@_<strong>Guillaume Smet</strong> on Zulip)</li> |
| 61 | + <li>Proposal: https://github.com/quarkusio/quarkus/discussions/49696</li> |
| 62 | + <li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Java.2025.20chat">Zulip</a></li> |
| 63 | + </ul> |
| 64 | + status: on track |
| 65 | + lts: false |
| 66 | + completed: false |
| 67 | + last-activity: 2026-05-25 |
| 68 | + last-update-date: 2026-03-30 |
| 69 | + last-update: | |
| 70 | + We addressed the JIB issue regarding `jvm-additional-arguments` for AOT cache generation and updated the Deploy to Openshift guide for Java 25. Both are now back on the radar for further refinement. Also tracking a new Panache Next projection failure with Kotlin value classes. |
| 71 | + |
| 72 | + (This status update was automatically generated using AI.) |
| 73 | + point-of-contact: "@Sanne (@<strong>Sanne</strong> on Zulip) and @gsmet (@_<strong>Guillaume Smet</strong> on Zulip)" |
| 74 | + proposal: https://github.com/quarkusio/quarkus/discussions/49696 |
| 75 | + discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Java.2025.20chat |
| 76 | + - title: "Quarkus Data" |
| 77 | + board-url: "https://github.com/orgs/quarkusio/projects/50" |
| 78 | + short-description: | |
| 79 | + The primary objective of this working group is to develop the next version of Panache, now known as Quarkus Data. |
| 80 | + readme: | |
| 81 | + <h1>Objective</h1> |
| 82 | + <p>The main objective of this working group is to bring forth the next version of Panache.</p> |
| 83 | + <h1>The Problem</h1> |
| 84 | + <p>Panache is great for many things, but over time, we realised the following limitations:</p> |
| 85 | + <ul> |
| 86 | + <li>We have three distinct versions: Hibernate ORM, Hibernate Reactive and Mongo (blocking and reactive)</li> |
| 87 | + <li>It is impossible to use the same entities with Hibernate ORM and Hibernate Reactive</li> |
| 88 | + <li>Stateless sessions are not supported</li> |
| 89 | + <li>Hibernate Processor annotations, and Jakarta Data are not supported</li> |
| 90 | + <li>We have triplicate types such as <code>Sort</code> and <code>Order</code> between Panache, ORM and Jakarta Data</li> |
| 91 | + <li>We have two ways to place entity query operations : on the entity itself, or in repositories</li> |
| 92 | + <li>Entity query operations require type-system hacks which makes them less type-safe than we want with <code>var</code> and <code>for-each</code> and especially with reactive operations.</li> |
| 93 | + </ul> |
| 94 | + <h1>The proposed Solution</h1> |
| 95 | + <p>We propose a new Panache version that will solve all these issues:</p> |
| 96 | + <ul> |
| 97 | + <li>Unify all variants in a single module, supporting blocking, reactive, stateless and stateful sessions</li> |
| 98 | + <li>Provide an entity toplevel class for each 4 modes of operation, yet allow access to the other modes</li> |
| 99 | + <li>Move all entity query operations from the entity class to the repository class</li> |
| 100 | + <li>Provide a repository toplevel class for each 4 modes of operation, yet allow access to the other modes</li> |
| 101 | + <li>Provide easy access to any type of repository by placing them as nested interfaces in the entity class, via a generated accessor on the entity metamodel class</li> |
| 102 | + <li>Provide out of the box accessors for the 4 modes of operation repositories on the entity metamodel class</li> |
| 103 | + <li>Support Jakarta Data and Hibernate Processor type-safe annotations</li> |
| 104 | + <li>Optional: Support of Mongo via the coming ORM JDBC support</li> |
| 105 | + <li>Optional: provide JD repository type alternatives for the missing three modes</li> |
| 106 | + <li>Optional: provide a way to convert Panache 1 to Panache.Next</li> |
| 107 | + </ul> |
| 108 | + <h1>Definition of Done</h1> |
| 109 | + <ul> |
| 110 | + <li>Deliver the new Panache extension as a <code>stable</code> state (after preview/experimental versions for feedback)</li> |
| 111 | + <li>Tests</li> |
| 112 | + <li>Documentation</li> |
| 113 | + <li>Codestart</li> |
| 114 | + <li>REST Data with Panache support</li> |
| 115 | + <li>Renarde support</li> |
| 116 | + <li>Quarkus Insights</li> |
| 117 | + </ul> |
| 118 | + <h1>Scope of Work</h1> |
| 119 | + <p>It is currently out of scope to retrofit this with the existing Panache modules. This will be a new module with no backward compatibility (although most type-unsafe operations will continue as-is, so you will be familiar with them).</p> |
| 120 | + <h1>Organizing the Work</h1> |
| 121 | + <h2>Communication and Transparency:</h2> |
| 122 | + <p>This will be done via GitHub issues on the Quarkus core project.</p> |
| 123 | + <h2>Expected Timeline:</h2> |
| 124 | + <p>Most of the R&D and design work has been completed over the last two years. Now remains the task of merging, documenting, testing, and tweaking it until it's complete.</p> |
| 125 | + <ul> |
| 126 | + <li>Point of contact: @FroMage (@<strong>Stephane Epardaud</strong> on Zulip)</li> |
| 127 | + <li>Proposal: https://github.com/quarkusio/quarkus/discussions/48949</li> |
| 128 | + <li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261">Zulip</a></li> |
| 129 | + <li>Deliverable: <a href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a></li> |
| 130 | + </ul> |
| 131 | + status: on track |
| 132 | + lts: false |
| 133 | + completed: false |
| 134 | + last-activity: 2026-05-25 |
| 135 | + last-update-date: 2026-03-30 |
| 136 | + last-update: | |
| 137 | + Much of our work on Panache Next, soon to be renamed Quarkus Data, involved resolving several operation overload issues and refining Hibernate Reactive type signatures. We also enabled `StatelessSession` injection. Now, the team is tackling transaction propagation with Vert.x Context, allowing mixed `Session` and `StatelessSession`, and fixing projection failures with Kotlin value classes. |
| 138 | + |
| 139 | + (This status update was automatically generated using AI.) |
| 140 | + deliverable: <a rel="nofollow" href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a> |
| 141 | + point-of-contact: "@FroMage (@<strong>Stephane Epardaud</strong> on Zulip)" |
| 142 | + proposal: https://github.com/quarkusio/quarkus/discussions/48949 |
| 143 | + discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261 |
3 | 144 | - title: "Quarkus Terminal" |
4 | 145 | board-url: "https://github.com/orgs/quarkusio/projects/77" |
5 | 146 | short-description: | |
@@ -487,74 +628,6 @@ working-groups: |
487 | 628 | The team closed out significant work on the Vert.x 5 upgrade and migration of its core extension for Quarkus 4. New tasks include updating Vert.x configuration, reworking CI, and addressing Kafka Kerberos authentication in native mode. We're also defining OpenTelemetry trace sampling defaults and looking into extension modularity. |
488 | 629 | |
489 | 630 | (This status update was automatically generated using AI.) |
490 | | - - title: "Quarkus Data" |
491 | | - board-url: "https://github.com/orgs/quarkusio/projects/50" |
492 | | - short-description: | |
493 | | - The primary objective of this working group is to develop the next version of Panache, now known as Quarkus Data. |
494 | | - readme: | |
495 | | - <h1>Objective</h1> |
496 | | - <p>The main objective of this working group is to bring forth the next version of Panache.</p> |
497 | | - <h1>The Problem</h1> |
498 | | - <p>Panache is great for many things, but over time, we realised the following limitations:</p> |
499 | | - <ul> |
500 | | - <li>We have three distinct versions: Hibernate ORM, Hibernate Reactive and Mongo (blocking and reactive)</li> |
501 | | - <li>It is impossible to use the same entities with Hibernate ORM and Hibernate Reactive</li> |
502 | | - <li>Stateless sessions are not supported</li> |
503 | | - <li>Hibernate Processor annotations, and Jakarta Data are not supported</li> |
504 | | - <li>We have triplicate types such as <code>Sort</code> and <code>Order</code> between Panache, ORM and Jakarta Data</li> |
505 | | - <li>We have two ways to place entity query operations : on the entity itself, or in repositories</li> |
506 | | - <li>Entity query operations require type-system hacks which makes them less type-safe than we want with <code>var</code> and <code>for-each</code> and especially with reactive operations.</li> |
507 | | - </ul> |
508 | | - <h1>The proposed Solution</h1> |
509 | | - <p>We propose a new Panache version that will solve all these issues:</p> |
510 | | - <ul> |
511 | | - <li>Unify all variants in a single module, supporting blocking, reactive, stateless and stateful sessions</li> |
512 | | - <li>Provide an entity toplevel class for each 4 modes of operation, yet allow access to the other modes</li> |
513 | | - <li>Move all entity query operations from the entity class to the repository class</li> |
514 | | - <li>Provide a repository toplevel class for each 4 modes of operation, yet allow access to the other modes</li> |
515 | | - <li>Provide easy access to any type of repository by placing them as nested interfaces in the entity class, via a generated accessor on the entity metamodel class</li> |
516 | | - <li>Provide out of the box accessors for the 4 modes of operation repositories on the entity metamodel class</li> |
517 | | - <li>Support Jakarta Data and Hibernate Processor type-safe annotations</li> |
518 | | - <li>Optional: Support of Mongo via the coming ORM JDBC support</li> |
519 | | - <li>Optional: provide JD repository type alternatives for the missing three modes</li> |
520 | | - <li>Optional: provide a way to convert Panache 1 to Panache.Next</li> |
521 | | - </ul> |
522 | | - <h1>Definition of Done</h1> |
523 | | - <ul> |
524 | | - <li>Deliver the new Panache extension as a <code>stable</code> state (after preview/experimental versions for feedback)</li> |
525 | | - <li>Tests</li> |
526 | | - <li>Documentation</li> |
527 | | - <li>Codestart</li> |
528 | | - <li>REST Data with Panache support</li> |
529 | | - <li>Renarde support</li> |
530 | | - <li>Quarkus Insights</li> |
531 | | - </ul> |
532 | | - <h1>Scope of Work</h1> |
533 | | - <p>It is currently out of scope to retrofit this with the existing Panache modules. This will be a new module with no backward compatibility (although most type-unsafe operations will continue as-is, so you will be familiar with them).</p> |
534 | | - <h1>Organizing the Work</h1> |
535 | | - <h2>Communication and Transparency:</h2> |
536 | | - <p>This will be done via GitHub issues on the Quarkus core project.</p> |
537 | | - <h2>Expected Timeline:</h2> |
538 | | - <p>Most of the R&D and design work has been completed over the last two years. Now remains the task of merging, documenting, testing, and tweaking it until it's complete.</p> |
539 | | - <ul> |
540 | | - <li>Point of contact: @FroMage (@<strong>Stephane Epardaud</strong> on Zulip)</li> |
541 | | - <li>Proposal: https://github.com/quarkusio/quarkus/discussions/48949</li> |
542 | | - <li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261">Zulip</a></li> |
543 | | - <li>Deliverable: <a href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a></li> |
544 | | - </ul> |
545 | | - status: on track |
546 | | - lts: false |
547 | | - completed: false |
548 | | - last-activity: 2026-05-21 |
549 | | - last-update-date: 2026-03-30 |
550 | | - last-update: | |
551 | | - Much of our work on Panache Next, soon to be renamed Quarkus Data, involved resolving several operation overload issues and refining Hibernate Reactive type signatures. We also enabled `StatelessSession` injection. Now, the team is tackling transaction propagation with Vert.x Context, allowing mixed `Session` and `StatelessSession`, and fixing projection failures with Kotlin value classes. |
552 | | - |
553 | | - (This status update was automatically generated using AI.) |
554 | | - deliverable: <a rel="nofollow" href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a> |
555 | | - point-of-contact: "@FroMage (@<strong>Stephane Epardaud</strong> on Zulip)" |
556 | | - proposal: https://github.com/quarkusio/quarkus/discussions/48949 |
557 | | - discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261 |
558 | 631 | - title: "Convert quarkus.io to Roq" |
559 | 632 | board-url: "https://github.com/orgs/quarkusio/projects/79" |
560 | 633 | short-description: | |
@@ -1130,79 +1203,6 @@ working-groups: |
1130 | 1203 | deliverable: TBD |
1131 | 1204 | point-of-contact: "@xstefank (@<strong>Martin Stefanko|448453</strong> on Zulip)" |
1132 | 1205 | proposal: https://github.com/quarkusio/quarkus/discussions/46672 |
1133 | | - - title: "Java 25 support" |
1134 | | - board-url: "https://github.com/orgs/quarkusio/projects/59" |
1135 | | - short-description: | |
1136 | | - The objective of this working group is to enable Quarkus applications to run cleanly across dev/test/production modes on Java 25, with no requirement to adopt Java 25 as a baseline. |
1137 | | - readme: | |
1138 | | - <h3>Objective</h3> |
1139 | | - <p>To enable Quarkus applications to run cleanly across dev/test/production modes on Java 25, with no requirement to adopt Java 25 as a baseline.</p> |
1140 | | - <h3>The Problem</h3> |
1141 | | - <p>Java 25 brings new features and platform-level changes (e.g., new JEPs, VM flags, performance tweaks) that may trigger warnings, break behavior, or degrade Quarkus experiences. Dependencies or extensions may also face compatibility challenges. A coordinated effort is needed to identify, fix, document, and optionally leverage these changes.</p> |
1142 | | - <h3>The Solution</h3> |
1143 | | - <p>The working group will:</p> |
1144 | | - <ul> |
1145 | | - <li>Attempt to run representative Quarkus applications under Java 25 in dev, test, and production modes.</li> |
1146 | | - <li>Catalog issues, warnings, or incompatibilities in a Wiki or issue tracker.</li> |
1147 | | - <li>Propose and implement fixes or mitigations (or document workarounds).</li> |
1148 | | - <li>Optionally explore beneficial Java 25 features (e.g., Scoped Values, Flexible Constructor Bodies), without requiring their use.</li> |
1149 | | - <li>Identify and remediate or flag problematic Quarkus extensions. |
1150 | | - ⠀</li> |
1151 | | - </ul> |
1152 | | - <h3>Definition of Done</h3> |
1153 | | - <ul> |
1154 | | - <li>Publish a wiki page detailing issues and resolutions.</li> |
1155 | | - <li>Ensure Quarkus core and its ecosystem can operate cleanly under Java 25 in all modes.</li> |
1156 | | - <li>Integrate any selected Java 25 features in an optional, non-breaking manner.</li> |
1157 | | - <li>Document or fix problematic extensions, offering guidance where needed.</li> |
1158 | | - <li>Communicate results via a blog post or quarkus-dev announcement. |
1159 | | - ⠀</li> |
1160 | | - </ul> |
1161 | | - <h3>Scope of Work</h3> |
1162 | | - <p><strong>In scope:</strong></p> |
1163 | | - <ul> |
1164 | | - <li>Running and diagnosing Quarkus on Java 25.</li> |
1165 | | - <li>Fixing issues in Quarkus core repository and extensions.</li> |
1166 | | - <li>Exploring select Java 25 enhancements.</li> |
1167 | | - </ul> |
1168 | | - <p>⠀ |
1169 | | - <strong>Out of scope:</strong></p> |
1170 | | - <ul> |
1171 | | - <li>Mandating Java 25 as the minimum supported runtime.</li> |
1172 | | - </ul> |
1173 | | - <p>⠀</p> |
1174 | | - <h3>Organizing the Work</h3> |
1175 | | - <ol> |
1176 | | - <li><strong>Communication & Transparency:</strong> |
1177 | | - <ul> |
1178 | | - <li>Use GitHub discussion, project board, and issues.</li> |
1179 | | - <li>Coordinate via Quarkus Zulip and GitHub.</li> |
1180 | | - </ul> |
1181 | | - </li> |
1182 | | - <li><strong>Timeline & Milestones:</strong> |
1183 | | - <ul> |
1184 | | - <li><strong>Exploration Phase:</strong> Run tests on Java 25 Candidate Release, document findings before GA (target: <em>before September 16, 2025</em>), so we can guide our users as soon as Java 25 reaches GA.</li> |
1185 | | - </ul> |
1186 | | - </li> |
1187 | | - </ol> |
1188 | | - <hr /> |
1189 | | - <ul> |
1190 | | - <li>Point of contact: @Sanne (@<strong>Sanne</strong> on Zulip) and @gsmet (@_<strong>Guillaume Smet</strong> on Zulip)</li> |
1191 | | - <li>Proposal: https://github.com/quarkusio/quarkus/discussions/49696</li> |
1192 | | - <li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Java.2025.20chat">Zulip</a></li> |
1193 | | - </ul> |
1194 | | - status: on track |
1195 | | - lts: false |
1196 | | - completed: false |
1197 | | - last-activity: 2026-04-30 |
1198 | | - last-update-date: 2026-03-30 |
1199 | | - last-update: | |
1200 | | - We addressed the JIB issue regarding `jvm-additional-arguments` for AOT cache generation and updated the Deploy to Openshift guide for Java 25. Both are now back on the radar for further refinement. Also tracking a new Panache Next projection failure with Kotlin value classes. |
1201 | | - |
1202 | | - (This status update was automatically generated using AI.) |
1203 | | - point-of-contact: "@Sanne (@<strong>Sanne</strong> on Zulip) and @gsmet (@_<strong>Guillaume Smet</strong> on Zulip)" |
1204 | | - proposal: https://github.com/quarkusio/quarkus/discussions/49696 |
1205 | | - discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Java.2025.20chat |
1206 | 1206 | - title: "OIDC improvements" |
1207 | 1207 | board-url: "https://github.com/orgs/quarkusio/projects/46" |
1208 | 1208 | short-description: | |
|
0 commit comments