Hi Claus,

That sounds like a good plan, here are the first questions that I have in mind:

  *   Why do we need to keep on releasing new LTS versions of Camel 3?
  *   Why not simply consider 3.20 as the last LTS version of Camel 3 and only 
maintain it?
  *   What kind of features/improvements do you want to add to Camel 3 after 
releasing 3.20?
  *   If camel-karaf is released independently, when will it be released? My 
fear is that it will be desynchronized with Camel very quickly.
  *

With 2 LTS of Camel 3 and 2 LTS of Camel 4 per year, it would mean 4 LTS 
versions to support at the same time, don't you think that it is too many?

I'm wondering if it is not a good opportunity to rethink our LTS version 
policy. Could you please remind me why we decided to have this policy (2 LTS 
versions per year supported for one year)?

I would personally prefer to have:

  *   only one LTS version per year (or 2 if we keep on releasing LTS versions 
of Camel 3) but supported for at least 2 years instead of one otherwise Camel 
users are less inclined to migrate to the latest LTS version because 1 year of 
support doesn't really worth the migration effort, especially for big projects 
where the migration takes several months.
  *   only propose milestone versions or equivalent between 2 LTS versions for 
early adopters to add more clarity on which versions are LTS. Indeed, for 
example, the next LTS version will be 3.20 while we could expect 3.22 to be the 
next one after 3.14 and 3.18. With this logic, instead of releasing 3.19 and 
3.20, we could have released 3.19 M1 and 3.19, it would then be obvious to the 
Camel users that only 3.19 is an LTS version as all final versions would then 
be LTS versions.

What do you think of it?

Regards,
Nicolas
________________________________
From: Claus Ibsen <claus.ib...@gmail.com>
Sent: Friday, November 25, 2022 11:42
To: dev <dev@camel.apache.org>
Subject: Camel 4 roadmap and affect on Camel 3

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.

As a recipient of an email from Talend, your contact personal data will be on 
our systems. Please see our privacy notice. <https://www.talend.com/privacy/>


Reply via email to