Skip to content

Commit ea4f7ed

Browse files
authored
Merge pull request #2169 from cescoffier/css-working-group
Rework the working group page
2 parents 4ab7d9d + 977ed78 commit ea4f7ed

File tree

5 files changed

+213
-102
lines changed

5 files changed

+213
-102
lines changed

_data/wg.yaml

Lines changed: 64 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,5 @@
11
---
22
working-groups:
3-
- title: "WebSocket Next"
4-
board-url: "https://github.com/orgs/quarkusio/projects/26"
5-
short-description: WebSocket-Next related tasks
6-
readme: |
7-
<p>The WebSocket Next <em>focus group</em> aims to improve our WebSocket experience.</p>
8-
<p>Recently, we delivered a new approach to dealing with WebSocket (both for the server and client). This was the first step. There are still a few areas to improve, such as documentation, security, observability, and testability. The goal of this focus group is to track these efforts.</p>
9-
<ul>
10-
<li>Point of contact: @mkouba (@<strong>Martin Kouba</strong> on Zulip)</li>
11-
<li>Discussion: https://github.com/quarkusio/quarkus/discussions/38473</li>
12-
</ul>
13-
status: on track
14-
completed: false
15-
last-activity: 2024-11-19
16-
last-update: |
17-
### Telemetry
18-
https://github.com/quarkusio/quarkus/pull/41956 was merged last week. @michalvavrik is going to send a pull request with Micrometer support this week.
19-
20-
### Performance
21-
Two problems were addressed in Vert.x: https://github.com/eclipse-vertx/vert.x/pull/5358 and https://github.com/eclipse-vertx/vert.x/pull/5348.
22-
The CDI request context is only activated if needed: https://github.com/quarkusio/quarkus/pull/43915.
23-
24-
I hope that WS Next will be feature-complete at the time of 3.17 release.
25-
point-of-contact: "@mkouba (@<strong>Martin Kouba</strong> on Zulip)"
26-
discussion: https://github.com/quarkusio/quarkus/discussions/38473
27-
- title: "Test classloading"
28-
board-url: "https://github.com/orgs/quarkusio/projects/30"
29-
short-description: The goal of this working group is to rewrite Quarkus's test classloading, so that tests are run in the same classloader as the application under tests, and Quarkus extensions can do "Quarkus-y" manipulations of test classes.
30-
readme: |
31-
<p>At the moment, Quarkus tests are invoked using one classloader, and then executed in a different classloader. This mostly works well, but means some use cases don't work: extensions cannot manipulate test classes in the same way that they do normal application classes. For example, anything run via a JUnit @TestTemplate test case will see the un-transformed class.</p>
32-
<p>It also means we have extra user-facing complexity, such as the QuarkusTest*Callbacks](https://quarkus.io/guides/getting-started-testing#enrichment-via-quarkustestcallback):</p>
33-
<blockquote>
34-
<p>While it is possible to use JUnit Jupiter callback interfaces like BeforeEachCallback, you might run into classloading issues because Quarkus has to run tests in a custom classloader which JUnit is not aware of.</p>
35-
</blockquote>
36-
<p>A final benefit is a reduction in the internal complexity of our code. Hopping between classloaders during test execution takes a lot of work, and adds a lot of code! It also is brittle in places. For example, because the hop between classloaders relies on serialization in some cases, it's becoming harder to do as the JVM tightens up security restrictions. We used to rely on xstream, but that stopped working in Java 17. In https://github.com/quarkusio/quarkus/pull/40601, @dmlloyd moved us to use the JBoss Serializer, which works better, but might still be affected by future restrictions on class access.</p>
37-
<p>The goal of this working group is to allow test classes to fully participate in the 'quarkification' of classes. The mechanism for this is probably just to load the test classes with the classloader we intend to run them with, so that JUnit sees the 'correct' version of the class.</p>
38-
<ul>
39-
<li>Point of contact: @holly-cummins (@<strong>Holly Cummins</strong> on Zulip)</li>
40-
<li>Discussion: https://github.com/quarkusio/quarkus/discussions/41867</li>
41-
<li>Chat: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20.2330.20Test.20Classloading.20chatter/">Zulip topic</a></li>
42-
</ul>
43-
status: on track
44-
completed: false
45-
last-activity: 2024-11-19
46-
last-update: |
47-
A few pre-existing issues have been added to this project, since we're pretty confident the rewrite will either fix them, or unlock the next step for the fix.
48-
49-
Progress on the main work item has been delayed by conferences!
50-
point-of-contact: "@holly-cummins (@<strong>Holly Cummins</strong> on Zulip)"
51-
discussion: https://github.com/quarkusio/quarkus/discussions/41867
523
- title: "Roq :: Quarkus SSG"
534
board-url: "https://github.com/orgs/quarkiverse/projects/6"
545
short-description: Allow Static Site Generation with Quarkus.
@@ -70,17 +21,18 @@ working-groups:
7021
<p>This is a great opportunity to participate in fun effort and be involved with the Quarkus community, if anyone is interested in being a part of this, please reach out to me 🚀</p>
7122
<ul>
7223
<li>Point of contact: @ia3andy</li>
73-
<li>Discussion: https://github.com/quarkusio/quarkus/discussions/41309</li>
24+
<li>Proposal: https://github.com/quarkusio/quarkus/discussions/41309</li>
7425
<li>Deliverable: <a href="https://www.youtube.com/live/hrF1a5sKqBI">Quarkus Insight</a></li>
7526
</ul>
7627
status: complete
7728
completed: true
78-
last-activity: 2024-11-18
29+
last-activity: 2024-11-19
30+
last-update-date: 2024-11-18
7931
last-update: |
8032
ROQ has been released! See https://www.youtube.com/live/hrF1a5sKqBI to see ROQ in action.
8133
deliverable: <a rel="nofollow" href="https://www.youtube.com/live/hrF1a5sKqBI">Quarkus Insight</a>
8234
point-of-contact: "@ia3andy"
83-
discussion: https://github.com/quarkusio/quarkus/discussions/41309
35+
proposal: https://github.com/quarkusio/quarkus/discussions/41309
8436
- title: "Enhanced TLS support"
8537
board-url: "https://github.com/orgs/quarkusio/projects/24"
8638
short-description: Track the progress around the new TLS configuration centralization and new features (like Let's Encrypt, Cert-Manager, and local experience...)
@@ -91,18 +43,71 @@ working-groups:
9143
<ul>
9244
<li>Point of contact: @cescoffier (@<strong>Clement Escoffier</strong> on Zulip)</li>
9345
<li>Deliverable: <a href="https://www.youtube.com/watch?v=VP7c9ftFwrQ">Quarkus Insight</a></li>
94-
<li>Discussion: https://github.com/quarkusio/quarkus/discussions/41024</li>
46+
<li>Proposal: https://github.com/quarkusio/quarkus/discussions/41024</li>
9547
</ul>
9648
status: complete
9749
completed: true
98-
last-activity: 2024-11-18
50+
last-activity: 2024-11-19
51+
last-update-date: 2024-09-29
9952
last-update: |
10053
This working group is complete!
10154
That does not mean that no work will be done around TLS, but what was defined in the initial scope of the working group has been completed.
10255
Enhancements and bug fixes will follow.
10356
deliverable: <a rel="nofollow" href="https://www.youtube.com/watch?v=VP7c9ftFwrQ">Quarkus Insight</a>
10457
point-of-contact: "@cescoffier (@<strong>Clement Escoffier</strong> on Zulip)"
105-
discussion: https://github.com/quarkusio/quarkus/discussions/41024
58+
proposal: https://github.com/quarkusio/quarkus/discussions/41024
59+
- title: "WebSocket Next"
60+
board-url: "https://github.com/orgs/quarkusio/projects/26"
61+
short-description: WebSocket-Next related tasks
62+
readme: |
63+
<p>The WebSocket Next <em>focus group</em> aims to improve our WebSocket experience.</p>
64+
<p>Recently, we delivered a new approach to dealing with WebSocket (both for the server and client). This was the first step. There are still a few areas to improve, such as documentation, security, observability, and testability. The goal of this focus group is to track these efforts.</p>
65+
<ul>
66+
<li>Point of contact: @mkouba (@<strong>Martin Kouba</strong> on Zulip)</li>
67+
<li>Proposal: https://github.com/quarkusio/quarkus/discussions/38473</li>
68+
</ul>
69+
status: on track
70+
completed: false
71+
last-activity: 2024-11-19
72+
last-update-date: 2024-11-05
73+
last-update: |
74+
### Telemetry
75+
https://github.com/quarkusio/quarkus/pull/41956 was merged last week. @michalvavrik is going to send a pull request with Micrometer support this week.
76+
77+
### Performance
78+
Two problems were addressed in Vert.x: https://github.com/eclipse-vertx/vert.x/pull/5358 and https://github.com/eclipse-vertx/vert.x/pull/5348.
79+
The CDI request context is only activated if needed: https://github.com/quarkusio/quarkus/pull/43915.
80+
81+
I hope that WS Next will be feature-complete at the time of 3.17 release.
82+
point-of-contact: "@mkouba (@<strong>Martin Kouba</strong> on Zulip)"
83+
proposal: https://github.com/quarkusio/quarkus/discussions/38473
84+
- title: "Test classloading"
85+
board-url: "https://github.com/orgs/quarkusio/projects/30"
86+
short-description: The goal of this working group is to rewrite Quarkus's test classloading, so that tests are run in the same classloader as the application under tests, and Quarkus extensions can do "Quarkus-y" manipulations of test classes.
87+
readme: |
88+
<p>At the moment, Quarkus tests are invoked using one classloader, and then executed in a different classloader. This mostly works well, but means some use cases don't work: extensions cannot manipulate test classes in the same way that they do normal application classes. For example, anything run via a JUnit @TestTemplate test case will see the un-transformed class.</p>
89+
<p>It also means we have extra user-facing complexity, such as the QuarkusTest*Callbacks](https://quarkus.io/guides/getting-started-testing#enrichment-via-quarkustestcallback):</p>
90+
<blockquote>
91+
<p>While it is possible to use JUnit Jupiter callback interfaces like BeforeEachCallback, you might run into classloading issues because Quarkus has to run tests in a custom classloader which JUnit is not aware of.</p>
92+
</blockquote>
93+
<p>A final benefit is a reduction in the internal complexity of our code. Hopping between classloaders during test execution takes a lot of work, and adds a lot of code! It also is brittle in places. For example, because the hop between classloaders relies on serialization in some cases, it's becoming harder to do as the JVM tightens up security restrictions. We used to rely on xstream, but that stopped working in Java 17. In https://github.com/quarkusio/quarkus/pull/40601, @dmlloyd moved us to use the JBoss Serializer, which works better, but might still be affected by future restrictions on class access.</p>
94+
<p>The goal of this working group is to allow test classes to fully participate in the 'quarkification' of classes. The mechanism for this is probably just to load the test classes with the classloader we intend to run them with, so that JUnit sees the 'correct' version of the class.</p>
95+
<ul>
96+
<li>Point of contact: @holly-cummins (@<strong>Holly Cummins</strong> on Zulip)</li>
97+
<li>Proposal: https://github.com/quarkusio/quarkus/discussions/41867</li>
98+
<li>Discussion: <a href="https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20.2330.20Test.20Classloading.20chatter/">Zulip topic</a></li>
99+
</ul>
100+
status: on track
101+
completed: false
102+
last-activity: 2024-11-19
103+
last-update-date: 2024-10-29
104+
last-update: |
105+
A few pre-existing issues have been added to this project, since we're pretty confident the rewrite will either fix them, or unlock the next step for the fix.
106+
107+
Progress on the main work item has been delayed by conferences!
108+
point-of-contact: "@holly-cummins (@<strong>Holly Cummins</strong> on Zulip)"
109+
proposal: https://github.com/quarkusio/quarkus/discussions/41867
110+
discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20.2330.20Test.20Classloading.20chatter/
106111
- title: "Quarkus 3.15 LTS"
107112
board-url: "https://github.com/orgs/quarkusio/projects/28"
108113
short-description: This WG focuses on defining the issues we would like to have in the next-to-be LTS (Quarkus 3.14/3.15)
@@ -117,6 +122,7 @@ working-groups:
117122
status: on track
118123
completed: false
119124
last-activity: 2024-11-13
125+
last-update-date: 2024-10-28
120126
last-update: |
121127
Everything is fine for now.
122128
@@ -139,6 +145,7 @@ working-groups:
139145
status: on track
140146
completed: false
141147
last-activity: 2024-10-31
148+
last-update-date: 2024-09-27
142149
last-update: |
143150
There is a first draft https://github.com/quarkusio/quarkus/pull/42316
144151
The PR introduces a CLI plugin that generates a Dockerfile.
@@ -179,6 +186,7 @@ working-groups:
179186
status: on track
180187
completed: false
181188
last-activity: 2024-10-28
189+
last-update-date: 2024-10-28
182190
last-update: |
183191
Still on track.
184192
In the last period, we organized an international manhunt to find the owner of the quarkus.dev DNS name :-) We were able to identify the owner, and everything is fine. `quarkus.io` and `quarkus.dev` should be transferred to the foundation at some point.
@@ -194,6 +202,7 @@ working-groups:
194202
status: on track
195203
completed: false
196204
last-activity: 2024-10-03
205+
last-update-date: 2024-10-29
197206
last-update: |
198207
The main missing piece for now is the Asciidoctor -> Markdown transformer. I did a first try with some regexp-based parser but it was too limited for some of the content we have (mostly complex tables). I have another lead as someone actually wrote a Java Asciidoctor parser. The only problem is that the HTML transformation is intertwined with the parser. I need to split them and then create a Markdown document from there. Making slow progress as time permits.
199208

_includes/working-group-band.html

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,19 @@
2121
{% if item.point-of-contact %}
2222
<p class="card-text"><span class="key">Point of Contact:</span>&nbsp;<span class="point-of-contact">{{ item.point-of-contact }}</span></p>
2323
{% endif %}
24+
</div>
25+
<div class="card-footer">
26+
<div class="icons">
27+
{% if item.proposal %}
28+
<a href="{{ item.proposal }}" title="See the working group proposal"><i class="icon fa-regular fa-file-lines"></i></i></a>&nbsp;
29+
{% endif %}
30+
<a href="{{ item.board-url }}" title="View the working group board"><i class="icon fa-brands fa-square-github"></i></a>&nbsp;
2431
{% if item.discussion %}
25-
<p class="card-text"><span class="key">Discussion:</span>&nbsp;<a class="discussion" href="{{ item.discussion }}">Link</a></p>
32+
<a href="{{ item.discussion }}" title="Discuss about the working group"><i class="icon fa-solid fa-comments"></i></i></a>&nbsp;
33+
{% else %}
34+
<a href="https://quarkusio.zulipchat.com/#narrow/stream/187038-dev" title="Discuss about the working group"><i class="icon fa-solid fa-comments"></i></a>
2635
{% endif %}
27-
</div>
28-
<div class="card-footer">
29-
<a href="{{ item.board-url }}" class="float-end"> View the {{ item.title }} Board <i class="fa-solid fa-chevron-right"></i></a>
36+
</div>
3037
</div>
3138
</div>
3239
{% endunless %}
@@ -46,7 +53,7 @@ <h2>Completed working groups</h2>
4653
</div>
4754
<div class="card-body">
4855
<p class="card-text"><span class="key">Description:</span>&nbsp;<span class="short-description">{{ item.short-description }}</span></p>
49-
<p class="card-text"><span class="key">Completed on:</span>&nbsp;<span class="last-activity">{{ item.last-activity | date: '%B %d, %Y' }} </span></p>
56+
<p class="card-text"><span class="key">Completed on:</span>&nbsp;<span class="last-activity">{{ item.last-update-date | date: '%B %d, %Y' }} </span></p>
5057
{% if item.deliverable %}
5158
<p class="card-text"><span class="key">Deliverable:</span>&nbsp;<span class="deliverable">{{ item.deliverable }}</span></p>
5259
{% endif %}

_sass/layouts/working-groups.scss

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,12 @@
2525
}
2626

2727
.card-header {
28-
padding-bottom: 5px;
2928
border-bottom: 1px solid var(--card-outline);
30-
height: 2rem
29+
height: fit-content
3130
}
3231

3332
.card-body {
34-
padding: 1rem 0rem;
35-
height: 15rem;
33+
padding: 1rem 0rem;
3634
}
3735

3836
.card-completed {
@@ -42,11 +40,28 @@
4240
.card-footer {
4341
padding-top: 10px;
4442
border-top: 1px solid var(--card-outline);
43+
44+
.icons {
45+
display: flex;
46+
height: 10vh;
47+
align-items: center;
48+
align-content: flex-start;
49+
font-size: xx-large;
50+
text-align: center;
51+
vertical-align: bottom;
52+
color: var(--card-outline);
53+
justify-content: center;
54+
flex-wrap: nowrap;
55+
flex-direction: row;
56+
}
4557
}
4658

59+
60+
4761
.card-title {
4862
font-size: 1.25rem;
4963
font-weight: 400;
64+
margin-bottom: 0.5rem;
5065
}
5166

5267
.card-text {
@@ -62,10 +77,15 @@
6277
position: relative;
6378
word-wrap: break-word;
6479
background-clip: border-box;
80+
align-items: start;
6581
padding: 1rem;
6682
border-radius: 10px;
6783
border: 1px solid var(--card-outline);
6884
width: calc(100% - 2rem);
85+
grid-column: span 4;
86+
justify-content: center;
87+
justify-items: stretch;
88+
align-content: space-between;
6989

7090
grid-column: span 4;
7191

0 commit comments

Comments
 (0)