From b5ca56841f7088176e9f55e07550cf01e47fa095 Mon Sep 17 00:00:00 2001 From: Roberto Perez Alcolea Date: Fri, 6 Mar 2026 21:33:57 -0800 Subject: [PATCH 1/2] plugin compatibility config: add compatibility features metadata --- build.gradle | 54 ++++++++++++++++++++++++++++++++++++++++++++++++- gradle.lockfile | 17 ++++++++++------ 2 files changed, 64 insertions(+), 7 deletions(-) diff --git a/build.gradle b/build.gradle index 4b77b30d..6d354733 100644 --- a/build.gradle +++ b/build.gradle @@ -17,7 +17,7 @@ import org.gradle.api.attributes.plugin.GradlePluginApiVersion * */ plugins { - id 'com.netflix.nebula.plugin-plugin' version '22.0.2' + id 'com.netflix.nebula.plugin-plugin' version '25.+' id 'java-library' } @@ -59,6 +59,8 @@ dependencies { implementation 'com.bmuschko:gradle-docker-plugin:10.0.0' testImplementation 'com.github.stefanbirkner:system-rules:1.19.0' + testImplementation("org.spockframework:spock-core:2.3-groovy-4.0") + testImplementation("org.junit.vintage:junit-vintage-engine:5.+") } def javaApiUrl = 'http://docs.oracle.com/javase/1.6.0/docs/api/' @@ -90,6 +92,11 @@ gradlePlugin { description = project.description implementationClass = 'com.netflix.gradle.plugins.packaging.SystemPackagingPlugin' tags.set(['nebula', 'rpm', 'centos', 'deb', 'debian']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageApplication { @@ -98,6 +105,11 @@ gradlePlugin { description = 'Packages output of application plugin into a debian or rpm' implementationClass = 'com.netflix.gradle.plugins.application.OspackageApplicationPlugin' tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'application']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageApplicationDaemon { @@ -106,6 +118,11 @@ gradlePlugin { description = 'Creates daemontools setup to run output from application plugin' implementationClass = 'com.netflix.gradle.plugins.application.OspackageApplicationDaemonPlugin' tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'application', 'daemon']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageApplicationSpring { @@ -114,6 +131,11 @@ gradlePlugin { description = 'Packages output of application plugin into a debian or rpm' implementationClass = 'com.netflix.gradle.plugins.application.OspackageApplicationSpringBootPlugin' tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'application', 'spring']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageBase { @@ -122,6 +144,11 @@ gradlePlugin { description = 'Setup base publishing for OS packages' implementationClass = 'com.netflix.gradle.plugins.packaging.SystemPackagingBasePlugin' tags.set(['nebula', 'rpm', 'centos', 'deb', 'debian']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageDaemon { @@ -130,6 +157,11 @@ gradlePlugin { description = 'Create daemontools runner' implementationClass = 'com.netflix.gradle.plugins.daemon.OspackageDaemonPlugin' tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'daemon']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageDocker { @@ -138,6 +170,11 @@ gradlePlugin { description = 'Create docker images from ospackage block' implementationClass = 'com.netflix.gradle.plugins.docker.OsPackageDockerPlugin' tags.set(['nebula', 'docker']) + compatibility { + features { + configurationCache.set(true) + } + } } ospackageDockerBase { @@ -146,6 +183,11 @@ gradlePlugin { description = 'Setup base publishing for docker images' implementationClass = 'com.netflix.gradle.plugins.docker.OsPackageDockerBasePlugin' tags.set(['nebula', 'docker']) + compatibility { + features { + configurationCache.set(true) + } + } } deb { @@ -154,6 +196,11 @@ gradlePlugin { description = 'Create debian system packages' implementationClass = 'com.netflix.gradle.plugins.deb.DebPlugin' tags.set(['nebula', 'deb', 'debian']) + compatibility { + features { + configurationCache.set(true) + } + } } rpm { @@ -162,6 +209,11 @@ gradlePlugin { description = 'Create RPM system packages' implementationClass = 'com.netflix.gradle.plugins.rpm.RpmPlugin' tags.set(['nebula', 'rpm', 'centos']) + compatibility { + features { + configurationCache.set(true) + } + } } } } diff --git a/gradle.lockfile b/gradle.lockfile index df3e5fdb..1d26ce91 100644 --- a/gradle.lockfile +++ b/gradle.lockfile @@ -5,20 +5,23 @@ cglib:cglib-nodep:3.2.2=integTestRuntimeClasspath,testRuntimeClasspath com.bmuschko:gradle-docker-plugin:10.0.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath com.github.luben:zstd-jni:1.5.6-3=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath com.github.stefanbirkner:system-rules:1.19.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.netflix.nebula:nebula-test:11.0.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.netflix.nebula:nebula-test:11.12.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath commons-codec:commons-codec:1.17.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath commons-io:commons-io:2.16.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath io.airlift:aircompressor:0.27=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath javax.inject:javax.inject:1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath junit:junit-dep:4.11=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath junit:junit:4.13.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +net.bytebuddy:byte-buddy:1.18.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.ant:ant-launcher:1.10.15=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.ant:ant:1.10.15=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.commons:commons-compress:1.26.2=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.commons:commons-lang3:3.14.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +org.apache.groovy:groovy-bom:4.0.4=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.groovy:groovy:4.0.4=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.maven:maven-archiver:3.6.3=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -org.apiguardian:apiguardian-api:1.1.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.apiguardian:apiguardian-api:1.1.2=integTestCompileClasspath,testCompileClasspath +org.assertj:assertj-core:3.27.7=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.bouncycastle:bcpg-jdk15on:1.62=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.bouncycastle:bcprov-jdk15on:1.62=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.codehaus.plexus:plexus-archiver:4.10.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath @@ -26,9 +29,12 @@ org.codehaus.plexus:plexus-interpolation:1.27=compileClasspath,integTestCompileC org.codehaus.plexus:plexus-io:3.5.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.hamcrest:hamcrest-core:1.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.hamcrest:hamcrest:2.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-commons:1.13.1=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-engine:1.13.1=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-launcher:1.13.1=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.jspecify:jspecify:1.0.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-commons:1.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-engine:1.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-launcher:1.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.vintage:junit-vintage-engine:5.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit:junit-bom:5.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.objenesis:objenesis:2.4=integTestRuntimeClasspath,testRuntimeClasspath org.opentest4j:opentest4j:1.3.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.redline-rpm:redline:1.2.10=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath @@ -36,7 +42,6 @@ org.slf4j:slf4j-api:1.7.36=compileClasspath,integTestCompileClasspath,integTestR org.sonatype.plexus:plexus-cipher:1.4=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.sonatype.plexus:plexus-sec-dispatcher:1.4=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.spockframework:spock-core:2.3-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.spockframework:spock-junit4:2.3-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.tukaani:xz:1.4=compileClasspath,integTestCompileClasspath,testCompileClasspath org.tukaani:xz:1.9=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath org.vafer:jdeb:1.14=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath From bb89f8b1a18338ce57d304be2b3685c2eb7204c8 Mon Sep 17 00:00:00 2001 From: Roberto Perez Alcolea Date: Sat, 7 Mar 2026 10:11:58 -0800 Subject: [PATCH 2/2] plugin compatibility config: add compatibility features metadata --- build.gradle | 26 ++++++++++++++------------ gradle.lockfile | 12 +++++++----- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/build.gradle b/build.gradle index 6d354733..fdfddcb6 100644 --- a/build.gradle +++ b/build.gradle @@ -59,10 +59,12 @@ dependencies { implementation 'com.bmuschko:gradle-docker-plugin:10.0.0' testImplementation 'com.github.stefanbirkner:system-rules:1.19.0' - testImplementation("org.spockframework:spock-core:2.3-groovy-4.0") - testImplementation("org.junit.vintage:junit-vintage-engine:5.+") + testImplementation("org.spockframework:spock-core:2.4-groovy-4.0") + testImplementation("org.spockframework:spock-junit4:2.4-groovy-4.0") } + + def javaApiUrl = 'http://docs.oracle.com/javase/1.6.0/docs/api/' def groovyApiUrl = 'http://groovy.codehaus.org/gapi/' @@ -94,7 +96,7 @@ gradlePlugin { tags.set(['nebula', 'rpm', 'centos', 'deb', 'debian']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -107,7 +109,7 @@ gradlePlugin { tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'application']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -120,7 +122,7 @@ gradlePlugin { tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'application', 'daemon']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -133,7 +135,7 @@ gradlePlugin { tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'application', 'spring']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -146,7 +148,7 @@ gradlePlugin { tags.set(['nebula', 'rpm', 'centos', 'deb', 'debian']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -159,7 +161,7 @@ gradlePlugin { tags.set(['nebula', 'os', 'package', 'rpm', 'deb', 'daemon']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -172,7 +174,7 @@ gradlePlugin { tags.set(['nebula', 'docker']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -185,7 +187,7 @@ gradlePlugin { tags.set(['nebula', 'docker']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -198,7 +200,7 @@ gradlePlugin { tags.set(['nebula', 'deb', 'debian']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } @@ -211,7 +213,7 @@ gradlePlugin { tags.set(['nebula', 'rpm', 'centos']) compatibility { features { - configurationCache.set(true) + configurationCache = true } } } diff --git a/gradle.lockfile b/gradle.lockfile index 1d26ce91..86fe7a9a 100644 --- a/gradle.lockfile +++ b/gradle.lockfile @@ -9,6 +9,7 @@ com.netflix.nebula:nebula-test:11.12.0=integTestCompileClasspath,integTestRuntim commons-codec:commons-codec:1.17.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath commons-io:commons-io:2.16.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath io.airlift:aircompressor:0.27=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +io.leangen.geantyref:geantyref:1.3.16=integTestRuntimeClasspath,testRuntimeClasspath javax.inject:javax.inject:1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath junit:junit-dep:4.11=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath junit:junit:4.13.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath @@ -17,8 +18,8 @@ org.apache.ant:ant-launcher:1.10.15=compileClasspath,integTestCompileClasspath,i org.apache.ant:ant:1.10.15=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.commons:commons-compress:1.26.2=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.commons:commons-lang3:3.14.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -org.apache.groovy:groovy-bom:4.0.4=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.apache.groovy:groovy:4.0.4=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.apache.groovy:groovy-bom:4.0.29=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.apache.groovy:groovy:4.0.29=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.maven:maven-archiver:3.6.3=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.apiguardian:apiguardian-api:1.1.2=integTestCompileClasspath,testCompileClasspath org.assertj:assertj-core:3.27.7=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath @@ -28,12 +29,11 @@ org.codehaus.plexus:plexus-archiver:4.10.0=compileClasspath,integTestCompileClas org.codehaus.plexus:plexus-interpolation:1.27=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.codehaus.plexus:plexus-io:3.5.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.hamcrest:hamcrest-core:1.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.hamcrest:hamcrest:2.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.hamcrest:hamcrest:3.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.jspecify:jspecify:1.0.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.junit.platform:junit-platform-commons:1.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.junit.platform:junit-platform-engine:1.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.junit.platform:junit-platform-launcher:1.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.vintage:junit-vintage-engine:5.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.junit:junit-bom:5.14.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.objenesis:objenesis:2.4=integTestRuntimeClasspath,testRuntimeClasspath org.opentest4j:opentest4j:1.3.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath @@ -41,7 +41,9 @@ org.redline-rpm:redline:1.2.10=compileClasspath,integTestCompileClasspath,integT org.slf4j:slf4j-api:1.7.36=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.sonatype.plexus:plexus-cipher:1.4=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.sonatype.plexus:plexus-sec-dispatcher:1.4=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -org.spockframework:spock-core:2.3-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.spockframework:spock-bom:2.4-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.spockframework:spock-core:2.4-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.spockframework:spock-junit4:2.4-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.tukaani:xz:1.4=compileClasspath,integTestCompileClasspath,testCompileClasspath org.tukaani:xz:1.9=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath org.vafer:jdeb:1.14=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath