This is an automated email from the ASF dual-hosted git repository. jamesnetherton pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit c060ee300cd9b7a2dca3ac77830a63446cb7ff34 Author: Freeman Fang <[email protected]> AuthorDate: Tue Dec 21 15:58:04 2021 -0500 Upgrade Quarkus to 2.7.0.CR1 --- docs/antora.yml | 2 +- .../quarkus/CamelQuarkusBeanPostProcessor.java | 36 ++++++++++++++++++++++ .../camel/quarkus/core/FastCamelContext.java | 4 +-- extensions-jvm/corda/runtime/pom.xml | 4 +++ .../support/bouncycastle/BouncyCastleRecorder.java | 7 +++++ .../camel/quarkus/component/amqp/it/AmqpTest.java | 2 +- .../quarkus/component/jms/qpid/it/JmsQpidTest.java | 2 +- .../component/sjms/qpid/it/SjmsQpidTest.java | 2 +- .../component/sjms2/qpid/it/Sjms2QpidTest.java | 2 +- pom.xml | 16 +++++----- poms/bom/pom.xml | 4 +++ 11 files changed, 66 insertions(+), 15 deletions(-) diff --git a/docs/antora.yml b/docs/antora.yml index 5d11b0b..168241c 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -31,7 +31,7 @@ asciidoc: target-maven-version: 3.8.4 # replace ${target-maven-version} camel-version: 3.14.0 # replace ${camel.version} camel-docs-version: 3.14.x # replace ${camel.docs.components.version} - quarkus-version: 2.6.0.Final # replace ${quarkus.version} + quarkus-version: 2.7.0.CR1 # replace ${quarkus.version} # attributes used in xrefs to other Antora components cq-camel-components: 3.14.x@components # replace ${camel.docs.components.xref} quarkus-examples-version: latest diff --git a/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/CamelQuarkusBeanPostProcessor.java b/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/CamelQuarkusBeanPostProcessor.java new file mode 100644 index 0000000..2da61bd --- /dev/null +++ b/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/CamelQuarkusBeanPostProcessor.java @@ -0,0 +1,36 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.quarkus; + +import io.quarkus.arc.runtime.ClientProxyUnwrapper; +import org.apache.camel.CamelContext; +import org.apache.camel.impl.engine.DefaultCamelBeanPostProcessor; + +public class CamelQuarkusBeanPostProcessor extends DefaultCamelBeanPostProcessor { + + private final ClientProxyUnwrapper proxyUnwrapper = new ClientProxyUnwrapper(); + + public CamelQuarkusBeanPostProcessor(CamelContext camelContext) { + super(camelContext); + } + + @Override + public Object postProcessBeforeInitialization(Object bean, String beanName) throws Exception { + // If the bean is a CDI proxy, unwrap it before processing + return super.postProcessBeforeInitialization(proxyUnwrapper.apply(bean), beanName); + } +} diff --git a/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java b/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java index 10b59a9..2a40f04 100644 --- a/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java +++ b/extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java @@ -25,12 +25,12 @@ import org.apache.camel.Component; import org.apache.camel.TypeConverter; import org.apache.camel.component.microprofile.config.CamelMicroProfilePropertiesSource; import org.apache.camel.impl.DefaultCamelContext; -import org.apache.camel.impl.engine.DefaultCamelBeanPostProcessor; import org.apache.camel.impl.engine.DefaultComponentResolver; import org.apache.camel.impl.engine.DefaultDataFormatResolver; import org.apache.camel.impl.engine.DefaultLanguageResolver; import org.apache.camel.impl.engine.DefaultShutdownStrategy; import org.apache.camel.model.ModelCamelContext; +import org.apache.camel.quarkus.CamelQuarkusBeanPostProcessor; import org.apache.camel.spi.CamelBeanPostProcessor; import org.apache.camel.spi.ClassResolver; import org.apache.camel.spi.ComponentNameResolver; @@ -123,7 +123,7 @@ public class FastCamelContext extends DefaultCamelContext implements CatalogCame protected CamelBeanPostProcessor createBeanPostProcessor() { // TODO: Investigate optimizing this // https://github.com/apache/camel-quarkus/issues/2171 - return new DefaultCamelBeanPostProcessor(this); + return new CamelQuarkusBeanPostProcessor(this); } @Override diff --git a/extensions-jvm/corda/runtime/pom.xml b/extensions-jvm/corda/runtime/pom.xml index aa8b110..beed32e 100644 --- a/extensions-jvm/corda/runtime/pom.xml +++ b/extensions-jvm/corda/runtime/pom.xml @@ -67,6 +67,10 @@ <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </exclusion> + <exclusion> + <groupId>org.apache.geronimo.specs</groupId> + <artifactId>geronimo-jms_2.0_spec</artifactId> + </exclusion> </exclusions> </dependency> </dependencies> diff --git a/extensions-support/bouncycastle/runtime/src/main/java/org/apache/camel/quarkus/support/bouncycastle/BouncyCastleRecorder.java b/extensions-support/bouncycastle/runtime/src/main/java/org/apache/camel/quarkus/support/bouncycastle/BouncyCastleRecorder.java index acb5d51..32fea4d 100644 --- a/extensions-support/bouncycastle/runtime/src/main/java/org/apache/camel/quarkus/support/bouncycastle/BouncyCastleRecorder.java +++ b/extensions-support/bouncycastle/runtime/src/main/java/org/apache/camel/quarkus/support/bouncycastle/BouncyCastleRecorder.java @@ -25,6 +25,7 @@ import javax.crypto.Cipher; import io.quarkus.runtime.ShutdownContext; import io.quarkus.runtime.annotations.Recorder; import io.quarkus.security.runtime.SecurityProviderUtils; +import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.jboss.logging.Logger; @Recorder @@ -34,6 +35,12 @@ public class BouncyCastleRecorder { public void registerBouncyCastleProvider(List<String> cipherTransformations, ShutdownContext shutdownContext) { Provider provider = Security.getProvider(SecurityProviderUtils.BOUNCYCASTLE_PROVIDER_NAME); + if (provider == null) { + // TODO: Fix BuildStep execution order so that this is not required + // https://github.com/apache/camel-quarkus/issues/3472 + provider = new BouncyCastleProvider(); + Security.addProvider(provider); + } // Make it explicit to the static analysis that below security services should be registered as they are reachable at runtime for (String cipherTransformation : cipherTransformations) { diff --git a/integration-tests/amqp/src/test/java/org/apache/camel/quarkus/component/amqp/it/AmqpTest.java b/integration-tests/amqp/src/test/java/org/apache/camel/quarkus/component/amqp/it/AmqpTest.java index 891b8c3..b79155d 100644 --- a/integration-tests/amqp/src/test/java/org/apache/camel/quarkus/component/amqp/it/AmqpTest.java +++ b/integration-tests/amqp/src/test/java/org/apache/camel/quarkus/component/amqp/it/AmqpTest.java @@ -37,6 +37,6 @@ class AmqpTest extends AbstractJmsMessagingTest { RestAssured.get("/amqp/connection/factory") .then() .statusCode(200) - .body(startsWith("org.amqphub.quarkus.qpid.jms")); + .body(startsWith("javax.jms.QpidJms")); } } diff --git a/integration-tests/jms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/jms/qpid/it/JmsQpidTest.java b/integration-tests/jms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/jms/qpid/it/JmsQpidTest.java index bcdd445..3217a3b 100644 --- a/integration-tests/jms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/jms/qpid/it/JmsQpidTest.java +++ b/integration-tests/jms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/jms/qpid/it/JmsQpidTest.java @@ -37,7 +37,7 @@ class JmsQpidTest extends AbstractJmsMessagingTest { RestAssured.get("/messaging/jms/qpid/connection/factory") .then() .statusCode(200) - .body(startsWith("org.amqphub.quarkus.qpid")); + .body(startsWith("javax.jms.QpidJms")); } @Test diff --git a/integration-tests/sjms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms/qpid/it/SjmsQpidTest.java b/integration-tests/sjms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms/qpid/it/SjmsQpidTest.java index 441f7f1..c63feb4 100644 --- a/integration-tests/sjms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms/qpid/it/SjmsQpidTest.java +++ b/integration-tests/sjms-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms/qpid/it/SjmsQpidTest.java @@ -36,6 +36,6 @@ class SjmsQpidTest extends AbstractSjmsMessagingTest { RestAssured.get("/messaging/sjms/qpid/connection/factory") .then() .statusCode(200) - .body(startsWith("org.amqphub.quarkus.qpid")); + .body(startsWith("javax.jms.QpidJms")); } } diff --git a/integration-tests/sjms2-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms2/qpid/it/Sjms2QpidTest.java b/integration-tests/sjms2-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms2/qpid/it/Sjms2QpidTest.java index 85d23f3..fa6f7ee 100644 --- a/integration-tests/sjms2-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms2/qpid/it/Sjms2QpidTest.java +++ b/integration-tests/sjms2-qpid-amqp-client/src/test/java/org/apache/camel/quarkus/component/sjms2/qpid/it/Sjms2QpidTest.java @@ -36,6 +36,6 @@ class Sjms2QpidTest extends AbstractSjmsMessagingTest { RestAssured.get("/messaging/sjms2/qpid/connection/factory") .then() .statusCode(200) - .body(startsWith("org.amqphub.quarkus.qpid")); + .body(startsWith("javax.jms.QpidJms")); } } diff --git a/pom.xml b/pom.xml index bc06312..30fa249 100644 --- a/pom.xml +++ b/pom.xml @@ -48,14 +48,14 @@ <cassandra-quarkus.version>1.1.1</cassandra-quarkus.version><!-- https://repo1.maven.org/maven2/com/datastax/oss/quarkus/cassandra-quarkus-bom/ --> <debezium.version>1.6.1.Final</debezium.version><!-- May go back to Camel's ${debezium-version} when they are in sync https://repo1.maven.org/maven2/io/debezium/debezium-bom/ --> <optaplanner.version>8.14.0.Final</optaplanner.version><!-- May go back to Camel's ${optaplanner-version} when they are in sync https://repo1.maven.org/maven2/org/optaplanner/optaplanner-quarkus/ --> - <quarkiverse-amazonservices.version>1.0.2</quarkiverse-amazonservices.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/amazonservices/quarkus-amazon-services-parent/ --> - <quarkiverse-artemis.version>1.0.2</quarkiverse-artemis.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/artemis/quarkus-artemis-parent/ --> + <quarkiverse-amazonservices.version>1.0.3</quarkiverse-amazonservices.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/amazonservices/quarkus-amazon-services-parent/ --> + <quarkiverse-artemis.version>1.0.3</quarkiverse-artemis.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/artemis/quarkus-artemis-parent/ --> <quarkiverse-freemarker.version>0.3.0</quarkiverse-freemarker.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/freemarker/quarkus-freemarker-parent/ --> <quarkiverse-jgit.version>1.1.0</quarkiverse-jgit.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/jgit/quarkus-jgit-parent/ --> <quarkiverse-jsch.version>1.0.0</quarkiverse-jsch.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/jsch/quarkus-jsch-parent/ --> <quarkiverse-minio.version>2.3.0</quarkiverse-minio.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/minio/quarkus-minio-parent/ --> - <quarkiverse-tika.version>1.0.2</quarkiverse-tika.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/tika/quarkus-tika-parent/ --> - <quarkus.version>2.6.0.Final</quarkus.version><!-- https://repo1.maven.org/maven2/io/quarkus/quarkus-bom/ --> + <quarkiverse-tika.version>1.0.3</quarkiverse-tika.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/tika/quarkus-tika-parent/ --> + <quarkus.version>2.7.0.CR1</quarkus.version><!-- https://repo1.maven.org/maven2/io/quarkus/quarkus-bom/ --> <quarkus-hazelcast-client.version>2.0.0</quarkus-hazelcast-client.version><!-- https://repo1.maven.org/maven2/com/hazelcast/quarkus-hazelcast-client-bom/ --> <quarkus-qpid-jms.version>0.30.0</quarkus-qpid-jms.version><!-- https://repo1.maven.org/maven2/org/amqphub/quarkus/quarkus-qpid-jms-bom/ --> @@ -65,10 +65,10 @@ <animal-sniffer.version>1.18</animal-sniffer.version> <antlr3.version>3.5.2</antlr3.version><!-- Spark, Stringtemplate and probably others --> <avro.version>1.11.0</avro.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:org.apache.avro:avro --> - <awssdk.version>2.17.100</awssdk.version><!-- @sync io.quarkiverse.amazonservices:quarkus-amazon-services-parent:${quarkiverse-amazonservices.version} prop:awssdk.version --> + <awssdk.version>2.17.103</awssdk.version><!-- @sync io.quarkiverse.amazonservices:quarkus-amazon-services-parent:${quarkiverse-amazonservices.version} prop:awssdk.version --> <aws-java-sdk.version>1.11.714</aws-java-sdk.version> <azure-sdk-bom.version>1.0.5</azure-sdk-bom.version><!-- Keep in sync with camel-azure component versions --> - <bouncycastle.version>1.69</bouncycastle.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:org.bouncycastle:bcprov-jdk15on --> + <bouncycastle.version>1.70</bouncycastle.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:org.bouncycastle:bcprov-jdk15on --> <commons-beanutils.version>${commons-beanutils-version}</commons-beanutils.version> <commons-cli.version>1.4</commons-cli.version><!-- keep in sync with Quarkus, via quarkus-bootstrap-core --> <commons-collections.version>3.2.2</commons-collections.version><!-- used by hbase, should be pretty stable as commons-collections are not developed actively anymore --> @@ -87,7 +87,7 @@ <google-auth-library-credentials.version>0.22.2</google-auth-library-credentials.version><!-- @sync io.grpc:grpc-auth:${grpc.version} dep:com.google.auth:google-auth-library-credentials --> <guava.version>29.0-jre</guava.version> <graalvm.version>21.3.0</graalvm.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:org.graalvm.nativeimage:svm --> - <grpc.version>1.42.1</grpc.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:io.grpc:grpc-core --> + <grpc.version>1.43.2</grpc.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:io.grpc:grpc-core --> <gson.version>2.8.6</gson.version><!-- @sync com.ibm.jsonata4java:JSONata4Java:${jsonata4java-version} dep:com.google.code.gson:gson --> <guice-servlet.version>4.0</guice-servlet.version><!-- Spark --> <hadoop3.version>${hadoop3-version}</hadoop3.version><!-- Spark --> @@ -120,7 +120,7 @@ <mvel2.version>${mvel-version}</mvel2.version> <okhttp.version>${squareup-okhttp-version}</okhttp.version> <okio.version>${squareup-okio-version}</okio.version> - <protobuf.version>3.19.1</protobuf.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:com.google.protobuf:protobuf-java --> + <protobuf.version>3.19.2</protobuf.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:com.google.protobuf:protobuf-java --> <retrofit.version>2.5.0</retrofit.version> <saaj.impl.version>1.5.3</saaj.impl.version> <scala-2.12.version>2.12.15</scala-2.12.version><!-- Spark --> diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml index 930543b..5bd8d9b 100644 --- a/poms/bom/pom.xml +++ b/poms/bom/pom.xml @@ -662,6 +662,10 @@ <artifactId>jsr305</artifactId> </exclusion> <exclusion> + <groupId>org.apache.activemq</groupId> + <artifactId>*</artifactId> + </exclusion> + <exclusion> <groupId>org.jboss.logmanager</groupId> <artifactId>jboss-logmanager</artifactId> </exclusion>
