May it was not the best idea to call this thread "[DISCUSS] Rules for
Backports". What I had in mind was more like "[DISCUSS] Guidelines for
Backports". Also my *NO* for some backports seems to be strong, but not for
all...
Because we had a few discussions/questions in the last weeks about some
backports (which shows to me we had different understandings how it should
work) and I didn't found any guideline/reference on the ASF sites, I thought
and still think it's a good idea to discuss these different preferences and
come out of this discussion with something like a guideline. And I also
think this guideline will be useful for our new committers to follow our
development guidelines...
And by the way, I also don't want to change our CTR model [1] to a RTC model
[2]...

I think the backports we are discussing are:
- Dependency upgrade in minor/major version number
- Improvement which didn't change the API or behavior
- New feature which didn't change the API or behavior

Claus proposal in a private conversation was to have at least a [HEADS UP]
for such kind of change which are not trivial, big or edge cases. Then all
developers have the change to express their fears if there are ones. I think
this is a good balance to make sure we release really stable maintenance
releases for our users and give them in the same time all the improvements
and new features from trunk *IF* they doesn't change the API or behavior.

[1] http://apache.org/foundation/glossary.html#CommitThenReview
[2] http://apache.org/foundation/glossary.html#ReviewThenCommit

Best,
Christian

On Sun, Oct 16, 2011 at 9:14 PM, Christian Müller <
christian.muel...@gmail.com> wrote:

> Hi,
>
> I doesn't have the feeling we finished the discussion "Camel 2 8 2 Reason
> for the many backports" here [1]. So, please participate in this discussion
> and share your opinions.
>
> My goal is to document the rules for backports for all committers
> (especially for the new ones) here [2].
>
> I like Claus idea to have a question about this in the next survey, but I
> think this is not done in short time (I don't know how to do it). Until we
> know what (most of) our users want, I propose the following rules:
> - Dependency upgrade in micro version number (e.g. 1.0.0 to 1.0.2) -> YES
> - Dependency upgrade in minor version number (e.g. 1.0.0 to 1.1.0) -> NO ->
> For such kind of change, we had also to make sure the dependent library
> didn't change the API or behavior in the parts the user can configure (in
> Spring) and refer to it in the URI with (or without) the # symbol. I think
> we cannot ensure this each time.
> - Dependency upgrade in major version number (e.g. 1.0.0 to 2.0.0) -> NO
>
> - Bug fix which didn't change the API or behavior -> YES
> - Bug fix which change the API or behavior -> NO -> Document the issue on
> the known issues section on the release notes
>
> - Improvement which didn't change the API or behavior -> MAY BE -> We
> should discuss such kind of backports before. I would prefer NOT to backport
> such kind of change (e.g. improvement in an existing component). If there is
> a real need to backport it and we can make sure it cannot break existing
> code (e.g. really small change), we can do it exceptionally.
> - Improvement which changes the API or behavior -> NO
>
> - New feature which didn't change the API or behavior -> MAY BE -> We
> should discuss such kind of backports before. If it cannot break existing
> code (e.g. it's a new component), why not. Otherwise I would prefer NOT to
> backport such kind of change (e.g. new feature in an existing component).
> - New feature which change the API or behavior -> NO
>
> - Refactoring -> MAY BE -> We should discuss such kind of backports before.
> I would prefer NOT to backport bigger refactorings. For small refactoring
> which are needed for further backports it could be acceptable.
>
> Best,
> Christian
>
> [1]
> http://camel.465427.n5.nabble.com/Camel-2-8-2-Reason-for-the-many-backports-td4821501.html
> [2]
> http://camel.apache.org/merging-commits-from-trunk-to-fixes-branch.html

Reply via email to