camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <>
Subject Re: [DISCUSS] - Trunk as Camel 3.0
Date Mon, 26 Sep 2011 08:52:01 GMT
On Sat, Sep 24, 2011 at 10:30 PM, Christian Müller
<> wrote:
> That's exactly what I think, Hadrian.
> A minor release has not to be 100% backwarts compatiple. Of course we try
> our best to be 100% backwarts compatible in minor releases, but it should
> not be a problem if we aren't, as long as we document the not backwarts
> compatible changes.

The API changes has not been fully documented. In fact there is a
"disclaimer" in the release notes, saying something like.

Hey we have changed the API a lot, and we kinda got lost in this
process. We are sorry if you hit any API breakings.
But tell us and we will try to add some stubs in the next release.

> A micro/bugfix release has to be 100% backwarts compatible of course.

The current 2.8.x branch is not 100% backwards compatible. There is
API changes committed.

> I prefer to release a 2.9.0 version after Christian S. (an may other) 99%
> backwarts compatible changes/refactorings are done. Afterwards we can start
> to develop 3.0.0 on trunk - with the time to play a bit with our new ideas
> and the freedom to break existing APIs.

Well if Christian did stop right now doing anymore API changes, then
we may have a slight chance to not piss-off to many end users.
But there is JIRA ticket assigned to him targeted for Camel 2.9.0,
where he wants to do bigger API-breakings in the model / SPI packages.

Likewise he moved classes / deleted classes (from camel-core) without
marking any old classes as @deprecated, which gives people a chance to
migrate over a amble period of time. So we end up in a catch-22

So Camel end users may have developed in-house components /
interceptors / management tooling / or whatever for Camel which you
want to use for existing in production Camel 2.8 projects. And then
also for new projects using Camel 2.9+. For that to work out, you
would need to maintain 2 branches of your custom stuff as its not
compatible with both 2.8 and 2.9+.

PS: We are talking about changes in camel-core, which affect
everybody. And hence we should do this with much more care.

> Christian
> Sent from a mobile device
> Am 24.09.2011 06:48 schrieb "Hadrian Zbarcea" <>:

Claus Ibsen
Twitter: davsclaus, fusenews
Author of Camel in Action:

View raw message