From d061dfa4b8f6cd1b4197390800260753d09b09b2 Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 14 Sep 2025 18:19:24 +0100 Subject: [PATCH 1/3] Add Guava dependencies to module.json This update introduces several new Guava-related dependencies in the module.json file, including guava-base, guava-jdk5, sisu-guava, and others. These additions enhance the project's support for Guava libraries. RELNOTES=n/a --- guava/module.json | 100 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/guava/module.json b/guava/module.json index e621749cfe0d..38a3ad3de2ab 100644 --- a/guava/module.json +++ b/guava/module.json @@ -78,6 +78,31 @@ "group": "com.google.collections", "name": "google-collections", "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-base", + "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-jdk5", + "version": "${pom.version}" + }, + { + "group": "org.sonatype.sisu", + "name": "sisu-guava", + "version": "${pom.version}" + }, + { + "group": "org.hudsonci.lib.guava", + "name": "guava", + "version": "${pom.version}" + }, + { + "group": "org.apache.servicemix.bundles", + "name": "org.apache.servicemix.bundles.guava", + "version": "${pom.version}" } ] }, @@ -144,6 +169,31 @@ "group": "com.google.collections", "name": "google-collections", "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-base", + "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-jdk5", + "version": "${pom.version}" + }, + { + "group": "org.sonatype.sisu", + "name": "sisu-guava", + "version": "${pom.version}" + }, + { + "group": "org.hudsonci.lib.guava", + "name": "guava", + "version": "${pom.version}" + }, + { + "group": "org.apache.servicemix.bundles", + "name": "org.apache.servicemix.bundles.guava", + "version": "${pom.version}" } ] }, @@ -210,6 +260,31 @@ "group": "com.google.collections", "name": "google-collections", "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-base", + "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-jdk5", + "version": "${pom.version}" + }, + { + "group": "org.sonatype.sisu", + "name": "sisu-guava", + "version": "${pom.version}" + }, + { + "group": "org.hudsonci.lib.guava", + "name": "guava", + "version": "${pom.version}" + }, + { + "group": "org.apache.servicemix.bundles", + "name": "org.apache.servicemix.bundles.guava", + "version": "${pom.version}" } ] }, @@ -276,6 +351,31 @@ "group": "com.google.collections", "name": "google-collections", "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-base", + "version": "${pom.version}" + }, + { + "group": "com.google.guava", + "name": "guava-jdk5", + "version": "${pom.version}" + }, + { + "group": "org.sonatype.sisu", + "name": "sisu-guava", + "version": "${pom.version}" + }, + { + "group": "org.hudsonci.lib.guava", + "name": "guava", + "version": "${pom.version}" + }, + { + "group": "org.apache.servicemix.bundles", + "name": "org.apache.servicemix.bundles.guava", + "version": "${pom.version}" } ] } From 0a03cc76fc8a626028e0fa6be53e47fb066a482d Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 21 Sep 2025 12:32:01 +0100 Subject: [PATCH 2/3] Remove Apache ServiceMix Guava bundle dependencies from module.json --- guava/module.json | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/guava/module.json b/guava/module.json index 38a3ad3de2ab..bbd32353b128 100644 --- a/guava/module.json +++ b/guava/module.json @@ -98,11 +98,6 @@ "group": "org.hudsonci.lib.guava", "name": "guava", "version": "${pom.version}" - }, - { - "group": "org.apache.servicemix.bundles", - "name": "org.apache.servicemix.bundles.guava", - "version": "${pom.version}" } ] }, @@ -189,11 +184,6 @@ "group": "org.hudsonci.lib.guava", "name": "guava", "version": "${pom.version}" - }, - { - "group": "org.apache.servicemix.bundles", - "name": "org.apache.servicemix.bundles.guava", - "version": "${pom.version}" } ] }, @@ -280,11 +270,6 @@ "group": "org.hudsonci.lib.guava", "name": "guava", "version": "${pom.version}" - }, - { - "group": "org.apache.servicemix.bundles", - "name": "org.apache.servicemix.bundles.guava", - "version": "${pom.version}" } ] }, @@ -371,11 +356,6 @@ "group": "org.hudsonci.lib.guava", "name": "guava", "version": "${pom.version}" - }, - { - "group": "org.apache.servicemix.bundles", - "name": "org.apache.servicemix.bundles.guava", - "version": "${pom.version}" } ] } From ae39076bb857060d266d5160be5ed15f2e1f03de Mon Sep 17 00:00:00 2001 From: Your Name Date: Sat, 11 Oct 2025 22:14:24 +0100 Subject: [PATCH 3/3] Add capability resolution for additional Guava modules in build.gradle.kts This update introduces resolution strategies for several new Guava-related capabilities, including listenablefuture, guava-base, guava-jdk5, sisu-guava, and others. These changes enhance the project's dependency management for Guava libraries, following the recent additions in module.json. RELNOTES=n/a --- integration-tests/gradle/build.gradle.kts | 46 +++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/integration-tests/gradle/build.gradle.kts b/integration-tests/gradle/build.gradle.kts index f0b294c74808..66f4970c20de 100644 --- a/integration-tests/gradle/build.gradle.kts +++ b/integration-tests/gradle/build.gradle.kts @@ -123,6 +123,52 @@ subprojects { } ?.apply { select(this) } } + withCapability("com.google.guava:listenablefuture") { + candidates + .find { + val idField = + it.javaClass.getDeclaredMethod("getId") + (idField.invoke(it) as ModuleComponentIdentifier).module == "guava" + } + ?.apply { select(this) } + } + // Resolution strategies for the 4 new capability declarations from PR 7990 + withCapability("com.google.guava:guava-base") { + candidates + .find { + val idField = + it.javaClass.getDeclaredMethod("getId") + (idField.invoke(it) as ModuleComponentIdentifier).module == "guava" + } + ?.apply { select(this) } + } + withCapability("com.google.guava:guava-jdk5") { + candidates + .find { + val idField = + it.javaClass.getDeclaredMethod("getId") + (idField.invoke(it) as ModuleComponentIdentifier).module == "guava" + } + ?.apply { select(this) } + } + withCapability("org.sonatype.sisu:sisu-guava") { + candidates + .find { + val idField = + it.javaClass.getDeclaredMethod("getId") + (idField.invoke(it) as ModuleComponentIdentifier).module == "guava" + } + ?.apply { select(this) } + } + withCapability("org.hudsonci.lib.guava:guava") { + candidates + .find { + val idField = + it.javaClass.getDeclaredMethod("getId") + (idField.invoke(it) as ModuleComponentIdentifier).module == "guava" + } + ?.apply { select(this) } + } } }