Well, I would expect the core to include all the core modules. So
"camel-core" should deliver on this. If there is need for a "smaller
core", than the "bigger core" should have it as a dependency. This leads
to awkward naming, because we have now got a "core core". For this "core
core" I would go with the naming "camel-base" or "camel-runtime".
-Ralf
On 3/6/19 4:01 AM, Quinn Stevenson wrote:
I’d prefer to have camel-core act like 2.x as well to minimize surprises as
much as possible when upgrading.
Maybe the new “lite” module could be called something like “camel-engine”?
On Mar 5, 2019, at 7:49 AM, Steve Huston <[email protected]> wrote:
My assumption is that camel-core (all in one) doesn't have any negative affect
on Camel itself and that breaking it up is motivated by a benefit to those
projects that want to reduce size.
If that is true, then I recommend leaving camel-core as it is in 2.x - that reduces
surprises to all users and prevents a huge bunch of "hey, you broke my app in
3.0" emails to the list. Those applications that want to reduce size can make some
simple dependency changes.
As a more personal preference, please don't call anything "-lite" - it is way overused
and smacks of "cheap, crappy alternative to the real one." Call it camel-base or
camel-minimal.
-Steve
-----Original Message-----
From: Claus Ibsen <[email protected]>
Sent: Tuesday, March 05, 2019 3:49 AM
To: [email protected]
Subject: [FEEDBACK] - Apache Camel 3 - camel-core vs camel-core-lite vs
camel-core-all
Hi
As you may know Apache Camel 3 development is underway, and part of the
work is to modularize camel-core into smaller modules, where the major
work has been done for the M1 release. This means that 95% of the core
components from camel-core has been moved out, eg camel-log, camel-
seda, camel-direct etc.
Now we want to have a camel-core dependency that are tiny and would like
feedback on different styles
1)
Keep camel-core dependency as in Camel 2.x which has dependency on all
the core components (known as camel-core-all) AND introduce a new camel-
core-lite that has minimal dependencies so you can pick and choose only the
dependencies you need.
2)
Keep camel-core as a lite dependency and introduce a new camel-core-all
that has all the core components and is similar to camel 2.x. This means that
users would need to migrate from using camel-core => camel-core-all OR add
only the extra core components they use, eg camel-direct, camel-seda, etc.
3)
Do #1 and move towards #2 in the future.
We can add a new camel-core-all dependency that has all the core
components etc, and then let camel-core depend on this dependency. And
then we can also add the camel-core-lite module as well. Then if we one day
switch camel-core from the ALL to the LITE style, we can do that out of the
box, for example for Camel 4 ;)
Note: One issue with the name camel-core-all is that it smells like it has all
the
core modules, but it will not include camel-core-osgi or camel-core-xml as
they are only needed when you add camel-spring or camel-blueprint (for
XML and/or OSGi support).
Well just thinking out loud a bit, here in the morning after a couple of cup of
coffees.
Any thoughts and feedback is much welcome.
--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2