This is an automated email from the ASF dual-hosted git repository.

ppalaga pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git


The following commit(s) were added to refs/heads/main by this push:
     new a92a48feed Zendesk test cannot be compiled to native with Camel 4 and 
Quarkus 3 #4514
a92a48feed is described below

commit a92a48feed54f53c883c45caaf1c4314c430152d
Author: JiriOndrusek <ondrusek.j...@gmail.com>
AuthorDate: Mon Feb 20 16:02:33 2023 +0100

    Zendesk test cannot be compiled to native with Camel 4 and Quarkus 3 #4514
---
 .../ahc/deployment/SupportAhcProcessor.java        |  6 ++++
 extensions-support/ahc/runtime/pom.xml             | 17 +++++++++
 .../ahc/runtime/graal/AhcSubstitutions.java        | 41 ++++++++++++++++++++++
 pom.xml                                            |  3 +-
 poms/bom/pom.xml                                   | 13 +++++++
 poms/bom/src/main/generated/flattened-full-pom.xml | 15 +++++++-
 .../src/main/generated/flattened-reduced-pom.xml   | 15 +++++++-
 .../generated/flattened-reduced-verbose-pom.xml    | 15 +++++++-
 8 files changed, 121 insertions(+), 4 deletions(-)

diff --git 
a/extensions-support/ahc/deployment/src/main/java/org/apache/camel/quarkus/component/support/ahc/deployment/SupportAhcProcessor.java
 
b/extensions-support/ahc/deployment/src/main/java/org/apache/camel/quarkus/component/support/ahc/deployment/SupportAhcProcessor.java
index f9b9121237..d415b7612c 100644
--- 
a/extensions-support/ahc/deployment/src/main/java/org/apache/camel/quarkus/component/support/ahc/deployment/SupportAhcProcessor.java
+++ 
b/extensions-support/ahc/deployment/src/main/java/org/apache/camel/quarkus/component/support/ahc/deployment/SupportAhcProcessor.java
@@ -18,6 +18,7 @@ package 
org.apache.camel.quarkus.component.support.ahc.deployment;
 
 import java.util.stream.Stream;
 
+import io.netty.incubator.channel.uring.IOUringEventLoopGroup;
 import io.quarkus.deployment.annotations.BuildProducer;
 import io.quarkus.deployment.annotations.BuildStep;
 import io.quarkus.deployment.builditem.ExtensionSslNativeSupportBuildItem;
@@ -40,6 +41,11 @@ class SupportAhcProcessor {
         return new ExtensionSslNativeSupportBuildItem(FEATURE);
     }
 
+    @BuildStep
+    RuntimeInitializedClassBuildItem runtimeInitializedClasses() {
+        return new 
RuntimeInitializedClassBuildItem(IOUringEventLoopGroup.class.getName());
+    }
+
     @BuildStep
     void 
runtimeInitializedClasses(BuildProducer<RuntimeInitializedClassBuildItem> 
runtimeInitializedClass) {
         Stream.of("org.asynchttpclient.netty.channel.ChannelManager",
diff --git a/extensions-support/ahc/runtime/pom.xml 
b/extensions-support/ahc/runtime/pom.xml
index 017ecf206a..d314493e92 100644
--- a/extensions-support/ahc/runtime/pom.xml
+++ b/extensions-support/ahc/runtime/pom.xml
@@ -47,6 +47,23 @@
             <groupId>org.asynchttpclient</groupId>
             <artifactId>async-http-client</artifactId>
         </dependency>
+        <dependency>
+            <artifactId>netty-transport-classes-epoll</artifactId>
+            <groupId>io.netty</groupId>
+        </dependency>
+        <dependency>
+            <artifactId>netty-transport-classes-kqueue</artifactId>
+            <groupId>io.netty</groupId>
+        </dependency>
+        <dependency>
+            <groupId>io.netty.incubator</groupId>
+            <artifactId>netty-incubator-transport-classes-io_uring</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.graalvm.sdk</groupId>
+            <artifactId>graal-sdk</artifactId>
+            <scope>provided</scope>
+        </dependency>
     </dependencies>
 
     <build>
diff --git 
a/extensions-support/ahc/runtime/src/main/java/org/apache/camel/quarkus/component/support/ahc/runtime/graal/AhcSubstitutions.java
 
b/extensions-support/ahc/runtime/src/main/java/org/apache/camel/quarkus/component/support/ahc/runtime/graal/AhcSubstitutions.java
new file mode 100644
index 0000000000..9ccb42756d
--- /dev/null
+++ 
b/extensions-support/ahc/runtime/src/main/java/org/apache/camel/quarkus/component/support/ahc/runtime/graal/AhcSubstitutions.java
@@ -0,0 +1,41 @@
+/*
+ * 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.component.support.ahc.runtime.graal;
+
+import java.util.concurrent.ThreadFactory;
+
+import com.oracle.svm.core.annotate.Substitute;
+import com.oracle.svm.core.annotate.TargetClass;
+import io.netty.incubator.channel.uring.IOUringEventLoopGroup;
+import io.netty.incubator.channel.uring.IOUringSocketChannel;
+
+final class AhcSubstitutions {
+}
+
+@TargetClass(className = 
"org.asynchttpclient.netty.channel.IoUringIncubatorTransportFactory")
+final class IoUringIncubatorTransportFactorySubstitutions {
+
+    @Substitute
+    public IOUringSocketChannel newChannel() {
+        throw new RuntimeException("not supported!");
+    }
+
+    @Substitute
+    public IOUringEventLoopGroup newEventLoopGroup(int ioThreadsCount, 
ThreadFactory threadFactory) {
+        throw new RuntimeException("not supported!");
+    }
+}
diff --git a/pom.xml b/pom.xml
index 19d20c00ab..d6b38c23b4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -65,7 +65,7 @@
 
         <!-- Compile dependency versions (keep sorted alphabetically) -->
         <!-- Items annotated with @sync can be updated by running mvn 
cq:sync-versions -N -e -->
-        <ahc.version>2.12.3</ahc.version><!-- @sync 
com.cloudbees.thirdparty:zendesk-java-client:${zendesk-client-version} 
dep:org.asynchttpclient:async-http-client -->
+        <ahc.version>3.0.0.Beta1</ahc.version><!-- todo update client once 
available, see https://github.com/apache/camel-quarkus/issues/4591 @sync 
com.cloudbees.thirdparty:zendesk-java-client:${zendesk-client-version} 
dep:org.asynchttpclient:async-http-client -->
         <angus-mail.version>${angus-mail-version}</angus-mail.version>
         <animal-sniffer.version>1.18</animal-sniffer.version>
         <antlr3.version>3.5.2</antlr3.version><!-- Spark, Stringtemplate and 
probably others -->
@@ -108,6 +108,7 @@
         <htrace.version>4.2.0-incubating</htrace.version><!-- Mess in hbase 
transitive deps -->
         <httpclient5.version>5.2.1</httpclient5.version><!-- Saxon and 
Wiremock -->
         <influxdb.version>${influx-java-driver-version}</influxdb.version>
+        <io-netty-iouring.version>0.0.16.Final</io-netty-iouring.version><!-- 
@sync org.asynchttpclient:async-http-client-project:${ahc.version} 
prop:netty.iouring -->
         <jackson.version>2.14.2</jackson.version><!-- @sync 
io.quarkus:quarkus-bom:${quarkus.version} 
dep:com.fasterxml.jackson.core:jackson-core -->
         <jackson1.version>1.9.13</jackson1.version><!-- Mess in the transitive 
dependencies of hbase-testing-util -->
         <jackson-asl.version>${jackson1.version}</jackson-asl.version><!-- Can 
be different from jackson1.version on some occasions -->
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 74f62df8ad..5db76ce5ca 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -1162,10 +1162,18 @@
                 <artifactId>camel-google-storage</artifactId>
                 <version>${camel.version}</version>
                 <exclusions>
+                    <exclusion>
+                        <groupId>com.google.android</groupId>
+                        <artifactId>annotations</artifactId>
+                    </exclusion>
                     <exclusion>
                         <groupId>org.checkerframework</groupId>
                         <artifactId>checker-qual</artifactId>
                     </exclusion>
+                    <exclusion>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>animal-sniffer-annotations</artifactId>
+                    </exclusion>
                 </exclusions>
             </dependency>
             <dependency>
@@ -6295,6 +6303,11 @@
                     </exclusion>
                 </exclusions>
             </dependency>
+            <dependency>
+                <groupId>io.netty.incubator</groupId>
+                
<artifactId>netty-incubator-transport-classes-io_uring</artifactId>
+                <version>${io-netty-iouring.version}</version>
+            </dependency>
             <!--<dependency>
                 <groupId>io.smallrye.reactive</groupId>
                 <artifactId>smallrye-reactive-messaging-camel</artifactId>
diff --git a/poms/bom/src/main/generated/flattened-full-pom.xml 
b/poms/bom/src/main/generated/flattened-full-pom.xml
index 61b4ef9a86..1368d1ddf4 100644
--- a/poms/bom/src/main/generated/flattened-full-pom.xml
+++ b/poms/bom/src/main/generated/flattened-full-pom.xml
@@ -1101,10 +1101,18 @@
         <artifactId>camel-google-storage</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>4.0.0-M1</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <exclusions>
+          <exclusion>
+            <groupId>com.google.android</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+            <artifactId>annotations</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+          </exclusion>
           <exclusion>
             <groupId>org.checkerframework</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
             <artifactId>checker-qual</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
           </exclusion>
+          <exclusion>
+            <groupId>org.codehaus.mojo</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+            <artifactId>animal-sniffer-annotations</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+          </exclusion>
         </exclusions>
       </dependency>
       <dependency>
@@ -6166,6 +6174,11 @@
           </exclusion>
         </exclusions>
       </dependency>
+      <dependency>
+        <groupId>io.netty.incubator</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        
<artifactId>netty-incubator-transport-classes-io_uring</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>0.0.16.Final</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>jakarta.jms</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>jakarta.jms-api</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -6340,7 +6353,7 @@
       <dependency>
         <groupId>org.asynchttpclient</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>async-http-client</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>2.12.3</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.0.0.Beta1</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <exclusions>
           <exclusion>
             <groupId>com.sun.activation</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
diff --git a/poms/bom/src/main/generated/flattened-reduced-pom.xml 
b/poms/bom/src/main/generated/flattened-reduced-pom.xml
index fcc9141755..df8b72caf4 100644
--- a/poms/bom/src/main/generated/flattened-reduced-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-pom.xml
@@ -1101,10 +1101,18 @@
         <artifactId>camel-google-storage</artifactId>
         <version>4.0.0-M1</version>
         <exclusions>
+          <exclusion>
+            <groupId>com.google.android</groupId>
+            <artifactId>annotations</artifactId>
+          </exclusion>
           <exclusion>
             <groupId>org.checkerframework</groupId>
             <artifactId>checker-qual</artifactId>
           </exclusion>
+          <exclusion>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>animal-sniffer-annotations</artifactId>
+          </exclusion>
         </exclusions>
       </dependency>
       <dependency>
@@ -6145,6 +6153,11 @@
           </exclusion>
         </exclusions>
       </dependency>
+      <dependency>
+        <groupId>io.netty.incubator</groupId>
+        <artifactId>netty-incubator-transport-classes-io_uring</artifactId>
+        <version>0.0.16.Final</version>
+      </dependency>
       <dependency>
         <groupId>jakarta.jms</groupId>
         <artifactId>jakarta.jms-api</artifactId>
@@ -6293,7 +6306,7 @@
       <dependency>
         <groupId>org.asynchttpclient</groupId>
         <artifactId>async-http-client</artifactId>
-        <version>2.12.3</version>
+        <version>3.0.0.Beta1</version>
         <exclusions>
           <exclusion>
             <groupId>com.sun.activation</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 de126916ea..48f44a22da 100644
--- a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
@@ -1101,10 +1101,18 @@
         <artifactId>camel-google-storage</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>4.0.0-M1</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <exclusions>
+          <exclusion>
+            <groupId>com.google.android</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+            <artifactId>annotations</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+          </exclusion>
           <exclusion>
             <groupId>org.checkerframework</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
             <artifactId>checker-qual</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
           </exclusion>
+          <exclusion>
+            <groupId>org.codehaus.mojo</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+            <artifactId>animal-sniffer-annotations</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+          </exclusion>
         </exclusions>
       </dependency>
       <dependency>
@@ -6145,6 +6153,11 @@
           </exclusion>
         </exclusions>
       </dependency>
+      <dependency>
+        <groupId>io.netty.incubator</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        
<artifactId>netty-incubator-transport-classes-io_uring</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>0.0.16.Final</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>jakarta.jms</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>jakarta.jms-api</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -6293,7 +6306,7 @@
       <dependency>
         <groupId>org.asynchttpclient</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>async-http-client</artifactId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>2.12.3</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.0.0.Beta1</version><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <exclusions>
           <exclusion>
             <groupId>com.sun.activation</groupId><!-- 
org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->

Reply via email to