Skip to content

Commit 82a9525

Browse files
committed
Sync working groups
1 parent f3b4a4d commit 82a9525

1 file changed

Lines changed: 68 additions & 68 deletions

File tree

_data/wg.yaml

Lines changed: 68 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,73 @@
11
---
22
working-groups:
3+
- title: "Quarkus Data"
4+
board-url: "https://github.com/orgs/quarkusio/projects/50"
5+
short-description: |
6+
The primary objective of this working group is to develop the next version of Panache, now known as Quarkus Data.
7+
readme: |
8+
<h1>Objective</h1>
9+
<p>The main objective of this working group is to bring forth the next version of Panache.</p>
10+
<h1>The Problem</h1>
11+
<p>Panache is great for many things, but over time, we realised the following limitations:</p>
12+
<ul>
13+
<li>We have three distinct versions: Hibernate ORM, Hibernate Reactive and Mongo (blocking and reactive)</li>
14+
<li>It is impossible to use the same entities with Hibernate ORM and Hibernate Reactive</li>
15+
<li>Stateless sessions are not supported</li>
16+
<li>Hibernate Processor annotations, and Jakarta Data are not supported</li>
17+
<li>We have triplicate types such as <code>Sort</code> and <code>Order</code> between Panache, ORM and Jakarta Data</li>
18+
<li>We have two ways to place entity query operations : on the entity itself, or in repositories</li>
19+
<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>
20+
</ul>
21+
<h1>The proposed Solution</h1>
22+
<p>We propose a new Panache version that will solve all these issues:</p>
23+
<ul>
24+
<li>Unify all variants in a single module, supporting blocking, reactive, stateless and stateful sessions</li>
25+
<li>Provide an entity toplevel class for each 4 modes of operation, yet allow access to the other modes</li>
26+
<li>Move all entity query operations from the entity class to the repository class</li>
27+
<li>Provide a repository toplevel class for each 4 modes of operation, yet allow access to the other modes</li>
28+
<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>
29+
<li>Provide out of the box accessors for the 4 modes of operation repositories on the entity metamodel class</li>
30+
<li>Support Jakarta Data and Hibernate Processor type-safe annotations</li>
31+
<li>Optional: Support of Mongo via the coming ORM JDBC support</li>
32+
<li>Optional: provide JD repository type alternatives for the missing three modes</li>
33+
<li>Optional: provide a way to convert Panache 1 to Panache.Next</li>
34+
</ul>
35+
<h1>Definition of Done</h1>
36+
<ul>
37+
<li>Deliver the new Panache extension as a <code>stable</code> state (after preview/experimental versions for feedback)</li>
38+
<li>Tests</li>
39+
<li>Documentation</li>
40+
<li>Codestart</li>
41+
<li>REST Data with Panache support</li>
42+
<li>Renarde support</li>
43+
<li>Quarkus Insights</li>
44+
</ul>
45+
<h1>Scope of Work</h1>
46+
<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>
47+
<h1>Organizing the Work</h1>
48+
<h2>Communication and Transparency:</h2>
49+
<p>This will be done via GitHub issues on the Quarkus core project.</p>
50+
<h2>Expected Timeline:</h2>
51+
<p>Most of the R&amp;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>
52+
<ul>
53+
<li>Point of contact: @FroMage (@<strong>Stephane Epardaud</strong> on Zulip)</li>
54+
<li>Proposal: https://github.com/quarkusio/quarkus/discussions/48949</li>
55+
<li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261">Zulip</a></li>
56+
<li>Deliverable: <a href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a></li>
57+
</ul>
58+
status: on track
59+
lts: false
60+
completed: false
61+
last-activity: 2026-05-06
62+
last-update-date: 2026-03-30
63+
last-update: |
64+
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.
65+
66+
(This status update was automatically generated using AI.)
67+
deliverable: <a rel="nofollow" href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a>
68+
point-of-contact: "@FroMage (@<strong>Stephane Epardaud</strong> on Zulip)"
69+
proposal: https://github.com/quarkusio/quarkus/discussions/48949
70+
discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261
371
- title: "Quarkus Terminal"
472
board-url: "https://github.com/orgs/quarkusio/projects/77"
573
short-description: |
@@ -95,74 +163,6 @@ working-groups:
95163
point-of-contact: "@maxandersen"
96164
proposal: https://github.com/quarkusio/quarkus/discussions/53667
97165
discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Quarkus.20Terminal/with/587817394
98-
- title: "Quarkus Data"
99-
board-url: "https://github.com/orgs/quarkusio/projects/50"
100-
short-description: |
101-
The primary objective of this working group is to develop the next version of Panache, now known as Quarkus Data.
102-
readme: |
103-
<h1>Objective</h1>
104-
<p>The main objective of this working group is to bring forth the next version of Panache.</p>
105-
<h1>The Problem</h1>
106-
<p>Panache is great for many things, but over time, we realised the following limitations:</p>
107-
<ul>
108-
<li>We have three distinct versions: Hibernate ORM, Hibernate Reactive and Mongo (blocking and reactive)</li>
109-
<li>It is impossible to use the same entities with Hibernate ORM and Hibernate Reactive</li>
110-
<li>Stateless sessions are not supported</li>
111-
<li>Hibernate Processor annotations, and Jakarta Data are not supported</li>
112-
<li>We have triplicate types such as <code>Sort</code> and <code>Order</code> between Panache, ORM and Jakarta Data</li>
113-
<li>We have two ways to place entity query operations : on the entity itself, or in repositories</li>
114-
<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>
115-
</ul>
116-
<h1>The proposed Solution</h1>
117-
<p>We propose a new Panache version that will solve all these issues:</p>
118-
<ul>
119-
<li>Unify all variants in a single module, supporting blocking, reactive, stateless and stateful sessions</li>
120-
<li>Provide an entity toplevel class for each 4 modes of operation, yet allow access to the other modes</li>
121-
<li>Move all entity query operations from the entity class to the repository class</li>
122-
<li>Provide a repository toplevel class for each 4 modes of operation, yet allow access to the other modes</li>
123-
<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>
124-
<li>Provide out of the box accessors for the 4 modes of operation repositories on the entity metamodel class</li>
125-
<li>Support Jakarta Data and Hibernate Processor type-safe annotations</li>
126-
<li>Optional: Support of Mongo via the coming ORM JDBC support</li>
127-
<li>Optional: provide JD repository type alternatives for the missing three modes</li>
128-
<li>Optional: provide a way to convert Panache 1 to Panache.Next</li>
129-
</ul>
130-
<h1>Definition of Done</h1>
131-
<ul>
132-
<li>Deliver the new Panache extension as a <code>stable</code> state (after preview/experimental versions for feedback)</li>
133-
<li>Tests</li>
134-
<li>Documentation</li>
135-
<li>Codestart</li>
136-
<li>REST Data with Panache support</li>
137-
<li>Renarde support</li>
138-
<li>Quarkus Insights</li>
139-
</ul>
140-
<h1>Scope of Work</h1>
141-
<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>
142-
<h1>Organizing the Work</h1>
143-
<h2>Communication and Transparency:</h2>
144-
<p>This will be done via GitHub issues on the Quarkus core project.</p>
145-
<h2>Expected Timeline:</h2>
146-
<p>Most of the R&amp;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>
147-
<ul>
148-
<li>Point of contact: @FroMage (@<strong>Stephane Epardaud</strong> on Zulip)</li>
149-
<li>Proposal: https://github.com/quarkusio/quarkus/discussions/48949</li>
150-
<li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261">Zulip</a></li>
151-
<li>Deliverable: <a href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a></li>
152-
</ul>
153-
status: on track
154-
lts: false
155-
completed: false
156-
last-activity: 2026-05-06
157-
last-update-date: 2026-03-30
158-
last-update: |
159-
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.
160-
161-
(This status update was automatically generated using AI.)
162-
deliverable: <a rel="nofollow" href="https://quarkus.io/blog/hibernate-panache-next/">Blog Post</a>
163-
point-of-contact: "@FroMage (@<strong>Stephane Epardaud</strong> on Zulip)"
164-
proposal: https://github.com/quarkusio/quarkus/discussions/48949
165-
discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20-.20Panache.2ENext/with/529258261
166166
- title: "Quarkus 4"
167167
board-url: "https://github.com/orgs/quarkusio/projects/51"
168168
short-description: |

0 commit comments

Comments
 (0)