<commit_before>= Apache Camel 3.x Upgrade Guide

This document is for helping you upgrade your Apache Camel application
from Camel 3.x to 3.y. For example if you are upgrading Camel 3.0 to 3.2, then you should follow the guides
from both 3.0 to 3.1 and 3.1 to 3.2.

== Upgrading Camel 3.16 to 3.17

=== camel-health

Camel now reports DOWN when Camel is being stopped, during the graceful shutdown process.
This ensures that Camel reports that it's not ready to accept new traffic.

=== camel-main

Added method `findRouteResourcesFromDirectory` to `org.apache.camel.main.RoutesCollector`.

=== camel-yaml-dsl

Removed _endpoint-dsl_ notation which was not well known,
causing problems for tools, and yaml-validation against the json-schema standard.

For example the following notation:

[source,yaml]
----
- from:
    uri: "direct:start"
    steps:
      - to:
          kafka:
            topic: cheese
            brokers: mykafka:1234
----

Should be change to:

[source,yaml]
----
- from:
    uri: "direct:start"
    steps:
      - to:
          uri: "kafka:cheese?brokers=mykafka:1234"
----

Or

[source,yaml]
----
- from:
    uri: "direct:start"
    steps:
      - to:
          uri: "kafka"
          parameters:
            topic: "cheese"
            brokers: "mykafka:1234"
----

=== camel-kafka

The option `autoCommitOnStop` was removed from the Camel Kafka component. When using `autoCommitEnable` (which is enabled by default) the Kafka consumer will automatically commit on close.

When the `autoCommitEnable` is turned off, the component issues a call to the respective commit manager during shutdown.

Asynchronous, Synchronous or NO-OP commit policies from the former `autoCommitOnStop` are now determined by automatically by the value of the `kafkaManualCommitFactory` option:

* NO-OP is the default behavior if no `kafkaManualCommitFactory` is provided
* Async can be set using `kafkaManualCommitFactory=#class:org.apache.camel.component.kafka.consumer.DefaultKafkaManualAsyncCommitFactory`
* Sync can be set using `kafkaManualCommitFactory=#class:org.apache.camel.component.kafka.consumer.DefaultKafkaManualCommitFactory`


<commit_msg>CAMEL-17879: added documentation about components that were removed<commit_after>= Apache Camel 3.x Upgrade Guide

This document is for helping you upgrade your Apache Camel application
from Camel 3.x to 3.y. For example if you are upgrading Camel 3.0 to 3.2, then you should follow the guides
from both 3.0 to 3.1 and 3.1 to 3.2.

== Upgrading Camel 3.16 to 3.17

=== camel-health

Camel now reports DOWN when Camel is being stopped, during the graceful shutdown process.
This ensures that Camel reports that it's not ready to accept new traffic.

=== camel-main

Added method `findRouteResourcesFromDirectory` to `org.apache.camel.main.RoutesCollector`.

=== camel-yaml-dsl

Removed _endpoint-dsl_ notation which was not well known,
causing problems for tools, and yaml-validation against the json-schema standard.

For example the following notation:

[source,yaml]
----
- from:
    uri: "direct:start"
    steps:
      - to:
          kafka:
            topic: cheese
            brokers: mykafka:1234
----

Should be change to:

[source,yaml]
----
- from:
    uri: "direct:start"
    steps:
      - to:
          uri: "kafka:cheese?brokers=mykafka:1234"
----

Or

[source,yaml]
----
- from:
    uri: "direct:start"
    steps:
      - to:
          uri: "kafka"
          parameters:
            topic: "cheese"
            brokers: "mykafka:1234"
----

=== camel-kafka

The option `autoCommitOnStop` was removed from the Camel Kafka component. When using `autoCommitEnable` (which is enabled by default) the Kafka consumer will automatically commit on close.

When the `autoCommitEnable` is turned off, the component issues a call to the respective commit manager during shutdown.

Asynchronous, Synchronous or NO-OP commit policies from the former `autoCommitOnStop` are now determined by automatically by the value of the `kafkaManualCommitFactory` option:

* NO-OP is the default behavior if no `kafkaManualCommitFactory` is provided
* Async can be set using `kafkaManualCommitFactory=#class:org.apache.camel.component.kafka.consumer.DefaultKafkaManualAsyncCommitFactory`
* Sync can be set using `kafkaManualCommitFactory=#class:org.apache.camel.component.kafka.consumer.DefaultKafkaManualCommitFactory`

=== camel-cdi

The support for the Camel XML configuration import, that had been marked as deprecated in previous releases, was removed.

=== Deprecated Components

The following components that had been marked as deprecated, were removed in this release:

* camel-atomix
* camel-beanstalk
* camel-beanio
* camel-etcd 
* camel-elsql 
* camel-ganglia 
* camel-nsq 
* camel-hystrix 
* camel-jing 
* camel-leveldb-legacy 
* camel-msv 
* camel-nagios 
* camel-ribbon 
* camel-sip 
* camel-soroush 
* camel-tagsoup 
* camel-yammer

{'fraction_non_alphanumeric': 0.0863441518677281, 'fraction_numerical': 0.014492753623188406, 'mean_word_length': 3.5244690674053554, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6346685', 'n_tokens_mistral': 1562, 'n_tokens_neox': 1477, 'n_words': 532}