Skip to content

Commit 1a09e6d

Browse files
committed
Merge branch 'series/0.24' into series/0.25
2 parents 90852fc + 66f5b6c commit 1a09e6d

20 files changed

+1137
-179
lines changed
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: "Continuous Integration (Testing with Jetty)"
2+
3+
on:
4+
pull_request:
5+
branches: ['**', '!update/**', '!pr/**']
6+
push:
7+
branches: ['**', '!update/**', '!pr/**']
8+
tags: [v*]
9+
10+
env:
11+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
12+
13+
14+
concurrency:
15+
group: ${{ github.workflow }} @ ${{ github.ref }}
16+
cancel-in-progress: true
17+
18+
jobs:
19+
build:
20+
name: Test
21+
strategy:
22+
fail-fast: false
23+
matrix:
24+
os: [ubuntu-22.04]
25+
scala: [2.12, 2.13, 3]
26+
java: [temurin@17]
27+
project: [servletTesting]
28+
runs-on: ${{ matrix.os }}
29+
timeout-minutes: 60
30+
steps:
31+
- name: Checkout current branch (full)
32+
uses: actions/checkout@v4
33+
with:
34+
fetch-depth: 0
35+
36+
- name: Setup sbt
37+
uses: sbt/setup-sbt@v1
38+
39+
- name: Setup Java (temurin@17)
40+
id: setup-java-temurin-17
41+
if: matrix.java == 'temurin@17'
42+
uses: actions/setup-java@v4
43+
with:
44+
distribution: temurin
45+
java-version: 17
46+
cache: sbt
47+
48+
- name: sbt update
49+
if: matrix.java == 'temurin@17' && steps.setup-java-temurin-17.outputs.cache-hit == 'false'
50+
run: sbt +update
51+
52+
- name: Check headers and formatting
53+
if: matrix.java == 'temurin@17' && matrix.os == 'ubuntu-22.04'
54+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' headerCheckAll scalafmtCheckAll 'project /' scalafmtSbtCheck
55+
56+
- name: Test
57+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' test
58+
59+
- name: Check binary compatibility
60+
if: matrix.java == 'temurin@17' && matrix.os == 'ubuntu-22.04'
61+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' mimaReportBinaryIssues
62+
63+
- name: Generate API documentation
64+
if: matrix.java == 'temurin@17' && matrix.os == 'ubuntu-22.04'
65+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' doc
66+
67+
- name: Check scalafix lints
68+
if: matrix.java == 'temurin@17' && !startsWith(matrix.scala, '3')
69+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' 'scalafixAll --check'
70+
71+
- name: Check unused compile dependencies
72+
if: matrix.java == 'temurin@17'
73+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' unusedCompileDependenciesTest

.github/workflows/ci.yml

Lines changed: 83 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -30,28 +30,45 @@ jobs:
3030
matrix:
3131
os: [ubuntu-22.04]
3232
scala: [2.12, 2.13, 3]
33-
java: [temurin@11, temurin@17]
33+
java: [temurin@8, temurin@11, temurin@17]
3434
project: [rootJVM]
3535
exclude:
36+
- scala: 2.12
37+
java: temurin@11
3638
- scala: 2.12
3739
java: temurin@17
40+
- scala: 3
41+
java: temurin@11
3842
- scala: 3
3943
java: temurin@17
4044
runs-on: ${{ matrix.os }}
4145
timeout-minutes: 60
4246
steps:
4347
- name: Checkout current branch (full)
44-
uses: actions/checkout@v4
48+
uses: actions/checkout@v5
4549
with:
4650
fetch-depth: 0
4751

4852
- name: Setup sbt
4953
uses: sbt/setup-sbt@v1
5054

55+
- name: Setup Java (temurin@8)
56+
id: setup-java-temurin-8
57+
if: matrix.java == 'temurin@8'
58+
uses: actions/setup-java@v5
59+
with:
60+
distribution: temurin
61+
java-version: 8
62+
cache: sbt
63+
64+
- name: sbt update
65+
if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false'
66+
run: sbt +update
67+
5168
- name: Setup Java (temurin@11)
5269
id: setup-java-temurin-11
5370
if: matrix.java == 'temurin@11'
54-
uses: actions/setup-java@v4
71+
uses: actions/setup-java@v5
5572
with:
5673
distribution: temurin
5774
java-version: 11
@@ -64,7 +81,7 @@ jobs:
6481
- name: Setup Java (temurin@17)
6582
id: setup-java-temurin-17
6683
if: matrix.java == 'temurin@17'
67-
uses: actions/setup-java@v4
84+
uses: actions/setup-java@v5
6885
with:
6986
distribution: temurin
7087
java-version: 17
@@ -78,26 +95,26 @@ jobs:
7895
run: sbt githubWorkflowCheck
7996

8097
- name: Check headers and formatting
81-
if: matrix.java == 'temurin@11' && matrix.os == 'ubuntu-22.04'
98+
if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04'
8299
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' headerCheckAll scalafmtCheckAll 'project /' scalafmtSbtCheck
83100

84101
- name: Test
85102
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' test
86103

87104
- name: Check binary compatibility
88-
if: matrix.java == 'temurin@11' && matrix.os == 'ubuntu-22.04'
105+
if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04'
89106
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' mimaReportBinaryIssues
90107

91108
- name: Generate API documentation
92-
if: matrix.java == 'temurin@11' && matrix.os == 'ubuntu-22.04'
109+
if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04'
93110
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' doc
94111

95112
- name: Check scalafix lints
96-
if: matrix.java == 'temurin@11' && !startsWith(matrix.scala, '3')
113+
if: matrix.java == 'temurin@8' && !startsWith(matrix.scala, '3')
97114
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' 'scalafixAll --check'
98115

99116
- name: Check unused compile dependencies
100-
if: matrix.java == 'temurin@11'
117+
if: matrix.java == 'temurin@8'
101118
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' unusedCompileDependenciesTest
102119

103120
- name: Make target directories
@@ -110,7 +127,7 @@ jobs:
110127

111128
- name: Upload target directories
112129
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main')
113-
uses: actions/upload-artifact@v4
130+
uses: actions/upload-artifact@v5
114131
with:
115132
name: target-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.scala }}-${{ matrix.project }}
116133
path: targets.tar
@@ -122,21 +139,34 @@ jobs:
122139
strategy:
123140
matrix:
124141
os: [ubuntu-22.04]
125-
java: [temurin@11]
142+
java: [temurin@8]
126143
runs-on: ${{ matrix.os }}
127144
steps:
128145
- name: Checkout current branch (full)
129-
uses: actions/checkout@v4
146+
uses: actions/checkout@v5
130147
with:
131148
fetch-depth: 0
132149

133150
- name: Setup sbt
134151
uses: sbt/setup-sbt@v1
135152

153+
- name: Setup Java (temurin@8)
154+
id: setup-java-temurin-8
155+
if: matrix.java == 'temurin@8'
156+
uses: actions/setup-java@v5
157+
with:
158+
distribution: temurin
159+
java-version: 8
160+
cache: sbt
161+
162+
- name: sbt update
163+
if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false'
164+
run: sbt +update
165+
136166
- name: Setup Java (temurin@11)
137167
id: setup-java-temurin-11
138168
if: matrix.java == 'temurin@11'
139-
uses: actions/setup-java@v4
169+
uses: actions/setup-java@v5
140170
with:
141171
distribution: temurin
142172
java-version: 11
@@ -149,7 +179,7 @@ jobs:
149179
- name: Setup Java (temurin@17)
150180
id: setup-java-temurin-17
151181
if: matrix.java == 'temurin@17'
152-
uses: actions/setup-java@v4
182+
uses: actions/setup-java@v5
153183
with:
154184
distribution: temurin
155185
java-version: 17
@@ -160,7 +190,7 @@ jobs:
160190
run: sbt +update
161191

162192
- name: Download target directories (2.12, rootJVM)
163-
uses: actions/download-artifact@v4
193+
uses: actions/download-artifact@v6
164194
with:
165195
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJVM
166196

@@ -170,7 +200,7 @@ jobs:
170200
rm targets.tar
171201
172202
- name: Download target directories (2.13, rootJVM)
173-
uses: actions/download-artifact@v4
203+
uses: actions/download-artifact@v6
174204
with:
175205
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJVM
176206

@@ -180,7 +210,7 @@ jobs:
180210
rm targets.tar
181211
182212
- name: Download target directories (3, rootJVM)
183-
uses: actions/download-artifact@v4
213+
uses: actions/download-artifact@v6
184214
with:
185215
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJVM
186216

@@ -219,21 +249,34 @@ jobs:
219249
strategy:
220250
matrix:
221251
os: [ubuntu-22.04]
222-
java: [temurin@11]
252+
java: [temurin@8]
223253
runs-on: ${{ matrix.os }}
224254
steps:
225255
- name: Checkout current branch (full)
226-
uses: actions/checkout@v4
256+
uses: actions/checkout@v5
227257
with:
228258
fetch-depth: 0
229259

230260
- name: Setup sbt
231261
uses: sbt/setup-sbt@v1
232262

263+
- name: Setup Java (temurin@8)
264+
id: setup-java-temurin-8
265+
if: matrix.java == 'temurin@8'
266+
uses: actions/setup-java@v5
267+
with:
268+
distribution: temurin
269+
java-version: 8
270+
cache: sbt
271+
272+
- name: sbt update
273+
if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false'
274+
run: sbt +update
275+
233276
- name: Setup Java (temurin@11)
234277
id: setup-java-temurin-11
235278
if: matrix.java == 'temurin@11'
236-
uses: actions/setup-java@v4
279+
uses: actions/setup-java@v5
237280
with:
238281
distribution: temurin
239282
java-version: 11
@@ -246,7 +289,7 @@ jobs:
246289
- name: Setup Java (temurin@17)
247290
id: setup-java-temurin-17
248291
if: matrix.java == 'temurin@17'
249-
uses: actions/setup-java@v4
292+
uses: actions/setup-java@v5
250293
with:
251294
distribution: temurin
252295
java-version: 17
@@ -259,7 +302,7 @@ jobs:
259302
- name: Submit Dependencies
260303
uses: scalacenter/sbt-dependency-submission@v2
261304
with:
262-
modules-ignore: http4s-servlet-examples_2.12 http4s-servlet-examples_2.13 http4s-servlet-examples_3 rootjs_2.12 rootjs_2.13 rootjs_3 docs_2.12 docs_2.13 docs_3 rootjvm_2.12 rootjvm_2.13 rootjvm_3 rootnative_2.12 rootnative_2.13 rootnative_3 sbt-http4s-org-scalafix-internal_2.12 sbt-http4s-org-scalafix-internal_2.13 sbt-http4s-org-scalafix-internal_3
305+
modules-ignore: http4s-servlet-examples_2.12 http4s-servlet-examples_2.13 http4s-servlet-examples_3 http4s-servlet-testing_2.12 http4s-servlet-testing_2.13 http4s-servlet-testing_3 rootjs_2.12 rootjs_2.13 rootjs_3 docs_2.12 docs_2.13 docs_3 rootjvm_2.12 rootjvm_2.13 rootjvm_3 rootnative_2.12 rootnative_2.13 rootnative_3 sbt-http4s-org-scalafix-internal_2.12 sbt-http4s-org-scalafix-internal_2.13 sbt-http4s-org-scalafix-internal_3
263306
configs-ignore: test scala-tool scala-doc-tool test-internal
264307

265308
validate-steward:
@@ -271,12 +314,12 @@ jobs:
271314
runs-on: ${{ matrix.os }}
272315
steps:
273316
- name: Checkout current branch (fast)
274-
uses: actions/checkout@v4
317+
uses: actions/checkout@v5
275318

276319
- name: Setup Java (temurin@11)
277320
id: setup-java-temurin-11
278321
if: matrix.java == 'temurin@11'
279-
uses: actions/setup-java@v4
322+
uses: actions/setup-java@v5
280323
with:
281324
distribution: temurin
282325
java-version: 11
@@ -296,17 +339,30 @@ jobs:
296339
runs-on: ${{ matrix.os }}
297340
steps:
298341
- name: Checkout current branch (full)
299-
uses: actions/checkout@v4
342+
uses: actions/checkout@v5
300343
with:
301344
fetch-depth: 0
302345

303346
- name: Setup sbt
304347
uses: sbt/setup-sbt@v1
305348

349+
- name: Setup Java (temurin@8)
350+
id: setup-java-temurin-8
351+
if: matrix.java == 'temurin@8'
352+
uses: actions/setup-java@v5
353+
with:
354+
distribution: temurin
355+
java-version: 8
356+
cache: sbt
357+
358+
- name: sbt update
359+
if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false'
360+
run: sbt +update
361+
306362
- name: Setup Java (temurin@11)
307363
id: setup-java-temurin-11
308364
if: matrix.java == 'temurin@11'
309-
uses: actions/setup-java@v4
365+
uses: actions/setup-java@v5
310366
with:
311367
distribution: temurin
312368
java-version: 11
@@ -319,7 +375,7 @@ jobs:
319375
- name: Setup Java (temurin@17)
320376
id: setup-java-temurin-17
321377
if: matrix.java == 'temurin@17'
322-
uses: actions/setup-java@v4
378+
uses: actions/setup-java@v5
323379
with:
324380
distribution: temurin
325381
java-version: 17

.scalafmt.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version = 3.9.4
1+
version = 3.10.1
22

33
style = default
44

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ libraryDependencies ++= Seq(
1717
| http4s-servlet | http4s-core | servlet-api | Scala 2.12 | Scala 2.13 | Scala 3 | Status |
1818
|:---------------|:------------|:------------|------------|------------|---------|:----------|
1919
| 0.23.x | 0.23.x | 3.1 |||| Stable |
20-
| 0.24.x | 0.23.x | 4.0 |||| Milestone |
21-
| 0.25.x | 0.23.x | 5.0 |||| Milestone |
20+
| 0.24.x | 0.23.x | 4.0 |||| RC |
21+
| 0.25.x | 0.23.x | 5.0 |||| RC |
2222

2323
[http4s-jetty]: https://github.com/http4s/http4s-jetty/
2424
[http4s-tomcat]: https://github.com/http4s/http4s-tomcat/

0 commit comments

Comments
 (0)