Apache camel 3.10.0 Release

New and Noteworthy

This release is the new Camel 3.10.0 minor release.

Getting the Binaries using Maven

To use this release in your Apache Maven pom.xml, import the Camel Bill of Materials (BOM) and then include the camel-core and any other components needed without specifying the version.

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-bom</artifactId>
      <version>3.10.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-core</artifactId>
  </dependency>
  <dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-COMPONENT</artifactId>
  </dependency>
</dependencies>

To use this release in a Spring Boot application, use the camel-spring-boot-dependencies Bill of Materials (BOM):

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.apache.camel.springboot</groupId>
      <artifactId>camel-spring-boot-dependencies</artifactId>
      <version>3.10.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-COMPONENT-starter</artifactId>
  </dependency>
</dependencies>

Apache Camel

Download Signature and checksum
apache-camel-3.10.0-src.zip (Sources) PGP Signature, SHA512 Checksum

Git tag checkout

Release is tagged with camel-3.10.0 in the Git, to fetch it use:

git clone https://git-wip-us.apache.org/repos/asf/camel.git
cd camel
git checkout camel-3.10.0

Resolved issues

Here is a list of all the issues that have been resolved for this release

Bug (67)

CAMEL-16761
camel-sql - auto-generated primary keys are not retuned for Postgres when using loop iteration
CAMEL-16721
Issue with camel-google-pubsub-kafka-connector sink configuration
CAMEL-16617
camel-core - Splitter may log WARN about splitter closed
CAMEL-16604
camel-kamelet - YAML DSL: Specify an option as optional results in a mandatory option
CAMEL-16587
camel-openstack - Cannot create ObjectStore V3 Client
CAMEL-16586
camel-aws2-sns: messages for different endpoints are published to the same topic
CAMEL-16582
camel-mail - Error Marshal mimeMultipart() with attachments
CAMEL-16574
camel-salesforce - NPE On Response Callback - DefaultCompositeApiClient
CAMEL-16569
camel-kamelet don't check for duplicate id routes during route creation from a template
CAMEL-16567
Mocking of consul producers fails
CAMEL-16566
camel-core - Nested enrich with shareUnitOfWork=true result in ConcurrentModificationException
CAMEL-16559
camel-consul - Consul catalog action "LIST_SERVICES" calls CatalogClient.getNodes
CAMEL-16556
Multiple AtlasMap endpoints may overwrite each others' propertiesFiles
CAMEL-16551
property placeholder not resolved in .marshal() and .unmarshal() DSL statements
CAMEL-16550
camel-core - Split and Aggregate with Transacted may cause thread to stuck
CAMEL-16547
camel-kamelet don't bind properties in this form: `camel.component.kamelet.template-properties[templateId]`
CAMEL-16536
digitalocean: supress deprecated getOut
CAMEL-16534
camel-core - Multiple doTry ..doCatch in Java DSL - issue setting outer doCatch blocks
CAMEL-16530
AWS2-S3 component does not recognize or use proxy-host and proxy-port from application.properties
CAMEL-16529
Kubernetes Custom Resources - listCustomResourcesByLabels returns all resources
CAMEL-16527
Unable to disable component or endpoint autowiring with camel-main
CAMEL-16526
Unreachable consul leads to NPE in CombinedServiceDiscovery
CAMEL-16525
camel-core - FluentProducerTemplate - Thread safety issue
CAMEL-16516
camel-salesforce - Maven plugin generated code AbstractDescribedSObjectBase can cause NPE
CAMEL-16515
camel-github component possible OOM due to only adding elements to an unbuonded map
CAMEL-16507
Camel-sql: Body for empty ResultSet no longer null when using outputType selectOne
CAMEL-16503
[camel-spring-xml] Unresolved camel.spring.version in the generated spring.handlers and spring.schema
CAMEL-16500
Unable to autowire KafkaClientFactory
CAMEL-16498
Camel-Azure-Storage-queue consumer doesn't work
CAMEL-16490
YAML DSL tod is no longer recognized (requires to-d)
CAMEL-16489
YAML DSL is sensitive to key ordering
CAMEL-16480
Simple expression behavior change after 3.4->3.7 migration
CAMEL-16476
camel-core - XML DSL loader issue with doTry doCatch
CAMEL-16472
kamelet: aggregation kamelet not wired properly
CAMEL-16459
jsonpath: If used after platform-http-vertx, it causes PathNotFoundException
CAMEL-16453
camel-zipkin - Incorrect spans created when using parallelProcessing with recipientList or multicast
CAMEL-16447
camel-salesforce - Error in parsing some fields in AbstractSObjectBase
CAMEL-16442
camel-spring-boot - Classpath discovery using wildcards for xml-io-dsl does not work
CAMEL-16439
camel-couchbase : Timeout with Get and Remove operations
CAMEL-16438
Kafka component properties randomly end up under camel.component.kafka or camel.component.kafka.configuration
CAMEL-16423
Camel-Minio converts any body consumed to String
CAMEL-16418
LEAK: ByteBuf.release() results when using circuit breaker with netty http producer
CAMEL-16413
[camel-kafka] Avoid committing offsets onPartitionsRevoked during shutdown when autoCommitOnStop is "none"
CAMEL-16412
camel-core - Environment Variables in Properties Source location no longer works
CAMEL-16410
camel-zipfile - Unmarshal ZIP without error handling in Camel 3.8.0 when using split
CAMEL-16407
camel-salesforce: SalesforceLoginConfig values are null
CAMEL-16401
Ensure Route Templates inherit the error handler from the RouteBuilder
CAMEL-16396
Configuring an interval and failure threshold for a health check does not work in all cases
CAMEL-16393
camel-jsonpath - results from $.concat(...) seems to be cached on following calls
CAMEL-16378
Camel MDC - Not propagating custom keys when using Split with Parallel Processing
CAMEL-16377
camel-core - Recipient List EIP - Failed to create Producer for endpoint - NPE in ServicePool
CAMEL-16316
ProducerTemplate asyncSend is not thread safe
CAMEL-16287
camel-aws2-sqs should use pagination for deciding which aws sqs queues it should create
CAMEL-16242
camel-core - Route templates and the ONiel problem
CAMEL-16197
CXF Attachment stay in file system after processing if file attachments has not been used
CAMEL-16180
Camel mail fails after some time running
CAMEL-16025
[camel-mongodb] ChangeStreams: Exception not gracefully handled
CAMEL-16015
SFTP to file with local work directory is not using rename
CAMEL-15750
camel-undertow-spring-security-starter always forbidden
CAMEL-15410
REST endpoint has inconsistent URL Encoding
CAMEL-13374
XMLTokenExpressionIterator Default Exchange charset overrides original xml encoding from InputStream
CAMEL-13092
Gzipping HTTP response prevents writing chunked output
CAMEL-13047
Validator Component Fails on XSD with file Relative Imports or include
CAMEL-12764
camel-http4: basic auth no longer working when used in combination with a dynamic to
CAMEL-12472
Downloading a large file with streamDownload and stepwise hangs
CAMEL-12078
MIME-Mutipart DataFormat reads attachment DataSource twice
CAMEL-11846
xtokenize and apply xslt to a string does not work with UTF-16BE

Dependency upgrade (6)

CAMEL-16601
kotlin-dsl - Upgrade to kotlin 1.5.0
CAMEL-16531
camel-kafka - Kafka 2.8 release without zookeeper
CAMEL-16492
camel-jackson - Upgrade to 2.12.3
CAMEL-16473
camel-debezium - Upgrade to 1.5
CAMEL-16434
Upgrade to CXF 3.4.3
CAMEL-16416
Camel-DJL: Upgrade to Deep Java Library 0.10.0

Improvement (75)

CAMEL-16614
camel-core - Generated type converter should be CamelContextAware
CAMEL-16610
Kamelet local bean - Using script should memorize so when using the bean multiple times its the same local bean
CAMEL-16609
rest dsl - Add more security models for JWT bearer tokens etc
CAMEL-16608
Kamelet local bean - Using script should allow to define return type of created bean
CAMEL-16607
RouteTemplateBeanDefinition : add suport for #type and #class languages
CAMEL-16606
rest dsl - Allow specifying security requirement(s) applicable to entire API
CAMEL-16595
camel-openstack - Ability to filter by path in Swift getAll
CAMEL-16591
Undocumented Bindy Feature
CAMEL-16590
Kamelet local bean - Bind bean as templateBean to make it part of the spec
CAMEL-16580
Remove deprecated code from MLLP component
CAMEL-16575
camel-core - Lookup bean if value is Supplier then lazy eval
CAMEL-16572
camel-spring-jdbc - Make camel-jdbc springless again
CAMEL-16571
camel-core - @Consume annotation should not be marked for constructor injection
CAMEL-16568
camel-activemq - Add destination options to endpoint options
CAMEL-16561
camel-consul - Support agentClient.register
CAMEL-16560
Consider empty string in clientRequestValidation for REST HTTP body
CAMEL-16554
Add support for OpenSSH keys and encrypted OpenSSH keys
CAMEL-16552
camel-spring-boot - Configuring route templates trouble setting route id when using spring yaml configuration
CAMEL-16548
camel-core - Dump route as xml (customId false)
CAMEL-16545
camel-core - ModelDumper to XML output is with doubling empty lines
CAMEL-16541
Camel-Solr: Add autocommit option
CAMEL-16533
camel-spring - XML DSL include more documentation in XSD
CAMEL-16523
camel-github - Add option for commit consumer to poll from starting sha or from start
CAMEL-16520
camel-spring-boot - Auto configuration options for cloud and cluster should not clash with component
CAMEL-16514
Add an option to camel-github component to start gathering data from the beginning of repository history
CAMEL-16513
Camel-Azure-Storage-Queue: Don't create queue automatically by default
CAMEL-16512
Camel-Azure components: mark the clients as autowired
CAMEL-16511
camel-rabbitmq - Make args(query parameter) bean arguments reusable
CAMEL-16510
YAML Dsl : support for Kamelet EIP
CAMEL-16504
YAML Dsl : support for "flow" like route definition
CAMEL-16497
camel-kamelet - Use shorter UUIDs in created route ids
CAMEL-16494
After VetoCamelContextStartException CamelContext instance broken forever
CAMEL-16491
digitalocean: when finding a volume by name, bug while selecting the first element of the list
CAMEL-16486
camel-yaml-dsl-deserializers ErrorHandlerBuilder can parse only Ref
CAMEL-16481
camel-vertx-kafka set custom timestamp
CAMEL-16477
camel-core - ProcessorDefinitionHelper: ruturn a collection instead of an iterator for filterTypeInOutputs methods
CAMEL-16474
camel-azure - Blob consumer should extend scheduled endpoint
CAMEL-16471
camel-huaweicloud-smn // Need URL based client initialization support
CAMEL-16470
Problem when using multiple EntityManagerFactories for different datasources in the same route
CAMEL-16462
camel-core - Optimize RecipientList EIP for default delimiter usage
CAMEL-16460
The Content-Language of CxfRsProducer should be configurable
CAMEL-16458
camel-core - Optimize Enrich and Poll Enrich EIP
CAMEL-16457
camel-core - Optimize ExchangeHelper.copyResults - No need to copy message id not in use
CAMEL-16455
camel-core - Optimize CircuitBreaker EIP with task pooling
CAMEL-16454
camel-core - Optimize CircuitBreaker constants for fast exchange properties
CAMEL-16450
camel-core - Optimize WireTap
CAMEL-16449
camel-cloud - Make Exchange available to ServiceFilter
CAMEL-16448
camel-spring-boot - Allow to define static service discovery with metadata from yml
CAMEL-16444
camel-core - Optimize endpoint lookup
CAMEL-16441
camel-core - Optimize EndpointKey can be NormalizedUri
CAMEL-16440
camel-main - Main configurations - Add default values for tooling
CAMEL-16433
avoid using deprecated CXF LogFeature and LoggingInterceptors
CAMEL-16432
camel-catalog - Validate jsonpath language
CAMEL-16414
camel-kafka set custom timestamp
CAMEL-16408
camel-undertow - http producer includes CamelHttpMethod header
CAMEL-16400
separate unit and integration tests
CAMEL-16397
camel-jsonpath - Use JsonPath that allows to turn on|off caching
CAMEL-16395
Unpredictable behaviour of camel main routes health check configuration
CAMEL-16391
Deprecate and remove redundant code from camel-microprofile-health
CAMEL-16384
camel-spring - BridgePropertyPlaceholderConfigurer should be LoadablePropertiesSource
CAMEL-16383
camel-scheduler - ConcurrentTasks option vs core pool size
CAMEL-16366
complex components to support exchange pooling
CAMEL-16365
Support ecdsa-sha2-* and ssh-ed25519 algorithms in camel-ssh
CAMEL-16353
camel-core - Force eager classloading in build phase
CAMEL-16350
camel-coap - Rename the names with plus sign
CAMEL-16266
camel-ftp - Allow to configure KEX (key exchange protocol) in SFTP
CAMEL-16260
camel-core - PooledExchange for PollingConsumer
CAMEL-16230
Placeholders not Working with CamelSpringBootTest and AdviceWith
CAMEL-16185
aws s3: improve multipart support
CAMEL-16119
Update vertx to version 4.x
CAMEL-16060
camel-kafka - decouple kafka.PARTITION_KEY from kafka.KEY
CAMEL-16028
Upgrade to MicroProfile 4
CAMEL-15503
camel-openapi-java - Schema Definitions not generating correctly
CAMEL-15158
camel-openapi-java - Support Description of Request and Response Bodies
CAMEL-11565
Modular DefaultCamelContext in terms of loading and starting routes

New Feature (32)

CAMEL-16615
Create Jackson based dataformats for Avro and Protobuf
CAMEL-16603
camel-spring-boot - Add starters for kamelet
CAMEL-16600
camel-yaml-dsl - Support route-template bean factory
CAMEL-16597
Kamelets local bean - bean language to support rtc as root object
CAMEL-16596
camel-core - ScriptLanguage SPI
CAMEL-16593
Kamelets local bean - Allow to use expression language to supply the bean
CAMEL-16584
YAML Dsl : support for route template
CAMEL-16577
camel-splunk-hec - Add support for setting the timestamp on events
CAMEL-16570
kameletes: make it possible to discover kamelets at runtime
CAMEL-16562
Stale docs paragraph about org.apache.camel.component.bean.BeanInvocation
CAMEL-16558
openapi - Mark an endpoint as deprecated with camel-swagger-java or camel-openapi-java
CAMEL-16557
Catalog: add a free form key value map on components
CAMEL-16546
Camel-Solr: Support Map as body while inserting, updating etc.
CAMEL-16544
Camel-Solr: Support Query natively as producer operation
CAMEL-16540
camel-splunk - Include options to only send message body or headers
CAMEL-16539
splunk-hec: Option to include only the body or the headers
CAMEL-16535
camel-main - Add option to dump routes as XML on startup
CAMEL-16502
camel-restdsl-openapi-plugin - add basepath parameter
CAMEL-16493
camel-kamelet - Kamelet EIP
CAMEL-16478
Camel-AWS2-DDB: Add key scala type to endpoint options
CAMEL-16475
[camel-debezium] Upgrade to debezium 1.5.FINAL
CAMEL-16469
Camel-AWS2-S3 - Streaming upload: restart from the last index when using the progressive naming strategy
CAMEL-16451
camel-core - ExchangePooling for EIPs
CAMEL-16429
camel-core - Can we use unique TypeConverterLoader files for easy fat-jar assembly
CAMEL-16427
Jdbc based IdempotentRepository should handle orphan lock
CAMEL-16417
JT400 Component needs ability to reply to messages
CAMEL-16405
camel-sql | sql-stored component queryTimeout option not present
CAMEL-16394
Route Template local beans
CAMEL-16368
camel-salesforce: Add support for Composite sObject Collections API
CAMEL-16312
camel-core - Route template parameter - Specify type and valid input
CAMEL-16116
False positive validation forsome special SpringBoot properties
CAMEL-15655
Create camel-azure-cosmosdb component

Task (25)

CAMEL-16602
camel-kamelet-reify - Move this to camel3 project
CAMEL-16583
Missing code samples in camel-cxf docs
CAMEL-16576
Merge duplicate adoc and md files related to community topics
CAMEL-16528
camel-main - Remove autowire.properties as the has been removed
CAMEL-16524
Remove Camel-Crypto-CMS
CAMEL-16518
Deprecate Camel-APNS
CAMEL-16517
camel-bindy - Doc doesn't reflect FixeLengthRecord annotation changes after CAMEL-5958
CAMEL-16505
camel-pulsar: tests broken after core optimization
CAMEL-16495
Camel-AWS-S3 - Streaming upload: While restarting the listObject operation should be paginated
CAMEL-16466
Remove Camel-geocoder karaf feature
CAMEL-16464
Remove Camel-jsonpath karaf feature
CAMEL-16463
Remove Camel-Chunk Karaf feature
CAMEL-16456
Move usages of ActiveMQ broker service to test-infra
CAMEL-16443
Yarn failure in the docs module
CAMEL-16430
webhook: move the WebhookRoutePolicy from camel-k to the camel-webhook component
CAMEL-16424
yaml dsl: re-introduce support for parameters in endpoint definitions
CAMEL-16422
Remove Camel-Cassandraql Karaf feature
CAMEL-16409
camel-google-cloud-functions - Better description
CAMEL-16406
Camel-AWS-Secrets-Manager: Add replica to multiple regions operation
CAMEL-16398
Camel-AWS-DDBStreams: Don't take the stream existence for granted
CAMEL-16389
Remove json-smart
CAMEL-16375
Getting rid of json-smart as explicit and transitive dependency
CAMEL-16341
Having a middle folder for vertx components
CAMEL-16259
Karaf examples don't get deployed
CAMEL-15850
Upgrade to karaf 4.3

Test (6)

CAMEL-16613
camel-jetty and camel-netty-http - Do not run tests in parallel as CI server keeps randomly failing
CAMEL-16543
bindy: add test for countGrapheme
CAMEL-16508
camel-leveldb - Tests are failing due some google JAR
CAMEL-16506
Camel-Azure-Storage-queue: Add Azurite IT Tests
CAMEL-16445
openstack: add some wiremock local integration tests
CAMEL-16385
camel-spring-boot - JbpmTest fails

Keys

You can verify your download by following these procedures and using these KEYS.