Hi This is a proposal for a plan for Apache Camel 4 and how this can affect Camel 3.
Summary ======= The overall scope is that the leap from Camel 3 to 4 is a lot less than going from Camel 2 to 3. And that we have a timebox approach where we aim for a 6 month period of work. The need for Camel v4 is mainly driven by Java open source projects migrating to jakarta APIs, and to keep up with popular runtimes a la Spring Boot and Quarkus, and to jump to the next major Java version. Goals ===== a) Primary Goals 1) Migrate from javax -> jakarta (JEE 10) 2) Java 17 as base line 3) Spring Framework 6 4) Spring Boot 3 5) Quarkus 3 b) Release Goals 6) Release only what is ready (JEE10 / Java17 etc) This means that Camel components that are not ready (yet) will be dropped in a release until they are ready. 7) Release core + spring boot together 8) Release camel-karaf independently (like we do for other Camel projects) c) Major Goals 9) Support Java 17 features such as records, multiline strings, and what else 10) EIP model without JAXB dependency 11) Endpoint URI parsing (do not use java.net.URI) 12) Deprecate message.getIn() use getMessage() instead 13) Deprecate camel-cdi 14) Deprecate/Remove MDC logging (complex and buggy and does not fit modern app development) d) Minor Goals 15) Remove MEP InOptionalOut (not in use) 16) Remove JUnit 4 support Timeline ======= The timelines are ESTIMATES and the number of releases can vary depending on need and how far we are in the process Feb 2023: Camel 4.0 milestone 1 Mar 2023: Camel 4.0 milestone 2 Apr 2023: Camel 4.0 RC1 May 2023: Camel 4.0 Aug 2023: Camel 4.1 LTS Oct 2023: Camel 4.2 Dec 2023: Camel 4.3 LTS The plan is to start working on Camel 4 after the next Camel 3 LTS release, e.g. 3.20 which is planned for next month (December 2022). For Camel 3 then we slow down in releases and provide 2 LTS releases per year. For example a scheduled could look as follows: Dec 2022: Camel 3.20 LTS Jun 2023: Camel 3.21 LTS Dec 2023: Camel 3.22 LTS (last Camel v3 release, supported until Dec 2024) ??? Jun 2024: Camel 3.23 LTS (last Camel v3 release, supported until Dec 2025) ???? Each Camel 3 LTS release will likely also contain less new features and improvements as previously, as our focus and work shifts to Camel v4 instead.