You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2026/04/02 09:36:12 UTC
(camel-quarkus) 01/01: Force alignment to Groovy 5.x
This is an automated email from the ASF dual-hosted git repository.
jamesnetherton pushed a commit to branch quarkus-main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit 46c21bdd9863dd6b29c72f82bfae100f5763ca1d
Author: James Netherton <ja...@gmail.com>
AuthorDate: Wed Mar 25 08:57:44 2026 +0000
Force alignment to Groovy 5.x
---
extensions/groovy-xml/deployment/pom.xml | 5 +
extensions/groovy-xml/runtime/pom.xml | 5 +
.../groovy/deployment/GroovyProcessor.java | 17 ++
extensions/groovy/runtime/pom.xml | 6 +
.../groovy/runtime/graal/GroovySubstitutions.java | 160 ++++++++++++++++++
pom.xml | 2 +-
poms/bom/src/main/generated/flattened-full-pom.xml | 180 ++++++++++-----------
.../src/main/generated/flattened-reduced-pom.xml | 4 +-
.../generated/flattened-reduced-verbose-pom.xml | 12 +-
9 files changed, 292 insertions(+), 99 deletions(-)
diff --git a/extensions/groovy-xml/deployment/pom.xml b/extensions/groovy-xml/deployment/pom.xml
index 51e7d696b9..69fdc26625 100644
--- a/extensions/groovy-xml/deployment/pom.xml
+++ b/extensions/groovy-xml/deployment/pom.xml
@@ -34,6 +34,11 @@
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core-deployment</artifactId>
</dependency>
+ <!-- TODO: Remove this - https://github.com/apache/camel-quarkus/issues/8468 -->
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-groovy-deployment</artifactId>
+ </dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-groovy-xml</artifactId>
diff --git a/extensions/groovy-xml/runtime/pom.xml b/extensions/groovy-xml/runtime/pom.xml
index 89360b5f4c..d62b882d8f 100644
--- a/extensions/groovy-xml/runtime/pom.xml
+++ b/extensions/groovy-xml/runtime/pom.xml
@@ -40,6 +40,11 @@
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core</artifactId>
</dependency>
+ <!-- TODO: Remove this - https://github.com/apache/camel-quarkus/issues/8468 -->
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-groovy</artifactId>
+ </dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-groovy-xml</artifactId>
diff --git a/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java b/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java
index 136a111d2e..00ce7af6ef 100644
--- a/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java
+++ b/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java
@@ -27,9 +27,11 @@ import io.quarkus.deployment.annotations.ExecutionTime;
import io.quarkus.deployment.annotations.Record;
import io.quarkus.deployment.builditem.FeatureBuildItem;
import io.quarkus.deployment.builditem.GeneratedClassBuildItem;
+import io.quarkus.deployment.builditem.RemovedResourceBuildItem;
import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem;
import io.quarkus.deployment.pkg.builditem.CurateOutcomeBuildItem;
import io.quarkus.deployment.pkg.steps.NativeOrNativeSourcesBuild;
+import io.quarkus.maven.dependency.ArtifactKey;
import io.quarkus.maven.dependency.ResolvedDependency;
import io.quarkus.paths.PathCollection;
import io.quarkus.runtime.RuntimeValue;
@@ -177,6 +179,21 @@ class GroovyProcessor {
return null;
}
+ // TODO: Remove this - https://github.com/apache/camel-quarkus/issues/8468
+ @BuildStep
+ RemovedResourceBuildItem removedResources() {
+ return new RemovedResourceBuildItem(
+ ArtifactKey.fromString("io.quarkiverse.groovy:quarkus-groovy"),
+ Set.of("io/quarkiverse/groovy/runtime/graal/SubstituteCacheableCallSite.class",
+ "io/quarkiverse/groovy/runtime/graal/SubstituteIndyInterface$FromCacheBiFunction.class",
+ "io/quarkiverse/groovy/runtime/graal/SubstituteIndyInterface$ToCacheBiFunction.class",
+ "io/quarkiverse/groovy/runtime/graal/SubstituteMethodHandleWrapper.class",
+ "io/quarkiverse/groovy/runtime/graal/SubstituteIndyInterface.class",
+ "io/quarkiverse/groovy/runtime/graal/SubstituteSourceUnit.class",
+ "io/quarkiverse/groovy/runtime/graal/SubstituteIndyFallbackSupplier.class",
+ "io/quarkiverse/groovy/runtime/graal/GroovySubstitutions.class"));
+ }
+
/**
* Convert a Groovy expression into a Script class to be able to compile it.
*
diff --git a/extensions/groovy/runtime/pom.xml b/extensions/groovy/runtime/pom.xml
index 310dde5587..74b6171c65 100644
--- a/extensions/groovy/runtime/pom.xml
+++ b/extensions/groovy/runtime/pom.xml
@@ -52,6 +52,12 @@
<groupId>io.quarkiverse.groovy</groupId>
<artifactId>quarkus-groovy</artifactId>
</dependency>
+ <!-- TODO: Remove this - https://github.com/apache/camel-quarkus/issues/8468 -->
+ <dependency>
+ <groupId>org.graalvm.sdk</groupId>
+ <artifactId>nativeimage</artifactId>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<build>
diff --git a/extensions/groovy/runtime/src/main/java/org/apache/camel/quarkus/component/groovy/runtime/graal/GroovySubstitutions.java b/extensions/groovy/runtime/src/main/java/org/apache/camel/quarkus/component/groovy/runtime/graal/GroovySubstitutions.java
new file mode 100644
index 0000000000..7dd86abcb9
--- /dev/null
+++ b/extensions/groovy/runtime/src/main/java/org/apache/camel/quarkus/component/groovy/runtime/graal/GroovySubstitutions.java
@@ -0,0 +1,160 @@
+package org.apache.camel.quarkus.component.groovy.runtime.graal;
+
+import java.lang.invoke.MethodHandle;
+import java.util.concurrent.BlockingQueue;
+
+import com.oracle.svm.core.annotate.Alias;
+import com.oracle.svm.core.annotate.RecomputeFieldValue;
+import com.oracle.svm.core.annotate.Substitute;
+import com.oracle.svm.core.annotate.TargetClass;
+import org.codehaus.groovy.control.ParserPluginFactory;
+import org.codehaus.groovy.control.SourceUnit;
+import org.codehaus.groovy.runtime.memoize.MemoizeCache;
+import org.codehaus.groovy.vmplugin.v8.CacheableCallSite;
+import org.codehaus.groovy.vmplugin.v8.IndyInterface;
+
+final class GroovySubstitutions {
+}
+
+@TargetClass(className = "org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper")
+final class SubstituteMethodHandleWrapper {
+
+ @Alias
+ public boolean isCanSetTarget() {
+ return false;
+ }
+
+ @Alias
+ public MethodHandle getCachedMethodHandle() {
+ return null;
+ }
+}
+
+@TargetClass(className = "org.codehaus.groovy.vmplugin.v8.IndyInterface$FallbackSupplier")
+final class SubstituteIndyFallbackSupplier {
+
+ @Alias
+ SubstituteIndyFallbackSupplier(CacheableCallSite callSite, Class<?> sender, String methodName, int callID,
+ Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments) {
+
+ }
+
+ @Alias
+ SubstituteMethodHandleWrapper get() {
+ return null;
+ }
+}
+
+@TargetClass(CacheableCallSite.class)
+final class SubstituteCacheableCallSite {
+ @Alias
+ @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias)
+ private static BlockingQueue<Runnable> CACHE_CLEANER_QUEUE = null;
+
+ @Alias
+ public SubstituteMethodHandleWrapper getAndPut(String className,
+ MemoizeCache.ValueProvider<? super String, ? extends SubstituteMethodHandleWrapper> valueProvider) {
+ return null;
+ }
+
+ @Alias
+ public SubstituteMethodHandleWrapper put(String name, SubstituteMethodHandleWrapper mhw) {
+ return null;
+ }
+
+ @Alias
+ private void removeAllStaleEntriesOfLruCache() {
+ }
+}
+
+@TargetClass(IndyInterface.class)
+final class SubstituteIndyInterface {
+
+ @Alias
+ private static SubstituteMethodHandleWrapper NULL_METHOD_HANDLE_WRAPPER;
+
+ @Substitute
+ protected static void invalidateSwitchPoints() {
+ throw new UnsupportedOperationException("invalidateSwitchPoints is not supported");
+ }
+
+ @Alias
+ private static boolean bypassCache(Boolean spreadCall, Object[] arguments) {
+ return false;
+ }
+
+ @Alias
+ private static SubstituteMethodHandleWrapper fallback(CacheableCallSite callSite, Class<?> sender, String methodName,
+ int callID, Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver,
+ Object[] arguments) {
+ return null;
+ }
+
+ @Substitute
+ public static Object selectMethod(CacheableCallSite callSite, Class<?> sender, String methodName, int callID,
+ Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments)
+ throws Throwable {
+ final SubstituteMethodHandleWrapper mhw = fallback(callSite, sender, methodName, callID, safeNavigation, thisCall,
+ spreadCall, dummyReceiver, arguments);
+
+ final MethodHandle defaultTarget = callSite.getDefaultTarget();
+ if (defaultTarget == callSite.getTarget()) {
+ // correct the stale methodhandle in the inline cache of callsite
+ // it is important but impacts the performance somehow when cache misses frequently
+ Object receiver = arguments[0];
+ String key = receiver != null ? receiver.getClass().getName() : "org.codehaus.groovy.runtime.NullObject";
+ SubstituteCacheableCallSite cs = (SubstituteCacheableCallSite) (Object) callSite;
+ cs.put(key, mhw);
+ }
+
+ return mhw.getCachedMethodHandle().invokeExact(arguments);
+ }
+
+ @Substitute
+ public static Object fromCache(CacheableCallSite callSite, Class<?> sender, String methodName, int callID,
+ Boolean safeNavigation, Boolean thisCall, Boolean spreadCall, Object dummyReceiver, Object[] arguments)
+ throws Throwable {
+ SubstituteIndyFallbackSupplier fallbackSupplier = new SubstituteIndyFallbackSupplier(callSite, sender, methodName,
+ callID, safeNavigation, thisCall, spreadCall, dummyReceiver, arguments);
+
+ SubstituteMethodHandleWrapper mhw;
+ if (bypassCache(spreadCall, arguments)) {
+ mhw = NULL_METHOD_HANDLE_WRAPPER;
+ } else {
+ Object receiver = arguments[0];
+ String receiverClassName = receiver != null ? receiver.getClass().getName()
+ : "org.codehaus.groovy.runtime.NullObject";
+ SubstituteCacheableCallSite cs = (SubstituteCacheableCallSite) (Object) callSite;
+ mhw = cs.getAndPut(receiverClassName, new MemoizeCache.ValueProvider<String, SubstituteMethodHandleWrapper>() {
+ @Override
+ public SubstituteMethodHandleWrapper provide(String key) {
+ SubstituteMethodHandleWrapper fbMhw = fallbackSupplier.get();
+ return fbMhw.isCanSetTarget() ? fbMhw : NULL_METHOD_HANDLE_WRAPPER;
+ }
+ });
+ }
+
+ if (NULL_METHOD_HANDLE_WRAPPER == mhw) {
+ mhw = fallbackSupplier.get();
+ }
+
+ return mhw.getCachedMethodHandle().invokeExact(arguments);
+ }
+}
+
+@TargetClass(SourceUnit.class)
+final class SubstituteSourceUnit {
+
+ @Substitute
+ public void convert() {
+ throw new UnsupportedOperationException("convert is not supported");
+ }
+}
+
+@TargetClass(ParserPluginFactory.class)
+final class SubstituteParserPluginFactory {
+ @Substitute
+ public static ParserPluginFactory antlr4() {
+ throw new UnsupportedOperationException("Antlr4 parsing is not supported at runtime in native mode");
+ }
+}
diff --git a/pom.xml b/pom.xml
index 7da21cc6e2..3716581194 100644
--- a/pom.xml
+++ b/pom.xml
@@ -112,7 +112,7 @@
<google-oauth-client.version>1.39.0</google-oauth-client.version><!-- @sync com.google.cloud:google-cloud-bigquery:${google-cloud-bigquery.version} dep:com.google.oauth-client:google-oauth-client -->
<graalvm.version>23.1.2</graalvm.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:org.graalvm.sdk:nativeimage -->
<graalvm-docs.version>jdk21</graalvm-docs.version><!-- @sync io.quarkus:quarkus-documentation:${quarkus.version} prop:graal-community.tag-for-documentation -->
- <groovy.version>4.0.29</groovy.version><!-- @sync io.quarkiverse.groovy:quarkus-groovy-parent:${quarkiverse-groovy.version} prop:groovy.version -->
+ <groovy.version>5.0.5</groovy.version><!-- TODO: Reinstate @sync tag https://github.com/apache/camel-quarkus/issues/8468 --><!-- io.quarkiverse.groovy:quarkus-groovy-parent:${quarkiverse-groovy.version} prop:groovy.version -->
<hapi.version>${hapi-version}</hapi.version>
<hapi-base.version>${hapi-base-version}</hapi-base.version>
<hapi-fhir.version>${hapi-fhir-version}</hapi-fhir.version>
diff --git a/poms/bom/src/main/generated/flattened-full-pom.xml b/poms/bom/src/main/generated/flattened-full-pom.xml
index 07e7a60504..f43a503eaa 100644
--- a/poms/bom/src/main/generated/flattened-full-pom.xml
+++ b/poms/bom/src/main/generated/flattened-full-pom.xml
@@ -8946,154 +8946,154 @@
<version>4.1.5</version><!-- io.quarkiverse.cxf:quarkus-cxf-bom:3.33.1 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-ant</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-ant</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-astbuilder</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-astbuilder</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-cli-commons</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-cli-commons</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-cli-picocli</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-cli-picocli</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-console</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-console</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-contracts</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-contracts</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-datetime</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-datetime</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-dateutil</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-dateutil</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-docgenerator</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-docgenerator</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-ginq</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-ginq</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-groovydoc</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-groovydoc</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-groovysh</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-groovysh</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-jmx</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-jmx</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-json</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-json</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-jsr223</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-jsr223</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-macro</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-macro</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-macro-library</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-macro-library</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-nio</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-nio</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-servlet</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-servlet</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-sql</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-sql</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-swing</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-swing</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-templates</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-templates</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-test</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-test</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-test-junit5</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-test-junit5</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-testng</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-testng</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-toml</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-toml</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-typecheckers</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-typecheckers</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-xml</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-xml</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-yaml</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-yaml</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId><!-- software.amazon.awssdk:bom:2.42.22 -->
diff --git a/poms/bom/src/main/generated/flattened-reduced-pom.xml b/poms/bom/src/main/generated/flattened-reduced-pom.xml
index 874a96e239..b3ece6337e 100644
--- a/poms/bom/src/main/generated/flattened-reduced-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-pom.xml
@@ -8816,12 +8816,12 @@
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy</artifactId>
- <version>4.0.29</version>
+ <version>5.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy-xml</artifactId>
- <version>4.0.29</version>
+ <version>5.0.5</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
diff --git a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
index 425db9d9f7..b735d3b526 100644
--- a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
@@ -8814,14 +8814,14 @@
<version>4.1.5</version><!-- io.quarkiverse.cxf:quarkus-cxf-bom:3.33.1 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
- <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <artifactId>groovy-xml</artifactId><!-- org.apache.groovy:groovy-bom:4.0.29 -->
- <version>4.0.29</version><!-- org.apache.groovy:groovy-bom:4.0.29 -->
+ <groupId>org.apache.groovy</groupId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <artifactId>groovy-xml</artifactId><!-- org.apache.groovy:groovy-bom:5.0.5 -->
+ <version>5.0.5</version><!-- org.apache.groovy:groovy-bom:5.0.5 -->
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId><!-- software.amazon.awssdk:bom:2.42.22 -->