Closed
Conversation
Force javax.xml.bind:jaxb-api to 2.3.1 in dependencyManagement to avoid transitive resolution of beta 2.3.0-b161121.1438 from defunct http://maven.java.net repositories blocked by Maven 3.8.1+.
…ap<String, String> Camel 4.18.0 changed EndpointUriFactory.multiValuePrefixes() from Set<String> to Map<String, String>. Updated the generated DirectVm and Vm endpoint URI factories accordingly.
The camel-spring-ai component was split into camel-spring-ai-chat, camel-spring-ai-embeddings, camel-spring-ai-tools, and camel-spring-ai-vector-store in Camel 4.18.0. The monolithic artifact no longer exists.
Replace auto-detect-version with explicit version properties for nimbusds, ASM, opentelemetry-semconv, reactor-netty-incubator-quic, and netty-incubator-codec-classes-quic. Add missing feature dependencies for camel-aws-common, camel-micrometer-observability, camel-mina-sftp, camel-opentelemetry-metrics, camel-test-junit6, camel-test-main-junit6, and camel-test-spring-junit6. Update jackson2 to 2.20.1 with separate annotations version, and bump generated component JSON versions.
- Add netty-nio-client to awssdk feature for AWS SDK Netty HTTP transport - Add camel-aws-common dependency to all AWS/AWS2 features - Add awssdk feature to AWS features missing it - Wrap avro-ipc-netty and reactor-netty with relaxed netty version imports - Wrap reactor-core with optional jdk.internal and micrometer imports - Add cxf-rt-features-logging to camel-cxf feature - Add missing jackson, http-client, azure, guava feature dependencies - Add wrapped bundles for docling, github-api, graphql-java, groovy, IBM COS/Watson/WatsonX, iggy, langchain4j, Milo OPC UA, SSHD, stripe, openai, keycloak - Fix protobuf4-version to 4.31.1 for Google Cloud features - Fix snakeyaml-engine version for kubernetes - Fix opentelemetry-semconv groupId - Add micrometer-observation bundle for micrometer-observability - Add spring-data-redis for camel-redis - Add resilience4j and micrometer deps for resilience4j-micrometer - Wrap various bundles with resolution:=optional imports
- Add missing AWS SDK service bundles (polly, rekognition, s3vectors, textract, transcribe) - Wrap reactor-core in azure base feature with selective optional imports - Add WSS4J bundles for CXF WS-Security resolution - Add missing feature dependencies (jackson, guava, http-client, bouncycastle, caffeine) across multiple features - Add missing bundles: elasticsearch-rest5-client, checker-qual, sshd-sftp, resilience4j-micrometer, micrometer-tracing, jolokia-core, keycloak-common/core/authz-client, spring-vault-core, proto-google-common-protos, google-genai, opentelemetry-sdk sub-modules, openai-java-core/client-okhttp, spring-test - Fix camel-stitch netty import range in component pom.xml - Fix version mismatches: protobuf4 bump to 4.33.4, snakeyaml-engine pinned to 2.10 for kubernetes, protobuf 3.x for google-functions and google-vertexai - Wrap third-party bundles with optional imports where needed (infinispan, neo4j, ical4j, dapr-sdk, jackson-databind-nullable)
Replace docling-java with docling-core, docling-serve-api, and docling-serve-client to provide the required ai.docling.core and ai.docling.serve.api packages.
- Fix opentelemetry-semconv groupId (io.opentelemetry.semconv -> io.opentelemetry) - Fix Eclipse Milo artifact IDs and add missing milo bundles (milo-stack-core, milo-transport, milo-dtd-manager, milo-dtd-core, jspecify) - Fix ibm-watsonx-ai, iggy, and infinispan artifact coordinates
… infinispan - Fix elasticsearch: use io.opentelemetry.semconv groupId for semconv 1.37.0 - Fix iggy: add missing commons-pool2 dependency bundle - Fix infinispan-common: remove infinispan-query-dsl (dropped in Infinispan 16)
Testcontainers 2.0.3 renamed all modules from {name} to
testcontainers-{name}. Update all test POMs accordingly.
…n-annotations jackson-annotations 2.20.1 doesn't exist; use the correct property jackson2-annotations-version (2.20) instead of jackson2-version.
- Add explicit Event Hub entity config (eh1) so the emulator creates it - Use log-based wait strategy instead of port-based to ensure emulator is fully ready before tests run - Use acceptLicense() instead of env var - Increase mock assertion wait time to 60s to allow for slow startup
The 2.0.1 emulator image consistently crashes with exit code 139 (SIGSEGV) on GitHub Actions runners.
…age-blob features Mark non-netty imports as optional (resolution:=optional) for wrapped reactor-netty-core and reactor-netty-http bundles to prevent unresolvable optional dependencies (micrometer, brave, etc.) from blocking bundle resolution.
…rage-blob features Remove dependency='true' from reactor-netty-core and reactor-netty-http bundle entries so Karaf always installs them. With dependency='true', the feature resolver was skipping these bundles, causing NoClassDefFoundError: reactor/netty/http/client/HttpClient at runtime.
…storage-blob features The previous Import-Package pattern (io.netty*;version="[4.1,5)") made all io.netty sub-packages mandatory, causing OSGi resolution failures for platform-specific packages like kqueue, epoll, io_uring, and haproxy codec. Using *;resolution:=optional lets the resolver wire to the netty bundles already declared in the feature without failing on missing optional transports.
The previous change (7def8e0) made all imports optional (*;resolution:=optional) which prevented azure-core-http-netty from resolving reactor.netty.http.client.HttpClient at runtime. This fix makes only platform-specific packages optional (kqueue, uring, haproxy, http3, quic) while keeping io.netty and reactor imports mandatory so the OSGi resolver properly wires the bundles. Affected features: camel-azure-eventhubs, camel-azure-storage-blob, camel-stitch.
The wrap protocol with overwrite=merge and BND wildcard Import-Package directives was preventing reactor-netty-http from resolving properly, causing NoClassDefFoundError for reactor.netty.http.client.HttpClient in the azure-eventhubs integration test. Use direct bundle references instead, consistent with the camel-azure-storage-queue feature.
…ility reactor-netty 1.3.3 requires Netty 4.2+. In Netty 4.2, netty-codec was split into netty-codec-base and netty-codec-compression, and the incubator modules (quic, io_uring) graduated to the main Netty project.
reactor-netty-core 1.3.3 mandatorily imports org.jspecify.annotations, so the jspecify bundle must be present for runtime OSGi resolution.
reactor-netty-http 1.3.3 has mandatory Import-Package entries for io.netty.handler.codec.http3 and io.netty.handler.codec.quic, but these packages are not available in the azure Karaf features. This prevents the bundle from resolving, causing azure-core-http-netty to fail with ClassNotFoundException on reactor.netty.http.client.HttpClient.
…features Instead of wrapping reactor-netty-http to make http3 and quic imports optional, use the unwrapped bundle and provide the actual netty-codec-http3 and netty-codec-classes-quic dependencies, matching the approach used by camel-stitch. This fixes the ClassNotFoundException for reactor.netty.http.client.HttpClient in the azure-core-http-netty bundle caused by the wrap protocol not correctly preserving Export-Package headers.
…tures The plain reactor-netty-http bundle from 1.3.3 has mandatory imports on io.netty.handler.codec.http3 and io.netty.handler.codec.quic. Providing the actual http3/quic bundles doesn't work because netty-codec-http3 itself requires javax.annotation (JSR-305) which isn't in these features. Since the Azure features don't use HTTP/3 or QUIC, wrapping reactor-netty-http to make those imports optional is the correct fix.
The Karaf feature resolver skips wrapped dependency bundles whose exports it cannot determine at resolution time. This caused reactor-netty-core and reactor-netty-http to not be installed, leading to ClassNotFoundException for reactor.netty.http.client.HttpClient at runtime and failing the camel-azure-eventhubs integration test.
The wrapped reactor-netty-http bundle imports io.micrometer.common which is not available in the Karaf runtime. Mark io.micrometer imports as optional to allow the bundle to resolve without micrometer present.
…ures Instead of wrapping reactor-netty-http to make http3/quic imports optional, provide the actual netty-codec-http3 and netty-codec-classes-quic bundles so the original OSGi manifest resolves correctly. This fixes ClassNotFoundException for reactor.netty.http.client.HttpClient in azure-core-http-netty.
The Karaf feature resolver skips dependency bundles whose imports it cannot determine are needed at resolution time. Since azure-core-http-netty is a wrapped bundle, the resolver cannot see its imports and therefore does not install reactor-netty-http and the netty codec bundles. Removing dependency='true' makes these primary bundles that are always installed with the feature, ensuring reactor-netty-http and the required netty bundles are available at runtime.
The Karaf feature resolver cannot see imports of wrapped bundles at resolution time, so it skips installing reactor-netty-http and other dependency bundles. Adding explicit Import-Package for reactor.netty.http.client and other key packages to the azure-core-http-netty wrap directive makes these imports visible to the resolver, which then correctly pulls in reactor-netty-http and its transitive dependencies. Also restores dependency='true' on netty/reactor bundles since they will now be correctly resolved through the import chain.
Re-apply stability fixes that were lost in the revert (621e78c): - Upgrade emulator to 2.2.0 to avoid SIGSEGV on GitHub Actions - Add explicit Event Hub entity config (eh1) - Use log-based wait strategy with 3-minute startup timeout - Use acceptLicense() API instead of env var - Increase mock assertion wait time to 60s
The EventHubs emulator container consistently fails to start within the timeout on GitHub Actions runners.
Upgrade Azurite to 3.35.0 across all Azure itests for consistency (storage-queue was using unpinned 'latest'). Simplify the EventHubs emulator container configuration by relying on defaults and re-enable the previously ignored test.
reactor-netty-http has mandatory imports for io.netty.handler.codec.http3, io.netty.handler.codec.quic, and io.netty.handler.codec.haproxy. When all bundles in a feature are marked dependency='true', the Karaf resolver may fail to transitively resolve them, causing NoClassDefFoundError for reactor/netty/http/client/HttpClient at runtime. Apply the same wrap directive already used in camel-azure-storage-queue to camel-azure-eventhubs, camel-azure-storage-blob, and camel-stitch features.
Member
|
Cache update on #691 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.