You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by "ammachado (via GitHub)" <gi...@apache.org> on 2026/07/08 17:17:11 UTC

[PR] CAMEL-23971: fix ordered properties containsKey support [camel]

ammachado opened a new pull request, #24541:
URL: https://github.com/apache/camel/pull/24541

   # Description
   
   Fixes `OrderedProperties` containment support by delegating `containsKey`, `containsValue`, and legacy `contains` to the backing `LinkedHashMap`, and adds regression coverage for those semantics plus remove behavior.
   
   This also updates the Camel JBang export path in `ExportCamelMain` to use `containsKey(...)` for profile-based property presence checks, so explicitly configured keys are still treated as present even when their value is empty.
   
   Why: `BaseOrderedProperties` moved storage into a backing map but never overrode the inherited `Hashtable` containment methods, so property presence checks could return false even when the ordered properties instance actually contained the key.
   
   _AI-generated by Codex on behalf of ammachado._
   
   # Target
   
   - [x] I checked that the commit is targeting the correct branch (Camel 4 uses the `main` branch)
   
   # Tracking
   - [x] If this is a large change, bug fix, or code improvement, I checked there is a [JIRA issue](https://issues.apache.org/jira/browse/CAMEL) filed for the change (usually before you start working on it).
   
   # Apache Camel coding standards and style
   
   - [x] I checked that each commit in the pull request has a meaningful subject line and body.
   
   - [ ] I have run `mvn clean install -DskipTests` locally from root folder and I have committed all auto-generated changes.
   
   Verification note: I attempted focused Maven verification earlier, but it was blocked in the sandbox by the local Develocity `~/.m2` access requirements. The repo pre-push hook did run `mvn formatter:format impsort:sort` successfully during push.
   
   # AI-assisted contributions
   
   - [x] If this PR includes AI-generated code, commits have proper co-authorship attribution (e.g., `Co-authored-by` trailers) and the PR description identifies the AI tool used.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "davsclaus (via GitHub)" <gi...@apache.org>.
davsclaus merged PR #24541:
URL: https://github.com/apache/camel/pull/24541


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #24541:
URL: https://github.com/apache/camel/pull/24541#issuecomment-4917405026

   :star2: Thank you for your contribution to the Apache Camel project! :star2:
     :robot: CI automation will test this PR automatically.
   
     :camel: Apache Camel Committers, please review the following items:
   
     * First-time contributors **require MANUAL approval** for the GitHub Actions to run
     * You can use the command `/component-test (camel-)component-name1 (camel-)component-name2..` to request a test from the test bot although they are normally detected and executed by CI.
     * You can label PRs using `skip-tests` and `test-dependents` to fine-tune the checks executed by this PR.
     * Build and test logs are available in the summary page. **Only** [Apache Camel committers](https://camel.apache.org/community/team/#committers) have access to the summary.
     
     :warning: Be careful when sharing logs. Review their contents before sharing them publicly.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "davsclaus (via GitHub)" <gi...@apache.org>.
davsclaus commented on code in PR #24541:
URL: https://github.com/apache/camel/pull/24541#discussion_r3548699947


##########
dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java:
##########
@@ -287,13 +287,13 @@ protected Set<String> resolveDependencies(Path settings, Path profile) throws Ex
             Properties prop = new CamelCaseOrderedProperties();
             RuntimeUtil.loadProperties(prop, profile);
             // if metrics is defined then include camel-micrometer-prometheus for camel-main runtime
-            if (prop.getProperty("camel.metrics.enabled") != null
-                    || prop.getProperty("camel.management.metricsEnabled") != null
-                    || prop.getProperty("camel.server.metricsEnabled") != null) {
+            if (prop.containsKey("camel.metrics.enabled")

Review Comment:
   `CamelCaseOrderedProperties` documents that the **get** methods support both camelCase and dash-style key lookup (its `getProperty()` tries the key as-is, then `dashToCamelCase`, then `camelCaseToDash`). The new `containsKey()` in `BaseOrderedProperties` only checks the exact key — no fallback.
   
   So if a user's profile has `camel.management.metrics-enabled=true` (dash-case), the old `getProperty("camel.management.metricsEnabled") != null` found it via the fallback, but `containsKey("camel.management.metricsEnabled")` won't.
   
   Either revert these lines back to `getProperty(...) != null`, or also override `containsKey()` in `CamelCaseOrderedProperties` with the same camelCase/dash fallback logic.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #24541:
URL: https://github.com/apache/camel/pull/24541#issuecomment-4918017764

   <!-- ci-tested-modules -->
   :test_tube: **CI tested the following changed modules:**
   
   - `core/camel-util`
   - `dsl/camel-jbang/camel-jbang-core`
   
   > :information_source: Dependent modules were not tested because the total number of affected modules exceeded the threshold (50). Use the `test-dependents` label to force testing all dependents.
   
   ---
   
   <details><summary>:microscope: Scalpel shadow comparison — Scalpel: 559 tested, 28 compile-only — current: 558 all tested</summary>
   
   [Maveniverse Scalpel](https://github.com/maveniverse/scalpel) detected **587 affected modules** (current approach: 558).
   
   <details><summary>:warning: Modules only in Scalpel (29)</summary>
   
   - `apache-camel`
   - `camel-allcomponents`
   - `camel-catalog`
   - `camel-catalog-console`
   - `camel-catalog-lucene`
   - `camel-catalog-maven`
   - `camel-catalog-suggest`
   - `camel-componentdsl`
   - `camel-csimple-maven-plugin`
   - `camel-endpointdsl`
   - `camel-endpointdsl-support`
   - `camel-itest`
   - `camel-jbang-core`
   - `camel-jbang-it`
   - `camel-jbang-main`
   - `camel-jbang-plugin-edit`
   - `camel-jbang-plugin-generate`
   - `camel-jbang-plugin-kubernetes`
   - `camel-jbang-plugin-test`
   - `camel-kamelet-main`
   - `camel-launcher`
   - `camel-report-maven-plugin`
   - `camel-route-parser`
   - `camel-yaml-dsl`
   - `camel-yaml-dsl-deserializers`
   - `camel-yaml-dsl-maven-plugin`
   - `coverage`
   - `docs`
   - `dummy-component`
   
   </details>
   
   **Skip-tests mode would test 559 modules** (2 direct + 557 downstream), **skip tests for 28** (generated code, meta-modules)
   
   <details><summary>Modules Scalpel would test (559)</summary>
   
   - `archetypes`
   - `camel-a2a`
   - `camel-activemq`
   - `camel-activemq6`
   - `camel-ai-parent`
   - `camel-amqp`
   - `camel-api`
   - `camel-api-component-maven-plugin`
   - `camel-arangodb`
   - `camel-archetype-api-component`
   - `camel-archetype-component`
   - `camel-archetype-dataformat`
   - `camel-archetype-java`
   - `camel-archetype-main`
   - `camel-archetype-spring`
   - `camel-as2`
   - `camel-as2-api`
   - `camel-as2-parent`
   - `camel-asn1`
   - `camel-asterisk`
   - `camel-atmosphere-websocket`
   - `camel-atom`
   - `camel-attachments`
   - `camel-avro`
   - `camel-avro-rpc`
   - `camel-avro-rpc-jetty`
   - `camel-avro-rpc-parent`
   - `camel-avro-rpc-spi`
   - `camel-aws-bedrock`
   - `camel-aws-cloudtrail`
   - `camel-aws-common`
   - `camel-aws-config`
   - `camel-aws-parameter-store`
   - `camel-aws-parent`
   - `camel-aws-secrets-manager`
   - `camel-aws-security-hub`
   - `camel-aws2-athena`
   - `camel-aws2-comprehend`
   - `camel-aws2-cw`
   - `camel-aws2-ddb`
   - `camel-aws2-ec2`
   - `camel-aws2-ecs`
   - `camel-aws2-eks`
   - `camel-aws2-eventbridge`
   - `camel-aws2-iam`
   - `camel-aws2-kinesis`
   - `camel-aws2-kms`
   - `camel-aws2-lambda`
   - `camel-aws2-mq`
   - `camel-aws2-msk`
   - `camel-aws2-polly`
   - `camel-aws2-redshift`
   - `camel-aws2-rekognition`
   - `camel-aws2-s3`
   - `camel-aws2-s3-vectors`
   - `camel-aws2-ses`
   - `camel-aws2-sns`
   - `camel-aws2-sqs`
   - `camel-aws2-step-functions`
   - `camel-aws2-sts`
   - `camel-aws2-textract`
   - `camel-aws2-timestream`
   - `camel-aws2-transcribe`
   - `camel-aws2-translate`
   - `camel-azure-common`
   - `camel-azure-cosmosdb`
   - `camel-azure-eventgrid`
   - `camel-azure-eventhubs`
   - `camel-azure-files`
   - `camel-azure-functions`
   - `camel-azure-key-vault`
   - `camel-azure-parent`
   - `camel-azure-schema-registry`
   - `camel-azure-servicebus`
   - `camel-azure-storage-blob`
   - `camel-azure-storage-datalake`
   - `camel-azure-storage-queue`
   - `camel-barcode`
   - `camel-base`
   - `camel-base-engine`
   - `camel-base64`
   - `camel-bean`
   - `camel-bean-validator`
   - `camel-beanio`
   - `camel-bindy`
   - `camel-bonita`
   - `camel-box`
   - `camel-box-api`
   - `camel-box-parent`
   - `camel-braintree`
   - `camel-browse`
   - `camel-caffeine`
   - `camel-camunda`
   - `camel-cassandraql`
   - `camel-catalog-common`
   - `camel-cbor`
   - `camel-chatscript`
   - `camel-chunk`
   - `camel-cli-connector`
   - `camel-cli-debug`
   - `camel-clickup`
   - `camel-cloudevents`
   - `camel-cluster`
   - `camel-cm-sms`
   - `camel-coap`
   - `camel-cometd`
   - `camel-console`
   - `camel-consul`
   - `camel-controlbus`
   - `camel-core`
   - `camel-core-all`
   - `camel-core-catalog`
   - `camel-core-engine`
   - `camel-core-languages`
   - `camel-core-model`
   - `camel-core-processor`
   - `camel-core-reifier`
   - `camel-core-xml`
   - `camel-couchbase`
   - `camel-couchdb`
   - `camel-cron`
   - `camel-crypto`
   - `camel-crypto-pgp`
   - `camel-csimple-joor`
   - `camel-csv`
   - `camel-cxf-common`
   - `camel-cxf-parent`
   - `camel-cxf-rest`
   - `camel-cxf-soap`
   - `camel-cxf-spring-common`
   - `camel-cxf-spring-rest`
   - `camel-cxf-spring-soap`
   - `camel-cxf-spring-transport`
   - `camel-cxf-transport`
   - `camel-cyberark-vault`
   - `camel-dapr`
   - `camel-dataformat`
   - `camel-dataset`
   - `camel-datasonnet`
   - `camel-debezium-common`
   - `camel-debezium-common-parent`
   - `camel-debezium-db2`
   - `camel-debezium-maven-plugin`
   - `camel-debezium-mongodb`
   - `camel-debezium-mysql`
   - `camel-debezium-oracle`
   - `camel-debezium-parent`
   - `camel-debezium-postgres`
   - `camel-debezium-sqlserver`
   - `camel-debug`
   - `camel-dependencies`
   - `camel-dfdl`
   - `camel-dhis2`
   - `camel-dhis2-api`
   - `camel-dhis2-parent`
   - `camel-diagram`
   - `camel-digitalocean`
   - `camel-direct`
   - `camel-disruptor`
   - `camel-djl`
   - `camel-dns`
   - `camel-docker`
   - `camel-docling`
   - `camel-drill`
   - `camel-dropbox`
   - `camel-dsl-modeline`
   - `camel-dsl-support`
   - `camel-dynamic-router`
   - `camel-ehcache`
   - `camel-eip-documentation-enricher-maven-plugin`
   - `camel-elasticsearch`
   - `camel-elasticsearch-rest-client`
   - `camel-event`
   - `camel-exec`
   - `camel-fastjson`
   - `camel-fhir`
   - `camel-fhir-api`
   - `camel-fhir-parent`
   - `camel-file`
   - `camel-file-watch`
   - `camel-flatpack`
   - `camel-flink`
   - `camel-flowable`
   - `camel-fop`
   - `camel-fory`
   - `camel-freemarker`
   - `camel-ftp`
   - `camel-ftp-common`
   - `camel-geocoder`
   - `camel-git`
   - `camel-github2`
   - `camel-google-bigquery`
   - `camel-google-calendar`
   - `camel-google-common`
   - `camel-google-drive`
   - `camel-google-firestore`
   - `camel-google-functions`
   - `camel-google-mail`
   - `camel-google-parent`
   - `camel-google-pubsub`
   - `camel-google-secret-manager`
   - `camel-google-sheets`
   - `camel-google-speech-to-text`
   - `camel-google-storage`
   - `camel-google-text-to-speech`
   - `camel-google-vertexai`
   - `camel-google-vision`
   - `camel-graphql`
   - `camel-grok`
   - `camel-groovy`
   - `camel-grpc`
   - `camel-gson`
   - `camel-hashicorp-vault`
   - `camel-hazelcast`
   - `camel-headersmap`
   - `camel-health`
   - `camel-hl7`
   - `camel-http`
   - `camel-http-base`
   - `camel-http-common`
   - `camel-huawei-parent`
   - `camel-huaweicloud-common`
   - `camel-huaweicloud-dms`
   - `camel-huaweicloud-frs`
   - `camel-huaweicloud-functiongraph`
   - `camel-huaweicloud-iam`
   - `camel-huaweicloud-imagerecognition`
   - `camel-huaweicloud-obs`
   - `camel-huaweicloud-smn`
   - `camel-huggingface`
   - `camel-ibm-cos`
   - `camel-ibm-parent`
   - `camel-ibm-secrets-manager`
   - `camel-ibm-watson-discovery`
   - `camel-ibm-watson-language`
   - `camel-ibm-watson-speech-to-text`
   - `camel-ibm-watson-text-to-speech`
   - `camel-ibm-watsonx-ai`
   - `camel-ibm-watsonx-data`
   - `camel-ical`
   - `camel-iec60870`
   - `camel-iggy`
   - `camel-ignite`
   - `camel-infinispan`
   - `camel-infinispan-common`
   - `camel-infinispan-embedded`
   - `camel-infinispan-parent`
   - `camel-influxdb`
   - `camel-influxdb2`
   - `camel-irc`
   - `camel-ironmq`
   - `camel-iso8583`
   - `camel-jackson`
   - `camel-jackson-avro`
   - `camel-jackson-protobuf`
   - `camel-jackson3`
   - `camel-jackson3-avro`
   - `camel-jackson3-protobuf`
   - `camel-jackson3xml`
   - `camel-jacksonxml`
   - `camel-jandex`
   - `camel-jasypt`
   - `camel-java-io`
   - `camel-java-joor-dsl`
   - `camel-javascript`
   - `camel-jaxb`
   - `camel-jbang-console`
   - `camel-jbang-core`
   - `camel-jbang-mcp`
   - `camel-jbang-plugin-mcp`
   - `camel-jbang-plugin-route-parser`
   - `camel-jbang-plugin-tui`
   - `camel-jbang-plugin-validate`
   - `camel-jcache`
   - `camel-jcr`
   - `camel-jdbc`
   - `camel-jetty`
   - `camel-jetty-common`
   - `camel-jfr`
   - `camel-jgroups`
   - `camel-jgroups-raft`
   - `camel-jira`
   - `camel-jms`
   - `camel-jmx`
   - `camel-jolt`
   - `camel-jooq`
   - `camel-joor`
   - `camel-jpa`
   - `camel-jq`
   - `camel-jsch`
   - `camel-jslt`
   - `camel-json-patch`
   - `camel-json-validator`
   - `camel-jsonapi`
   - `camel-jsonata`
   - `camel-jsonb`
   - `camel-jsonpath`
   - `camel-jsoup`
   - `camel-jt400`
   - `camel-jta`
   - `camel-jte`
   - `camel-kafka`
   - `camel-kamelet`
   - `camel-kamelet-main-support`
   - `camel-keycloak`
   - `camel-knative`
   - `camel-knative-api`
   - `camel-knative-http`
   - `camel-knative-parent`
   - `camel-kserve`
   - `camel-kubernetes`
   - `camel-kudu`
   - `camel-langchain4j-agent`
   - `camel-langchain4j-agent-api`
   - `camel-langchain4j-chat`
   - `camel-langchain4j-core`
   - `camel-langchain4j-embeddings`
   - `camel-langchain4j-embeddingstore`
   - `camel-langchain4j-embeddingstore-api`
   - `camel-langchain4j-tokenizer`
   - `camel-langchain4j-tools`
   - `camel-langchain4j-web-search`
   - `camel-language`
   - `camel-launcher-container`
   - `camel-ldap`
   - `camel-ldif`
   - `camel-leveldb`
   - `camel-log`
   - `camel-lra`
   - `camel-lucene`
   - `camel-lumberjack`
   - `camel-lzf`
   - `camel-mail`
   - `camel-mail-microsoft-oauth`
   - `camel-main`
   - `camel-management`
   - `camel-management-api`
   - `camel-mapstruct`
   - `camel-master`
   - `camel-maven-plugin`
   - `camel-mdc`
   - `camel-metrics`
   - `camel-micrometer`
   - `camel-micrometer-observability`
   - `camel-micrometer-prometheus`
   - `camel-microprofile-config`
   - `camel-microprofile-fault-tolerance`
   - `camel-microprofile-health`
   - `camel-microprofile-parent`
   - `camel-milo`
   - `camel-milvus`
   - `camel-mina`
   - `camel-mina-sftp`
   - `camel-minio`
   - `camel-mllp`
   - `camel-mock`
   - `camel-mongodb`
   - `camel-mongodb-gridfs`
   - `camel-mustache`
   - `camel-mvel`
   - `camel-mybatis`
   - `camel-nats`
   - `camel-neo4j`
   - `camel-netty`
   - `camel-netty-http`
   - `camel-oaipmh`
   - `camel-oauth`
   - `camel-observability-services`
   - `camel-observation`
   - `camel-ocsf`
   - `camel-ognl`
   - `camel-olingo2`
   - `camel-olingo2-api`
   - `camel-olingo2-parent`
   - `camel-olingo4`
   - `camel-olingo4-api`
   - `camel-olingo4-parent`
   - `camel-once`
   - `camel-openai`
   - `camel-openapi-java`
   - `camel-openapi-rest-dsl-generator`
   - `camel-openapi-validator`
   - `camel-opensearch`
   - `camel-openstack`
   - `camel-opentelemetry`
   - `camel-opentelemetry-metrics`
   - `camel-opentelemetry2`
   - `camel-optaplanner`
   - `camel-paho`
   - `camel-paho-mqtt5`
   - `camel-parquet-avro`
   - `camel-pdf`
   - `camel-pg-replication-slot`
   - `camel-pgevent`
   - `camel-pgvector`
   - `camel-pinecone`
   - `camel-platform-http`
   - `camel-platform-http-jolokia`
   - `camel-platform-http-main`
   - `camel-platform-http-vertx`
   - `camel-plc4x`
   - `camel-pqc`
   - `camel-printer`
   - `camel-protobuf`
   - `camel-pubnub`
   - `camel-pulsar`
   - `camel-python`
   - `camel-qdrant`
   - `camel-quartz`
   - `camel-quickfix`
   - `camel-reactive-executor-tomcat`
   - `camel-reactive-executor-vertx`
   - `camel-reactive-streams`
   - `camel-reactor`
   - `camel-redis`
   - `camel-ref`
   - `camel-resilience4j`
   - `camel-resilience4j-micrometer`
   - `camel-resourceresolver-github`
   - `camel-rest`
   - `camel-rest-openapi`
   - `camel-restdsl-openapi-plugin`
   - `camel-robotframework`
   - `camel-rocketmq`
   - `camel-rss`
   - `camel-rxjava`
   - `camel-saga`
   - `camel-salesforce`
   - `camel-salesforce-codegen`
   - `camel-salesforce-maven-plugin`
   - `camel-salesforce-parent`
   - `camel-sap-netweaver`
   - `camel-saxon`
   - `camel-scheduler`
   - `camel-schematron`
   - `camel-seda`
   - `camel-servicenow`
   - `camel-servicenow-maven-plugin`
   - `camel-servicenow-parent`
   - `camel-servlet`
   - `camel-shell`
   - `camel-shiro`
   - `camel-sjms`
   - `camel-sjms2`
   - `camel-slack`
   - `camel-smb`
   - `camel-smooks`
   - `camel-smpp`
   - `camel-snakeyaml`
   - `camel-snmp`
   - `camel-soap`
   - `camel-solr`
   - `camel-splunk`
   - `camel-splunk-hec`
   - `camel-spring`
   - `camel-spring-ai-chat`
   - `camel-spring-ai-embeddings`
   - `camel-spring-ai-image`
   - `camel-spring-ai-parent`
   - `camel-spring-ai-tools`
   - `camel-spring-ai-vector-store`
   - `camel-spring-batch`
   - `camel-spring-cloud-config`
   - `camel-spring-jdbc`
   - `camel-spring-ldap`
   - `camel-spring-main`
   - `camel-spring-parent`
   - `camel-spring-rabbitmq`
   - `camel-spring-redis`
   - `camel-spring-security`
   - `camel-spring-ws`
   - `camel-spring-xml`
   - `camel-sql`
   - `camel-ssh`
   - `camel-stax`
   - `camel-stitch`
   - `camel-stream`
   - `camel-streamcaching-test`
   - `camel-stringtemplate`
   - `camel-stripe`
   - `camel-stub`
   - `camel-support`
   - `camel-swift`
   - `camel-syslog`
   - `camel-tahu`
   - `camel-tarfile`
   - `camel-telegram`
   - `camel-telemetry`
   - `camel-telemetry-dev`
   - `camel-tensorflow-serving`
   - `camel-test-infra-all`
   - `camel-test-infra-artemis`
   - `camel-test-infra-cli`
   - `camel-test-infra-core`
   - `camel-test-infra-jetty`
   - `camel-test-infra-qdrant`
   - `camel-test-infra-smb`
   - `camel-test-junit5`
   - `camel-test-junit6`
   - `camel-test-main-junit5`
   - `camel-test-main-junit6`
   - `camel-test-parent`
   - `camel-test-spring-junit5`
   - `camel-test-spring-junit6`
   - `camel-threadpoolfactory-vertx`
   - `camel-thrift`
   - `camel-thymeleaf`
   - `camel-tika`
   - `camel-timer`
   - `camel-tooling-maven`
   - `camel-tracing`
   - `camel-twilio`
   - `camel-twitter`
   - `camel-undertow`
   - `camel-undertow-spring-security`
   - `camel-univocity-parsers`
   - `camel-util`
   - `camel-validator`
   - `camel-velocity`
   - `camel-vertx`
   - `camel-vertx-common`
   - `camel-vertx-http`
   - `camel-vertx-parent`
   - `camel-vertx-websocket`
   - `camel-wal`
   - `camel-wasm`
   - `camel-weather`
   - `camel-weaviate`
   - `camel-web3j`
   - `camel-webhook`
   - `camel-whatsapp`
   - `camel-wordpress`
   - `camel-workday`
   - `camel-xchange`
   - `camel-xj`
   - `camel-xml-io`
   - `camel-xml-io-dsl`
   - `camel-xml-jaxb`
   - `camel-xml-jaxb-dsl`
   - `camel-xml-jaxb-dsl-test-definition`
   - `camel-xml-jaxb-dsl-test-spring`
   - `camel-xml-jaxp`
   - `camel-xmlsecurity`
   - `camel-xmpp`
   - `camel-xpath`
   - `camel-xslt`
   - `camel-xslt-saxon`
   - `camel-yaml-dsl-common`
   - `camel-yaml-dsl-validator`
   - `camel-yaml-dsl-validator-maven-plugin`
   - `camel-yaml-io`
   - `camel-zeebe`
   - `camel-zendesk`
   - `camel-zip-deflater`
   - `camel-zipfile`
   - `camel-zookeeper`
   - `camel-zookeeper-master`
   - `components`
   - `sync-properties-maven-plugin`
   
   </details>
   
   <details><summary>Modules with tests skipped (28)</summary>
   
   - `apache-camel`
   - `camel-allcomponents`
   - `camel-catalog`
   - `camel-catalog-console`
   - `camel-catalog-lucene`
   - `camel-catalog-maven`
   - `camel-catalog-suggest`
   - `camel-componentdsl`
   - `camel-csimple-maven-plugin`
   - `camel-endpointdsl`
   - `camel-endpointdsl-support`
   - `camel-itest`
   - `camel-jbang-it`
   - `camel-jbang-main`
   - `camel-jbang-plugin-edit`
   - `camel-jbang-plugin-generate`
   - `camel-jbang-plugin-kubernetes`
   - `camel-jbang-plugin-test`
   - `camel-kamelet-main`
   - `camel-launcher`
   - `camel-report-maven-plugin`
   - `camel-route-parser`
   - `camel-yaml-dsl`
   - `camel-yaml-dsl-deserializers`
   - `camel-yaml-dsl-maven-plugin`
   - `coverage`
   - `docs`
   - `dummy-component`
   
   </details>
   
   > :information_source: Shadow mode — Scalpel observes but does not affect test execution. [Learn more](https://github.com/maveniverse/scalpel)
   
   </details>
   
   :warning: **Some tests are disabled on GitHub Actions** (`@DisabledIfSystemProperty(named = "ci.env.name")`) and require manual verification:
   
   - `dsl/camel-jbang/camel-jbang-core`: 1 test(s) disabled on GitHub Actions
   
   :bulb: **Manual integration tests recommended:**
   
   > You modified `dsl/camel-jbang/camel-jbang-core`. The related integration tests in `dsl/camel-jbang/camel-jbang-it` are excluded from CI. Consider running them manually:
   > ```
   > mvn verify -f dsl/camel-jbang/camel-jbang-it -Djbang-it-test
   > ```
   
   <details><summary>Build reactor — dependencies compiled but only changed modules were tested (586 modules)</summary>
   
   - Camel :: AI :: A2A
   - Camel :: AI :: ChatScript
   - Camel :: AI :: Deep Java Library
   - Camel :: AI :: Docling
   - Camel :: AI :: Hugging Face
   - Camel :: AI :: KServe
   - Camel :: AI :: LangChain4j :: Agent
   - Camel :: AI :: LangChain4j :: Agent :: API
   - Camel :: AI :: LangChain4j :: Chat
   - Camel :: AI :: LangChain4j :: Core
   - Camel :: AI :: LangChain4j :: Embedding
   - Camel :: AI :: LangChain4j :: Embedding Store :: API
   - Camel :: AI :: LangChain4j :: EmbeddingStore
   - Camel :: AI :: LangChain4j :: Tokenizer
   - Camel :: AI :: LangChain4j :: Tools
   - Camel :: AI :: LangChain4j :: Web Search
   - Camel :: AI :: Milvus
   - Camel :: AI :: Neo4j
   - Camel :: AI :: OpenAI
   - Camel :: AI :: PGVector
   - Camel :: AI :: Parent
   - Camel :: AI :: Pinecone
   - Camel :: AI :: Qdrant
   - Camel :: AI :: TensorFlow Serving
   - Camel :: AI :: Weaviate
   - Camel :: AMQP
   - Camel :: API
   - Camel :: AS2 :: API
   - Camel :: AS2 :: Component
   - Camel :: AS2 :: Parent
   - Camel :: ASN.1
   - Camel :: AWS :: Common
   - Camel :: AWS :: Parent
   - Camel :: AWS CloudTrail
   - Camel :: AWS Config
   - Camel :: AWS Redshift Data
   - Camel :: AWS Rekognition
   - Camel :: AWS Security Hub
   - Camel :: AWS Step Functions
   - Camel :: AWS Timestream
   - Camel :: AWS2 :: Transcribe
   - Camel :: AWS2 Athena
   - Camel :: AWS2 Bedrock
   - Camel :: AWS2 CW
   - Camel :: AWS2 Comprehend
   - Camel :: AWS2 DDB
   - Camel :: AWS2 EC2
   - Camel :: AWS2 ECS
   - Camel :: AWS2 EKS
   - Camel :: AWS2 Eventbridge
   - Camel :: AWS2 IAM
   - Camel :: AWS2 KMS
   - Camel :: AWS2 Kinesis
   - Camel :: AWS2 Lambda
   - Camel :: AWS2 MQ
   - Camel :: AWS2 MSK
   - Camel :: AWS2 Parameter Store
   - Camel :: AWS2 Polly
   - Camel :: AWS2 S3
   - Camel :: AWS2 S3 Vectors
   - Camel :: AWS2 SES
   - Camel :: AWS2 SNS
   - Camel :: AWS2 SQS
   - Camel :: AWS2 STS
   - Camel :: AWS2 Secrets Manager
   - Camel :: AWS2 Textract
   - Camel :: AWS2 Translate
   - Camel :: ActiveMQ 5.x
   - Camel :: ActiveMQ 6.x
   - Camel :: All Components Sync point
   - Camel :: All Core Sync point
   - Camel :: ArangoDB
   - Camel :: Archetypes
   - Camel :: Archetypes :: API Component
   - Camel :: Archetypes :: Component
   - Camel :: Archetypes :: Data Format
   - Camel :: Archetypes :: Java Router
   - Camel :: Archetypes :: Main
   - Camel :: Archetypes :: Spring XML Based Router (deprecated)
   - Camel :: Assembly
   - Camel :: Asterisk
   - Camel :: Atmosphere WebSocket Servlet
   - Camel :: Atom
   - Camel :: Attachments
   - Camel :: Avro
   - Camel :: Avro RPC
   - Camel :: Avro RPC :: Jetty
   - Camel :: Avro RPC :: Parent
   - Camel :: Avro RPC :: Spi
   - Camel :: Azure :: Common
   - Camel :: Azure :: CosmosDB
   - Camel :: Azure :: Event Grid
   - Camel :: Azure :: Event Hubs
   - Camel :: Azure :: Files
   - Camel :: Azure :: Functions
   - Camel :: Azure :: Key Vault
   - Camel :: Azure :: Parent
   - Camel :: Azure :: Schema Registry
   - Camel :: Azure :: ServiceBus
   - Camel :: Azure :: Storage Blob
   - Camel :: Azure :: Storage Datalake
   - Camel :: Azure :: Storage Queue
   - Camel :: Barcode
   - Camel :: Base
   - Camel :: Base Engine
   - Camel :: Base64
   - Camel :: Bean
   - Camel :: Bean validator
   - Camel :: BeanIO
   - Camel :: Bindy
   - Camel :: Bonita
   - Camel :: Box :: API
   - Camel :: Box :: Component
   - Camel :: Box :: Parent
   - Camel :: Braintree
   - Camel :: Browse
   - Camel :: CBOR
   - Camel :: CM SMS
   - Camel :: CSV
   - Camel :: CXF :: Common
   - Camel :: CXF :: Common :: Spring
   - Camel :: CXF :: Parent
   - Camel :: CXF :: REST
   - Camel :: CXF :: REST :: Spring
   - Camel :: CXF :: SOAP
   - Camel :: CXF :: SOAP :: Spring
   - Camel :: CXF :: Transport
   - Camel :: CXF :: Transport :: Spring
   - Camel :: Caffeine
   - Camel :: Camunda
   - Camel :: Cassandra CQL
   - Camel :: Catalog :: CSimple Maven Plugin (deprecated)
   - Camel :: Catalog :: Camel Catalog
   - Camel :: Catalog :: Camel Report Maven Plugin
   - Camel :: Catalog :: Camel Route Parser
   - Camel :: Catalog :: Common
   - Camel :: Catalog :: Console
   - Camel :: Catalog :: Dummy Component
   - Camel :: Catalog :: Lucene (deprecated)
   - Camel :: Catalog :: Maven
   - Camel :: Catalog :: Suggest
   - Camel :: Chunk
   - Camel :: ClickUp
   - Camel :: CloudEvents
   - Camel :: Cluster
   - Camel :: CoAP
   - Camel :: Cometd
   - Camel :: Common Telemetry
   - Camel :: Common Tracing (deprecated)
   - Camel :: Component DSL
   - Camel :: Components
   - Camel :: Console
   - Camel :: Consul
   - Camel :: Controlbus
   - Camel :: Core
   - Camel :: Core Catalog
   - Camel :: Core Engine
   - Camel :: Core Languages
   - Camel :: Core Model
   - Camel :: Core Processor
   - Camel :: Core Reifier
   - Camel :: Core XML
   - Camel :: CouchDB
   - Camel :: Couchbase
   - Camel :: Coverage
   - Camel :: Cron
   - Camel :: Crypto
   - Camel :: Crypto PGP
   - Camel :: CyberArk Vault
   - Camel :: DFDL
   - Camel :: DHIS2
   - Camel :: DHIS2 :: Parent
   - Camel :: DHIS2 API
   - Camel :: DNS
   - Camel :: DSL :: CLI Connector
   - Camel :: DSL :: CLI Debug
   - Camel :: DSL :: Modeline
   - Camel :: DSL :: Support
   - Camel :: Dapr
   - Camel :: DataSet
   - Camel :: DataSonnet
   - Camel :: Dataformat
   - Camel :: Debezium :: Common
   - Camel :: Debezium :: Common :: Parent
   - Camel :: Debezium :: DB2
   - Camel :: Debezium :: Maven Plugin
   - Camel :: Debezium :: MongoDB
   - Camel :: Debezium :: MySQL
   - Camel :: Debezium :: Oracle
   - Camel :: Debezium :: Parent
   - Camel :: Debezium :: PostgreSQL
   - Camel :: Debezium :: SQL Server
   - Camel :: Debugging
   - Camel :: Dependencies
   - Camel :: Diagram
   - Camel :: DigitalOcean (deprecated)
   - Camel :: Direct
   - Camel :: Disruptor
   - Camel :: Docker
   - Camel :: Docs
   - Camel :: Drill
   - Camel :: Dropbox
   - Camel :: Dynamic Router
   - Camel :: Ehcache
   - Camel :: ElasticSearch Rest Client
   - Camel :: Elasticsearch Java API Client
   - Camel :: Endpoint DSL
   - Camel :: Endpoint DSL :: Support
   - Camel :: Event
   - Camel :: Exec
   - Camel :: FHIR
   - Camel :: FHIR :: API
   - Camel :: FHIR :: Parent
   - Camel :: FOP
   - Camel :: FTP
   - Camel :: FTP Common
   - Camel :: Fastjson
   - Camel :: File
   - Camel :: File Watch
   - Camel :: FlatPack
   - Camel :: Flink
   - Camel :: Flowable
   - Camel :: Fory
   - Camel :: Freemarker
   - Camel :: Geocoder
   - Camel :: Git
   - Camel :: GitHub2
   - Camel :: Google :: BigQuery
   - Camel :: Google :: Calendar
   - Camel :: Google :: Common
   - Camel :: Google :: Drive
   - Camel :: Google :: Firestore
   - Camel :: Google :: Functions
   - Camel :: Google :: Mail
   - Camel :: Google :: Parent
   - Camel :: Google :: PubSub
   - Camel :: Google :: Secret Manager
   - Camel :: Google :: Sheets
   - Camel :: Google :: Speech To Text
   - Camel :: Google :: Storage
   - Camel :: Google :: Text To Speech
   - Camel :: Google :: Vertex AI
   - Camel :: Google :: Vision
   - Camel :: GraphQL
   - Camel :: Grok
   - Camel :: Groovy
   - Camel :: Gson
   - Camel :: HL7
   - Camel :: HTTP
   - Camel :: HTTP :: Base
   - Camel :: HTTP :: Common
   - Camel :: HashiCorp :: Key Vault
   - Camel :: HazelCast
   - Camel :: Headers Map (deprecated)
   - Camel :: Health
   - Camel :: Huawei Cloud :: Common
   - Camel :: Huawei Cloud :: DMS
   - Camel :: Huawei Cloud :: FaceRecognition
   - Camel :: Huawei Cloud :: FunctionGraph
   - Camel :: Huawei Cloud :: IAM
   - Camel :: Huawei Cloud :: ImageRecognition
   - Camel :: Huawei Cloud :: OBS
   - Camel :: Huawei Cloud :: Parent
   - Camel :: Huawei Cloud :: SimpleNotification
   - Camel :: IBM :: Cloud Object Storage
   - Camel :: IBM :: Parent
   - Camel :: IBM :: Secrets Manager
   - Camel :: IBM :: Watson Discovery
   - Camel :: IBM :: Watson Language
   - Camel :: IBM :: Watson Speech to Text
   - Camel :: IBM :: Watson Text to Speech
   - Camel :: IBM :: watsonx.ai
   - Camel :: IBM :: watsonx.data
   - Camel :: IEC 60870 (deprecated)
   - Camel :: IRC (deprecated)
   - Camel :: ISO-8583
   - Camel :: Iggy
   - Camel :: Ignite
   - Camel :: Infinispan :: Common
   - Camel :: Infinispan :: Embedded
   - Camel :: Infinispan :: Parent
   - Camel :: Infinispan :: Remote
   - Camel :: InfluxDB
   - Camel :: InfluxDB2
   - Camel :: Integration Tests
   - Camel :: Integration Tests :: Stream Caching Tests
   - Camel :: IronMQ
   - Camel :: JAXB
   - Camel :: JBang :: Console
   - Camel :: JBang :: Core
   - Camel :: JBang :: Integration tests
   - Camel :: JBang :: MCP
   - Camel :: JBang :: Main
   - Camel :: JBang :: Plugin :: Edit
   - Camel :: JBang :: Plugin :: Generate
   - Camel :: JBang :: Plugin :: Kubernetes
   - Camel :: JBang :: Plugin :: MCP
   - Camel :: JBang :: Plugin :: Route Parser
   - Camel :: JBang :: Plugin :: TUI
   - Camel :: JBang :: Plugin :: Testing
   - Camel :: JBang :: Plugin :: Validate
   - Camel :: JCR
   - Camel :: JCache
   - Camel :: JDBC
   - Camel :: JGroups
   - Camel :: JGroups Raft
   - Camel :: JIRA
   - Camel :: JMS
   - Camel :: JMX
   - Camel :: JOOQ
   - Camel :: JPA
   - Camel :: JQ
   - Camel :: JSON validator
   - Camel :: JSON-B
   - Camel :: JSONATA
   - Camel :: JSon Path
   - Camel :: JSonApi
   - Camel :: JSoup
   - Camel :: JTA
   - Camel :: Jackson
   - Camel :: Jackson 3
   - Camel :: Jackson 3 Avro
   - Camel :: Jackson 3 Protobuf
   - Camel :: Jackson 3 XML
   - Camel :: Jackson Avro
   - Camel :: Jackson Protobuf
   - Camel :: Jackson XML
   - Camel :: Jandex
   - Camel :: Jasypt
   - Camel :: Java DSL IO
   - Camel :: Java DSL with jOOR
   - Camel :: Java Flight Recorder
   - Camel :: Java Template Engine
   - Camel :: Java Toolbox for IBM i
   - Camel :: JavaScript
   - Camel :: Jetty
   - Camel :: Jetty :: Common
   - Camel :: Jolt
   - Camel :: Jsch
   - Camel :: Jslt
   - Camel :: JsonPatch (deprecated)
   - Camel :: Kafka
   - Camel :: Kamelet
   - Camel :: Kamelet Main
   - Camel :: Kamelet Main :: Support
   - Camel :: Keycloak
   - Camel :: Knative :: Parent
   - Camel :: Knative API
   - Camel :: Knative Component
   - Camel :: Knative HTTP
   - Camel :: Kubernetes
   - Camel :: Kudu
   - Camel :: LDAP
   - Camel :: LDIF
   - Camel :: LZF
   - Camel :: Language
   - Camel :: Launcher
   - Camel :: Launcher :: Container
   - Camel :: LevelDB (deprecated)
   - Camel :: Log
   - Camel :: Long-Running-Action
   - Camel :: Lucene
   - Camel :: Lumberjack
   - Camel :: MDC
   - Camel :: MINA
   - Camel :: MINA SFTP
   - Camel :: MLLP
   - Camel :: MVEL
   - Camel :: Mail
   - Camel :: Mail :: Microsoft OAuth
   - Camel :: Main
   - Camel :: Management
   - Camel :: Management API
   - Camel :: MapStruct
   - Camel :: Master
   - Camel :: Maven Plugins :: Camel API Component Plugin
   - Camel :: Maven Plugins :: Camel Maven Plugin
   - Camel :: Maven Plugins :: OpenApi REST DSL Generator
   - Camel :: Maven Plugins :: Sync Properties
   - Camel :: Maven Plugins :: XML DSL Doc Enricher
   - Camel :: Metrics
   - Camel :: MicroProfile :: Config
   - Camel :: MicroProfile :: Fault Tolerance
   - Camel :: MicroProfile :: Health
   - Camel :: MicroProfile :: Parent
   - Camel :: Micrometer
   - Camel :: Micrometer :: Observability 2
   - Camel :: Micrometer :: Observation (deprecated)
   - Camel :: Micrometer :: Prometheus
   - Camel :: Milo
   - Camel :: MinIO
   - Camel :: Mock
   - Camel :: MongoDB
   - Camel :: MongoDB GridFS
   - Camel :: Mustache
   - Camel :: MyBatis
   - Camel :: Nats
   - Camel :: Netty
   - Camel :: Netty HTTP
   - Camel :: OAIPMH
   - Camel :: OAuth
   - Camel :: OCSF
   - Camel :: OGNL (deprecated)
   - Camel :: Observability Services
   - Camel :: Olingo2 (Deprecated) :: API
   - Camel :: Olingo2 (Deprecated) :: Component
   - Camel :: Olingo2 (Deprecated) :: Parent
   - Camel :: Olingo4 (Deprecated) :: API
   - Camel :: Olingo4 (Deprecated) :: Component
   - Camel :: Olingo4 (Deprecated) :: Parent
   - Camel :: Once
   - Camel :: OpenAPI :: Validator
   - Camel :: OpenApi Java
   - Camel :: OpenSearch Java API Client
   - Camel :: OpenStack
   - Camel :: OpenTelemetry (deprecated)
   - Camel :: Opentelemetry 2
   - Camel :: Opentelemetry Metrics
   - Camel :: OptaPlanner
   - Camel :: PDF
   - Camel :: PLC4X
   - Camel :: PQC
   - Camel :: Paho (deprecated)
   - Camel :: Paho MQTT 5
   - Camel :: Parquet Avro
   - Camel :: PgEvent
   - Camel :: PgReplicationSlot
   - Camel :: Platform HTTP
   - Camel :: Platform HTTP :: Jolokia
   - Camel :: Platform HTTP :: Main
   - Camel :: Platform HTTP :: Vert.x
   - Camel :: Printer
   - Camel :: Protobuf
   - Camel :: PubNub
   - Camel :: Pulsar
   - Camel :: Python
   - Camel :: Quartz
   - Camel :: QuickFIX/J
   - Camel :: REST
   - Camel :: REST OpenApi
   - Camel :: RSS
   - Camel :: Reactive Executor :: Tomcat
   - Camel :: Reactive Executor :: Vert.x (deprecated)
   - Camel :: Reactive Streams
   - Camel :: Reactor
   - Camel :: Redis
   - Camel :: Ref
   - Camel :: Resilience4j
   - Camel :: Resilience4j :: Micrometer
   - Camel :: ResourceResolver GitHub
   - Camel :: RobotFramework
   - Camel :: RocketMQ
   - Camel :: RxJava
   - Camel :: SAP NetWeaver
   - Camel :: SMB
   - Camel :: SMPP
   - Camel :: SNMP
   - Camel :: SOAP
   - Camel :: SQL
   - Camel :: SSH
   - Camel :: SWIFT
   - Camel :: Saga
   - Camel :: Salesforce
   - Camel :: Salesforce :: CodeGen
   - Camel :: Salesforce :: Maven Plugin
   - Camel :: Salesforce :: Parent
   - Camel :: Saxon
   - Camel :: Scheduler
   - Camel :: Schematron
   - Camel :: Seda
   - Camel :: ServiceNow :: Component
   - Camel :: ServiceNow :: Maven Plugin
   - Camel :: ServiceNow :: Parent
   - Camel :: Servlet
   - Camel :: Shell
   - Camel :: Shiro
   - Camel :: Simple JMS
   - Camel :: Simple JMS2
   - Camel :: Slack
   - Camel :: Smooks :: Parent
   - Camel :: SnakeYAML
   - Camel :: Solr
   - Camel :: Splunk (deprecated)
   - Camel :: Splunk HEC
   - Camel :: Spring
   - Camel :: Spring :: Parent
   - Camel :: Spring AI :: Chat
   - Camel :: Spring AI :: Embeddings
   - Camel :: Spring AI :: Image
   - Camel :: Spring AI :: Parent
   - Camel :: Spring AI :: Tools
   - Camel :: Spring AI :: Vector Store
   - Camel :: Spring Batch
   - Camel :: Spring Cloud Config
   - Camel :: Spring JDBC
   - Camel :: Spring LDAP
   - Camel :: Spring Main
   - Camel :: Spring RabbitMQ
   - Camel :: Spring Redis
   - Camel :: Spring Security
   - Camel :: Spring Web Services
   - Camel :: Spring XML
   - Camel :: StAX
   - Camel :: Stitch
   - Camel :: Stream
   - Camel :: StringTemplate
   - Camel :: Stripe
   - Camel :: Stub
   - Camel :: Support
   - Camel :: Syslog
   - Camel :: Tahu
   - Camel :: Tar File
   - Camel :: Telegram
   - Camel :: Telemetry :: Dev
   - Camel :: Test :: JUnit5
   - Camel :: Test :: JUnit6
   - Camel :: Test :: Main :: JUnit5
   - Camel :: Test :: Main :: JUnit6
   - Camel :: Test :: Parent
   - Camel :: Test :: Spring :: JUnit5
   - Camel :: Test Infra :: All test services
   - Camel :: Test Infra :: Artemis
   - Camel :: Test Infra :: Cli (Camel CLI)
   - Camel :: Test Infra :: Core
   - Camel :: Test Infra :: Jetty
   - Camel :: Test Infra :: Server Message Block
   - Camel :: Test Infra :: qdrant
   - Camel :: Thread Pool Factory :: Vert.x (deprecated)
   - Camel :: Thrift
   - Camel :: Thymeleaf
   - Camel :: Tika
   - Camel :: Timer
   - Camel :: Tooling :: Maven
   - Camel :: Tooling :: OpenApi REST DSL Generator
   - Camel :: Twilio
   - Camel :: Twitter
   - Camel :: Undertow
   - Camel :: Undertow Spring Security
   - Camel :: UniVocity Parsers
   - Camel :: Util
   - Camel :: Validator
   - Camel :: Velocity
   - Camel :: Vert.x :: Common
   - Camel :: Vert.x :: HTTP
   - Camel :: Vert.x :: Parent
   - Camel :: Vert.x :: WebSocket
   - Camel :: Vertx
   - Camel :: WAL
   - Camel :: Wasm
   - Camel :: Weather
   - Camel :: Web3j
   - Camel :: Webhook
   - Camel :: Whatsapp
   - Camel :: Wordpress
   - Camel :: Workday
   - Camel :: XChange
   - Camel :: XJ
   - Camel :: XML DSL Jaxb :: Test :: Definition
   - Camel :: XML DSL Jaxb :: Test :: Spring
   - Camel :: XML DSL with camel-xml-io
   - Camel :: XML DSL with camel-xml-jaxb
   - Camel :: XML IO
   - Camel :: XML JAXB
   - Camel :: XML JAXP
   - Camel :: XML Security
   - Camel :: XMPP
   - Camel :: XPath
   - Camel :: XSLT
   - Camel :: XSLT Saxon
   - Camel :: YAML DSL
   - Camel :: YAML DSL :: Common
   - Camel :: YAML DSL :: Deserializers
   - Camel :: YAML DSL :: Maven Plugins
   - Camel :: YAML DSL :: Validator
   - Camel :: YAML DSL :: Validator Maven Plugin
   - Camel :: YAML IO
   - Camel :: Zeebe (deprecated)
   - Camel :: Zendesk
   - Camel :: Zip Deflater
   - Camel :: Zip File
   - Camel :: Zookeeper
   - Camel :: Zookeeper Master
   - Camel :: csimple jOOR (deprecated)
   - Camel :: gRPC
   - Camel :: iCal
   - Camel :: jOOR
   
   </details>
   
   ---
   :gear: [View full build and test results](https://github.com/apache/camel/actions/runs/28961824338)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "ammachado (via GitHub)" <gi...@apache.org>.
ammachado commented on PR #24541:
URL: https://github.com/apache/camel/pull/24541#issuecomment-4921588295

   Addressed the non-blocking observation from the approval: `CamelCaseOrderedProperties.containsKey()` now reads the backing map directly via `asMap()` instead of calling `super.containsKey()` three times, so the inner lookups no longer re-acquire the `ReentrantLock`. This mirrors the `get()`/`getProperty()` pattern. Tests still pass (9/9 in `camel-util`).
   
   _Claude Code on behalf of ammachado_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "ammachado (via GitHub)" <gi...@apache.org>.
ammachado commented on code in PR #24541:
URL: https://github.com/apache/camel/pull/24541#discussion_r3548779295


##########
dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java:
##########
@@ -287,13 +287,13 @@ protected Set<String> resolveDependencies(Path settings, Path profile) throws Ex
             Properties prop = new CamelCaseOrderedProperties();
             RuntimeUtil.loadProperties(prop, profile);
             // if metrics is defined then include camel-micrometer-prometheus for camel-main runtime
-            if (prop.getProperty("camel.metrics.enabled") != null
-                    || prop.getProperty("camel.management.metricsEnabled") != null
-                    || prop.getProperty("camel.server.metricsEnabled") != null) {
+            if (prop.containsKey("camel.metrics.enabled")

Review Comment:
   Good catch. Rather than reverting the call site, I fixed the root inconsistency: `CamelCaseOrderedProperties` overrode `get`/`getProperty` with the camelCase/dash fallback but left `containsKey` doing exact-match only.
   
   I added a `containsKey` override to `CamelCaseOrderedProperties` that applies the same fallback (key as-is, then `dashToCamelCase`, then `camelCaseToDash`), so it stays consistent with `getProperty` and `ExportCamelMain`'s presence checks now match dash-style keys like `camel.management.metrics-enabled`. Only `containsKey` needs this since values are never transformed.
   
   I also reviewed all `BaseOrderedProperties` descendants: `OrderedProperties` (no read overrides) and `OrderedLocationProperties` (only `clear`/`remove` overrides, no key transformation on read) need no containment changes.
   
   Added a regression test (`testContainsKeyCamelCaseAndDashFallback`) covering both storage-as-dash/lookup-as-camelCase and the reverse.
   
   _Claude Code on behalf of ammachado_



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-23971: fix ordered properties containsKey support [camel]

Posted by "davsclaus (via GitHub)" <gi...@apache.org>.
davsclaus commented on PR #24541:
URL: https://github.com/apache/camel/pull/24541#issuecomment-4922605436

   ⏺ The failing test on PR #24541 is JpaPollingConsumerLockEntityTest.testPollingConsumerWithLock in camel-jpa.
   
     It failed on all 3 surefire retries with two different symptoms:
     - Runs 1 & 3: Expected 2 messages on mock://locked but received only 1
     - Run 2: First message body was orders: 2 instead of the expected orders: 1 (ordering issue)
   
     This looks like a flaky/timing-sensitive test rather than a failure caused by the PR's changes (which touch OrderedProperties / containsKey in camel-util). The PR has no relation to JPA or
     polling consumers — this is a pre-existing test instability in JpaPollingConsumerLockEntityTest.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org