From f3e30558e45d324b6257e7fb28100bca0718ec57 Mon Sep 17 00:00:00 2001 From: Christoph Loy Date: Sun, 29 Jun 2025 01:28:29 +0200 Subject: [PATCH] Gradle deprecation fixes & upgrades (#1594) * Fix Gradle deprecations By using test suites, we explicitely configure the relevant dependencies on the test sourceset. This is not done by merely configuring the test task. * Switch to maintained version of Shadow * Update to Gradle 8.14.2 --- .../src/main/kotlin/velocity-init-manifest.gradle.kts | 9 ++++++++- build.gradle.kts | 10 +++++----- gradle/libs.versions.toml | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/build-logic/src/main/kotlin/velocity-init-manifest.gradle.kts b/build-logic/src/main/kotlin/velocity-init-manifest.gradle.kts index 1901430f..e38ef34d 100644 --- a/build-logic/src/main/kotlin/velocity-init-manifest.gradle.kts +++ b/build-logic/src/main/kotlin/velocity-init-manifest.gradle.kts @@ -2,8 +2,15 @@ import org.gradle.jvm.tasks.Jar import org.gradle.kotlin.dsl.withType import java.io.ByteArrayOutputStream +// This interface is needed as a workaround to get an instance of ExecOperations +interface Injected { + @get:Inject + val execOps: ExecOperations +} + val currentShortRevision = ByteArrayOutputStream().use { - exec { + val execOps = objects.newInstance().execOps + execOps.exec { executable = "git" args = listOf("rev-parse", "HEAD") standardOutput = it diff --git a/build.gradle.kts b/build.gradle.kts index 9e862dad..a761de5f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -20,11 +20,11 @@ subprojects { testImplementation(rootProject.libs.junit) } - tasks { - test { - useJUnitPlatform() - reports { - junitXml.required.set(true) + testing.suites.named("test") { + useJUnitJupiter() + targets.all { + testTask.configure { + reports.junitXml.required = true } } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6e83aa67..fb1e863f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -8,7 +8,7 @@ netty = "4.2.1.Final" [plugins] fill = "io.papermc.fill.gradle:1.0.3" indra-publishing = "net.kyori.indra.publishing:2.0.6" -shadow = "io.github.goooler.shadow:8.1.5" +shadow = "com.gradleup.shadow:8.3.6" spotless = "com.diffplug.spotless:6.25.0" [libraries] diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index e2847c82..ff23a68d 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.2-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME