Skip to content

Upgrade to Camel 4.18.4 - #742

Merged
jbonofre merged 3 commits into
apache:camel-karaf-4.18.xfrom
lobtx:camel-karaf-4.18.x
Sep 8, 2026
Merged

jbonofre merged 3 commits into
apache:camel-karaf-4.18.xfrom
lobtx:camel-karaf-4.18.x

Conversation

@lobtx

@lobtx lobtx commented Aug 26, 2026 •

Copy link
Copy Markdown

Used the tooling to list and apply changes from camel 4.18.4.

I made some fixes due to this upgrade:

  • camel-google-secret-manager : applied https://issues.apache.org/jira/browse/CAMEL-23729 => protobuf rolled-back to ${protobuf-version} instead of ${protobuf4-version} due to google-cloud-secretmanager downgrade to 2.82.0 in Camel 4.18.3
  • tests : renamed camel headers
    • operationName→CamelCxfOperationName
    • dns.*→CamelDns*
    • indexId→CamelElasticsearchIndexId
  • features : added com.google.code.gson/gson to camel-google-pubsub, camel-google-pubsub-lite and camel-google-secret-manager. Camel 4.18.4 pulls gax 2.73.x, whose com.google.api.gax.logging.LogData has a static dependency on Gson (loaded by the gRPC/HTTP logging interceptors). Without it every gax call fails with NoClassDefFoundError / ClassNotFoundException: com.google.gson.Gson not found by wrap_com.google.api.gax, which made CamelGooglePubsubITest time out with 0 messages on CI. These three features wrap com.google.api/gax plainly (no optional-import override) and did not already provide gson. Diagnosed and committed by Claude Code on behalf of JB Onofré.

@lobtx

lobtx commented Aug 26, 2026

Copy link
Copy Markdown
Author

Tested this branch against an application of mine (local build):

  • Karaf 4.4.11
  • ActiveMQ 6.2.6
  • Camel 4.18.4 & Camel Karaf 4.18.4-SNAPSHOT
  • Java 21

This application is quite simple: it exposes a REST API that receives a JSON payload and spreads it across multiple queues, which then forward the message to several endpoints (typical ESB).

I ran the resulting distribution in a local environment: all features install cleanly, and I verified end-to-end that messages flow through ActiveMQ and my Camel routes as expected.

@jbonofre
jbonofre self-requested a review August 27, 2026 06:44
@jbonofre

Copy link
Copy Markdown
Member

Thanks! I would like to merge the other fixes before the update (in order also to test on CI).
There are several issues about the planned version bumps. We should also link the issue to the PR.

jbonofre added a commit that referenced this pull request Sep 6, 2026
…still serves (#750)

Backport of #746.

CamelGooglePubsubITest on this branch still pins
gcr.io/google.com/cloudsdktool/google-cloud-cli:441.0.0-emulators. That tag
still resolved on 2026-08-28 -- the CI run for PR #742 pulled it successfully
-- but gcr.io keeps only a rolling window of the most recent emulator tags, so
the pin has since stopped resolving.

The failure mode is the one #746 described on main: Testcontainers fails the
container fetch with "manifest unknown", the itest errors out in
initializationError, and the reactor halts at camel-google-pubsub-test,
skipping every later module. That blocks meaningful CI on the 4.18.x line,
including PR #742.

Bump it to 583.0.0-emulators and keep the comment recording the registry
retention behaviour, so the next bump is not a mystery.

The other four pinned test images (cp-kafka, influxdb, localstack, rabbitmq)
are untouched.
@jbonofre

jbonofre commented Sep 7, 2026

Copy link
Copy Markdown
Member

Let me rebase as I fixed the issue with itest on google pubsub.

@lobtx

lobtx commented Sep 7, 2026

Copy link
Copy Markdown
Author

Let me rebase as I fixed the issue with itest on google pubsub.

yep thanks

jbonofre and others added 2 commits September 7, 2026 14:00
…73 logging

Camel 4.18.4 upgrades google-cloud-pubsub, which pulls gax 2.73.x. Its
com.google.api.gax.logging.LogData has a static (class-init) dependency on
com.google.gson.Gson, and the gRPC/HTTP logging interceptors touch LogData
on the first call. The camel-google-pubsub, camel-google-pubsub-lite and
camel-google-secret-manager features wrap com.google.api/gax without an
optional-import override and do not provide a gson bundle, so at runtime
every call fails with:

  NoClassDefFoundError: Could not initialize class com.google.api.gax.logging.LogData
  Caused by: ClassNotFoundException: com.google.gson.Gson not found by wrap_com.google.api.gax

CamelGooglePubsubITest.testResultMock then times out with 0 messages on
the mock. Add mvn:com.google.code.gson/gson to those three features
(gson ${gson-version} is already used by ~10 other features).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011mhjfmJXTtsV58PBdvxvSX
@jbonofre

jbonofre commented Sep 8, 2026

Copy link
Copy Markdown
Member

@lobtx I fixed everything on your PR. Let me approve and merge, I will move forward with the release then.

@jbonofre
jbonofre merged commit b0c9caa into apache:camel-karaf-4.18.x Sep 8, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants