Skip to content

Commit

Permalink
chore(deps): update plugin org.ajoberstar.stutter to v0.7.2 (#225)
Browse files Browse the repository at this point in the history
* Upgrade stutter 0.6.0 to 0.7.2
based on migration guide: https://github.com/ajoberstar/gradle-stutter#migrating-from-060

* Regenerate lock files (`gradlew stutterWriteLocks`) as mentioned in https://github.com/ajoberstar/gradle-stutter/releases/tag/0.7.0

* Fix typo in property name

* Convert gradle-latest-versions.yml to Stutter 0.7 format.

* compatTest is not part of check anymore, so call it manually for CI

* Convert java-versions.yml to Stutter 0.7 format.

* To match the original behavior, we only want to run each Gradle version in the lockfile for Java 11

* Add resolver for toolchains. Before this PR they were not used.

Fixes warning from Gradle 8.x:

Using a toolchain installed via auto-provisioning, but having no toolchain repositories configured. This behavior is deprecated. Consider defining toolchain download repositories, otherwise the build might fail in clean environments; see https://docs.gradle.org/8.1.1/userguide/toolchains.html#sub:download_repositories

* Restore lockfile to milestone, fixing Ivy failures are not in scope here.
  • Loading branch information
TWiStErRob committed Jun 5, 2023
1 parent 6120502 commit ef49dd2
Show file tree
Hide file tree
Showing 9 changed files with 43 additions and 41 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/gradle-latest-versions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ jobs:
- name: Set latest Gradle versions to test with
run: |
cp "${{ env.GRADLE_VERSIONS_OUTPUT_FILE }}" .stutter/java11.lock
echo "java11=$(cat ${{ env.GRADLE_VERSIONS_OUTPUT_FILE }} | tr '\n' ',')" > stutter.lockfile
echo "Gradle versions configured for compatibility tests:"
cat .stutter/java11.lock
cat stutter.lockfile
- name: Run compatTest
run: ./gradlew --continue test compatTest
14 changes: 8 additions & 6 deletions .github/workflows/java-versions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,14 @@ jobs:
# Workaround https://github.com/ajoberstar/gradle-stutter/issues/22
- name: Reduce number of Gradle regressions builds
run: |
for l in .stutter/*.lock; do
echo $l
echo "$(cat $l | grep -v "^#" | tail -1)" > $l
cat $l
done
# Keep only the last Gradle version per Stutter matrix; for each line this transformation is done:
# java11=6.0.1,6.9.4,7.0.2,7.6.1,8.0.2,8.1.1,8.2-rc-1
# ->
# java11=8.2-rc-1
# The trick is that \2 will greedily eat everything before the last comma.
sed -r 's/^(.*?)=(.*),(.*)$/\1=\3/g' -i stutter.lockfile
cat stutter.lockfile
- name: Test cross Java versions compatibility
run: |
./gradlew --version
./gradlew --stacktrace build
./gradlew --stacktrace build compatTestJava${{ matrix.jdk }}
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,4 @@ jobs:
distribution: 'zulu'
- uses: gradle/gradle-build-action@v2
with:
arguments: --scan --stacktrace build
arguments: --scan --stacktrace build compatTestJava11
8 changes: 0 additions & 8 deletions .stutter/java11.lock

This file was deleted.

6 changes: 0 additions & 6 deletions .stutter/java17.lock

This file was deleted.

8 changes: 0 additions & 8 deletions .stutter/java8.lock

This file was deleted.

37 changes: 27 additions & 10 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ plugins {
id("com.github.johnrengelman.shadow") version "8.1.1"
id("org.jetbrains.gradle.plugin.idea-ext")
id("com.github.ben-manes.versions") version "0.46.0"
id("org.ajoberstar.stutter") version "0.6.0"
id("org.ajoberstar.stutter") version "0.7.2"
}

group = "io.github.gradle-nexus"
Expand Down Expand Up @@ -100,15 +100,32 @@ java {
}

stutter {
isSparse = (findProperty("stutter.sparce")?.toString()?.toBoolean()) ?: true
java(8) {
compatibleRange("6.0")
}
java(11) {
compatibleRange("6.0")
}
java(17) {
compatibleRange("7.3")
sparse.set(providers.gradleProperty("stutter.sparse").map(String::toBoolean).orElse(true))
matrices {
register("java8") {
javaToolchain {
languageVersion.set(JavaLanguageVersion.of(8))
}
gradleVersions {
compatibleRange("6.0")
}
}
register("java11") {
javaToolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
gradleVersions {
compatibleRange("6.0")
}
}
register("java17") {
javaToolchain {
languageVersion.set(JavaLanguageVersion.of(17))
}
gradleVersions {
compatibleRange("7.3")
}
}
}
}

Expand Down
1 change: 1 addition & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
plugins {
id("com.gradle.enterprise") version "3.13.3"
id("org.gradle.toolchains.foojay-resolver-convention") version "0.5.0"
}

gradleEnterprise {
Expand Down
4 changes: 4 additions & 0 deletions stutter.lockfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# DO NOT MODIFY: Generated by Stutter plugin.
java11=6.0.1,6.9.4,7.0.2,7.6.1,8.0.2,8.1.1,8.2-milestone-1
java17=7.3.3,7.6.1,8.0.2,8.1.1,8.2-milestone-1
java8=6.0.1,6.9.4,7.0.2,7.6.1,8.0.2,8.1.1,8.2-milestone-1

0 comments on commit ef49dd2

Please sign in to comment.