Hey folks,
On 26.11.2022 09:51, Andrea Cosentino wrote:
In more than one situation aligning OSGi stuff have been really hard. Less
and less community members are helping on the Karaf side and releasing
sometimes have been slow down by these troubles. Also OSGi have been drop
in a lot of 3rd party libraries.
Focus from large organizations is now directed at their own runtimes
which leaves OSGi behind. It was expected.
I totally get your point about less maintainers, after all someone needs
to pay for their work, however automated generation of metadata is
almost free. What cost you time and money is validation of osgi metadata
and that's something which can be deferred to camel-karaf which will
construct feature files for most popular components used under osgi.
I am thinking of FasterXML/Jackson which has bundle packaging in their
poms, produces manifest entries, but does not verify them as a part of
every day or even release build.
Best,
Łukasz
Cheers
Il ven 25 nov 2022, 15:06 Nicolas Filotto <nfilo...@talend.com> ha scritto:
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/>