Skip to content

Commit d241856

Browse files
authored
Merge pull request #4153 from mzuehlke/series-3.5x/graalvm21
Update GraalVM from 17 to 21
2 parents cb76f95 + 65bdeb6 commit d241856

2 files changed

Lines changed: 14 additions & 116 deletions

File tree

.github/workflows/ci.yml

Lines changed: 1 addition & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
matrix:
3030
os: [ubuntu-latest, windows-latest, macos-12]
3131
scala: [3.2.2, 2.12.17, 2.13.10]
32-
java: [temurin@8, temurin@11, temurin@17, graalvm@17]
32+
java: [temurin@8, temurin@11, temurin@17]
3333
ci: [ciJVM, ciNative, ciJS, ciFirefox, ciChrome]
3434
exclude:
3535
- scala: 3.2.2
@@ -38,8 +38,6 @@ jobs:
3838
java: temurin@11
3939
- scala: 2.12.17
4040
java: temurin@17
41-
- scala: 2.12.17
42-
java: graalvm@17
4341
- os: windows-latest
4442
scala: 3.2.2
4543
- os: macos-12
@@ -60,8 +58,6 @@ jobs:
6058
java: temurin@11
6159
- ci: ciJS
6260
java: temurin@17
63-
- ci: ciJS
64-
java: graalvm@17
6561
- os: windows-latest
6662
ci: ciJS
6763
- os: macos-12
@@ -70,8 +66,6 @@ jobs:
7066
java: temurin@11
7167
- ci: ciFirefox
7268
java: temurin@17
73-
- ci: ciFirefox
74-
java: graalvm@17
7569
- os: windows-latest
7670
ci: ciFirefox
7771
- os: macos-12
@@ -80,8 +74,6 @@ jobs:
8074
java: temurin@11
8175
- ci: ciChrome
8276
java: temurin@17
83-
- ci: ciChrome
84-
java: graalvm@17
8577
- os: windows-latest
8678
ci: ciChrome
8779
- os: macos-12
@@ -90,8 +82,6 @@ jobs:
9082
java: temurin@11
9183
- ci: ciNative
9284
java: temurin@17
93-
- ci: ciNative
94-
java: graalvm@17
9585
- os: windows-latest
9686
ci: ciNative
9787
- os: macos-12
@@ -100,8 +90,6 @@ jobs:
10090
- os: macos-12
10191
ci: ciNative
10292
scala: 3.2.2
103-
- os: windows-latest
104-
java: graalvm@17
10593
runs-on: ${{ matrix.os }}
10694
timeout-minutes: 60
10795
steps:
@@ -184,29 +172,6 @@ jobs:
184172
shell: bash
185173
run: sbt '++ ${{ matrix.scala }}' reload +update
186174

187-
- name: Download Java (graalvm@17)
188-
id: download-java-graalvm-17
189-
if: matrix.java == 'graalvm@17'
190-
uses: typelevel/download-java@v2
191-
with:
192-
distribution: graalvm
193-
java-version: 17
194-
195-
- name: Setup Java (graalvm@17)
196-
id: setup-java-graalvm-17
197-
if: matrix.java == 'graalvm@17'
198-
uses: actions/setup-java@v3
199-
with:
200-
distribution: jdkfile
201-
java-version: 17
202-
jdkFile: ${{ steps.download-java-graalvm-17.outputs.jdkFile }}
203-
cache: sbt
204-
205-
- name: sbt update
206-
if: matrix.java == 'graalvm@17' && steps.setup-java-graalvm-17.outputs.cache-hit == 'false'
207-
shell: bash
208-
run: sbt '++ ${{ matrix.scala }}' reload +update
209-
210175
- name: Setup NodeJS v18 LTS
211176
if: matrix.ci == 'ciJS'
212177
uses: actions/setup-node@v3
@@ -218,11 +183,6 @@ jobs:
218183
shell: bash
219184
run: npm install
220185

221-
- name: Install GraalVM Native Image
222-
if: matrix.java == 'graalvm@17'
223-
shell: bash
224-
run: gu install native-image
225-
226186
- name: Configure Windows Pagefile
227187
if: matrix.os == 'windows-latest'
228188
uses: al-cheb/configure-pagefile-action@d298bdee6b133626425040e3788f1055a8b4cf7a
@@ -267,11 +227,6 @@ jobs:
267227
shell: bash
268228
run: example/test-js.sh ${{ matrix.scala }}
269229

270-
- name: Test GraalVM Native Image
271-
if: matrix.scala == '2.13.10' && matrix.java == 'graalvm@17' && matrix.os == 'ubuntu-latest'
272-
shell: bash
273-
run: sbt '++ ${{ matrix.scala }}' graalVMExample/nativeImage graalVMExample/nativeImageRun
274-
275230
- name: Test Example Native App Using Binary
276231
if: matrix.ci == 'ciNative' && matrix.os == 'ubuntu-latest'
277232
shell: bash
@@ -387,28 +342,6 @@ jobs:
387342
if: matrix.java == 'temurin@17' && steps.setup-java-temurin-17.outputs.cache-hit == 'false'
388343
run: sbt '++ ${{ matrix.scala }}' reload +update
389344

390-
- name: Download Java (graalvm@17)
391-
id: download-java-graalvm-17
392-
if: matrix.java == 'graalvm@17'
393-
uses: typelevel/download-java@v2
394-
with:
395-
distribution: graalvm
396-
java-version: 17
397-
398-
- name: Setup Java (graalvm@17)
399-
id: setup-java-graalvm-17
400-
if: matrix.java == 'graalvm@17'
401-
uses: actions/setup-java@v3
402-
with:
403-
distribution: jdkfile
404-
java-version: 17
405-
jdkFile: ${{ steps.download-java-graalvm-17.outputs.jdkFile }}
406-
cache: sbt
407-
408-
- name: sbt update
409-
if: matrix.java == 'graalvm@17' && steps.setup-java-graalvm-17.outputs.cache-hit == 'false'
410-
run: sbt '++ ${{ matrix.scala }}' reload +update
411-
412345
- name: Download target directories (3.2.2, ciJVM)
413346
uses: actions/download-artifact@v3
414347
with:
@@ -636,27 +569,5 @@ jobs:
636569
if: matrix.java == 'temurin@17' && steps.setup-java-temurin-17.outputs.cache-hit == 'false'
637570
run: sbt '++ ${{ matrix.scala }}' reload +update
638571

639-
- name: Download Java (graalvm@17)
640-
id: download-java-graalvm-17
641-
if: matrix.java == 'graalvm@17'
642-
uses: typelevel/download-java@v2
643-
with:
644-
distribution: graalvm
645-
java-version: 17
646-
647-
- name: Setup Java (graalvm@17)
648-
id: setup-java-graalvm-17
649-
if: matrix.java == 'graalvm@17'
650-
uses: actions/setup-java@v3
651-
with:
652-
distribution: jdkfile
653-
java-version: 17
654-
jdkFile: ${{ steps.download-java-graalvm-17.outputs.jdkFile }}
655-
cache: sbt
656-
657-
- name: sbt update
658-
if: matrix.java == 'graalvm@17' && steps.setup-java-graalvm-17.outputs.cache-hit == 'false'
659-
run: sbt '++ ${{ matrix.scala }}' reload +update
660-
661572
- name: Submit Dependencies
662573
uses: scalacenter/sbt-dependency-submission@v2

build.sbt

Lines changed: 13 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,8 @@ val LTSJava = JavaSpec.temurin("11")
137137
val LatestJava = JavaSpec.temurin("17")
138138
val ScalaJSJava = OldGuardJava
139139
val ScalaNativeJava = OldGuardJava
140-
val GraalVM = JavaSpec.graalvm("17")
141140

142-
ThisBuild / githubWorkflowJavaVersions := Seq(OldGuardJava, LTSJava, LatestJava, GraalVM)
141+
ThisBuild / githubWorkflowJavaVersions := Seq(OldGuardJava, LTSJava, LatestJava)
143142
ThisBuild / githubWorkflowOSes := Seq(PrimaryOS, Windows, MacOS)
144143

145144
ThisBuild / githubWorkflowBuildPreamble ++= Seq(
@@ -154,11 +153,6 @@ ThisBuild / githubWorkflowBuildPreamble ++= Seq(
154153
name = Some("Install jsdom and source-map-support"),
155154
cond = Some("matrix.ci == 'ciJS'")
156155
),
157-
WorkflowStep.Run(
158-
List("gu install native-image"),
159-
name = Some("Install GraalVM Native Image"),
160-
cond = Some(s"matrix.java == '${GraalVM.render}'")
161-
),
162156
WorkflowStep.Use(
163157
UseRef.Public(
164158
"al-cheb",
@@ -194,12 +188,6 @@ ThisBuild / githubWorkflowBuild := Seq("JVM", "JS", "Native").map { platform =>
194188
name = Some("Test Example JavaScript App Using Node"),
195189
cond = Some(s"matrix.ci == 'ciJS' && matrix.os == '$PrimaryOS'")
196190
),
197-
WorkflowStep.Sbt(
198-
List("graalVMExample/nativeImage", "graalVMExample/nativeImageRun"),
199-
name = Some("Test GraalVM Native Image"),
200-
cond = Some(
201-
s"matrix.scala == '$Scala213' && matrix.java == '${GraalVM.render}' && matrix.os == '$PrimaryOS'")
202-
),
203191
WorkflowStep.Run(
204192
List("example/test-native.sh ${{ matrix.scala }}"),
205193
name = Some("Test Example Native App Using Binary"),
@@ -228,7 +216,7 @@ ThisBuild / githubWorkflowBuildMatrixExclusions := {
228216
val scalaJavaFilters = for {
229217
scala <- (ThisBuild / githubWorkflowScalaVersions).value.filterNot(Set(Scala213))
230218
java <- (ThisBuild / githubWorkflowJavaVersions).value.filterNot(Set(OldGuardJava))
231-
if !(scala == Scala3 && (java == LatestJava || java == GraalVM))
219+
if !(scala == Scala3 && java == LatestJava)
232220
} yield MatrixExclude(Map("scala" -> scala, "java" -> java.render))
233221

234222
val windowsAndMacScalaFilters =
@@ -270,12 +258,7 @@ ThisBuild / githubWorkflowBuildMatrixExclusions := {
270258
)
271259
}
272260

273-
// Nice-to-haves but unreliable in CI
274-
val flakyFilters = Seq(
275-
MatrixExclude(Map("os" -> Windows, "java" -> GraalVM.render))
276-
)
277-
278-
scalaJavaFilters ++ windowsAndMacScalaFilters ++ jsScalaFilters ++ jsJavaAndOSFilters ++ nativeJavaAndOSFilters ++ flakyFilters
261+
scalaJavaFilters ++ windowsAndMacScalaFilters ++ jsScalaFilters ++ jsJavaAndOSFilters ++ nativeJavaAndOSFilters
279262
}
280263

281264
lazy val useJSEnv =
@@ -919,8 +902,8 @@ lazy val testsJVM = tests
919902
)
920903

921904
/**
922-
* Implementations of standard functionality (e.g. Semaphore, Console, Queue) purely in terms
923-
* of the typeclasses, with no dependency on IO. In most cases, the *tests* for these
905+
* Implementations of standard functionality (e.g. Semaphore, Console, Queue) purely in terms of
906+
* the typeclasses, with no dependency on IO. In most cases, the *tests* for these
924907
* implementations will require IO, and thus those tests will be located within the core
925908
* project.
926909
*/
@@ -997,10 +980,14 @@ lazy val std = crossProject(JSPlatform, JVMPlatform, NativePlatform)
997980
ProblemFilters.exclude[MissingClassProblem](
998981
"cats.effect.std.Dispatcher$Mode$Sequential$"),
999982
// #4052, private classes
1000-
ProblemFilters.exclude[MissingTypesProblem]("cats.effect.std.Dispatcher$RegState$Unstarted$"),
1001-
ProblemFilters.exclude[DirectMissingMethodProblem]("cats.effect.std.Dispatcher#RegState#Unstarted.*"),
1002-
ProblemFilters.exclude[FinalMethodProblem]("cats.effect.std.Dispatcher#RegState#Unstarted.toString"),
1003-
ProblemFilters.exclude[DirectMissingMethodProblem]("cats.effect.std.Dispatcher#Registration#Primary.*"),
983+
ProblemFilters.exclude[MissingTypesProblem](
984+
"cats.effect.std.Dispatcher$RegState$Unstarted$"),
985+
ProblemFilters.exclude[DirectMissingMethodProblem](
986+
"cats.effect.std.Dispatcher#RegState#Unstarted.*"),
987+
ProblemFilters.exclude[FinalMethodProblem](
988+
"cats.effect.std.Dispatcher#RegState#Unstarted.toString"),
989+
ProblemFilters.exclude[DirectMissingMethodProblem](
990+
"cats.effect.std.Dispatcher#Registration#Primary.*")
1004991
)
1005992
)
1006993
.jsSettings(

0 commit comments

Comments
 (0)