Understanding release and branch differences

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Understanding release and branch differences

taher
Hi everyone,

I would like to understand the exact difference between branch and release
strategies or guidelines. I am wondering about questions like:

- What is the difference between 12.04 and 12.04.03 for example
- How long do you maintain each release of a branch
- What should happen to production environments when a new release of a
branch is issued. Should the vendor upgrade to the new release?
- Is there a risk of pulling directly from the branch vs release? stability
issues?
- How many releases are there per branch? What tests should they pass to be
considered releases?

I appreciate your insights into this issue.

Taher Alkhateeb
Reply | Threaded
Open this post in threaded view
|

Re: Understanding release and branch differences

Jacques Le Roux
Administrator

Le 27/10/2014 08:31, Taher Alkhateeb a écrit :
> Hi everyone,
>
> I would like to understand the exact difference between branch and release
> strategies or guidelines. I am wondering about questions like:
>
> - What is the difference between 12.04 and 12.04.03 for example

R12.04 is a branch in the project. From time to time a release is produced from this branch, until the branch is no longer supported.
Here supported means that bug fixes are no longer  backported from the trunk to this branch

> - How long do you maintain each release of a branch

We don't maintain releases, they are frozen when packaged. We maintain branches as explained above
Most of the time it's around 3 years, for instance the R11.04 branch is no longer supported
This is explained a bit at https://ofbiz.apache.org/download.html
Did you read it? If yes, what did you miss there (apart the end of support dates)
BTW on this subject you might be interested by these discussions
http://markmail.org/message/rwvvvkvd56sw2lfb
http://markmail.org/message/ta2b6tlyidvaeaap

> - What should happen to production environments when a new release of a
> branch is issued. Should the vendor upgrade to the new release?

That's indeed a possibility, or you can select the patches to apply manually in your custom project, maybe easier if you want to pick only bug fixes
and few new features.

> - Is there a risk of pulling directly from the branch vs release? stability
> issues?

Not at all, only the trunk receives new features. Once created the releases branches receives only bug fixes.
In some exceptional cases, when there is total consensus in the dev community, some new features are applied to fresh new branches.

> - How many releases are there per branch? What tests should they pass to be
> considered releases?
For the number of releases per branch, it depends on the branch (for instance when a vulnerability is fixed a release is "immediately" packaged),
normally it's around 5 or 6.
They pass the CI tests which run at (for instance) http://ci.apache.org/builders/ofbiz-branch13
You might have a look at all the results of the tests there http://ci.apache.org/projects/ofbiz/logs/
Also before the package is officialy released, a vote is done and people participating are testing the releases in their environment, not only CI tests.

HTH

Jacques


>
> I appreciate your insights into this issue.
>
> Taher Alkhateeb
>
Reply | Threaded
Open this post in threaded view
|

Re: Understanding release and branch differences

taher
Hi Jacques,

Thank you for your valuable input below and it was good to go through the links. It seem there is no ambiguity in the release _mechanism_ and how it works. However, I am trying to understand _purpose_ with the specific context of OFBiz .

Let me try to ask another way: Why would I pull 13.07.01 instead of pulling the latest revision of the 13.07 branch when working for a new project for example? When would it make since to go for the 13.07.XX instead of just the latest revision given that you already indicated that the whole branch is considered stable?

Taher Alkhateeb

----- Original Message -----

From: "Jacques Le Roux" <[hidden email]>
To: [hidden email]
Sent: Monday, 27 October, 2014 1:20:18 PM
Subject: Re: Understanding release and branch differences


Le 27/10/2014 08:31, Taher Alkhateeb a écrit :
> Hi everyone,
>
> I would like to understand the exact difference between branch and release
> strategies or guidelines. I am wondering about questions like:
>
> - What is the difference between 12.04 and 12.04.03 for example

R12.04 is a branch in the project. From time to time a release is produced from this branch, until the branch is no longer supported.
Here supported means that bug fixes are no longer backported from the trunk to this branch

> - How long do you maintain each release of a branch

We don't maintain releases, they are frozen when packaged. We maintain branches as explained above
Most of the time it's around 3 years, for instance the R11.04 branch is no longer supported
This is explained a bit at https://ofbiz.apache.org/download.html 
Did you read it? If yes, what did you miss there (apart the end of support dates)
BTW on this subject you might be interested by these discussions
http://markmail.org/message/rwvvvkvd56sw2lfb 
http://markmail.org/message/ta2b6tlyidvaeaap 

> - What should happen to production environments when a new release of a
> branch is issued. Should the vendor upgrade to the new release?

That's indeed a possibility, or you can select the patches to apply manually in your custom project, maybe easier if you want to pick only bug fixes
and few new features.

> - Is there a risk of pulling directly from the branch vs release? stability
> issues?

Not at all, only the trunk receives new features. Once created the releases branches receives only bug fixes.
In some exceptional cases, when there is total consensus in the dev community, some new features are applied to fresh new branches.

> - How many releases are there per branch? What tests should they pass to be
> considered releases?
For the number of releases per branch, it depends on the branch (for instance when a vulnerability is fixed a release is "immediately" packaged),
normally it's around 5 or 6.
They pass the CI tests which run at (for instance) http://ci.apache.org/builders/ofbiz-branch13 
You might have a look at all the results of the tests there http://ci.apache.org/projects/ofbiz/logs/ 
Also before the package is officialy released, a vote is done and people participating are testing the releases in their environment, not only CI tests.

HTH

Jacques


>
> I appreciate your insights into this issue.
>
> Taher Alkhateeb
>

Reply | Threaded
Open this post in threaded view
|

Re: Understanding release and branch differences

Adrian Crum-3
Binary releases are a convenience for end users. The branch will always
be more up-to-date than a binary release.

Adrian Crum
Sandglass Software
www.sandglass-software.com

On 10/27/2014 8:14 PM, Taher Alkhateeb wrote:

> Hi Jacques,
>
> Thank you for your valuable input below and it was good to go through the links. It seem there is no ambiguity in the release _mechanism_ and how it works. However, I am trying to understand _purpose_ with the specific context of OFBiz .
>
> Let me try to ask another way: Why would I pull 13.07.01 instead of pulling the latest revision of the 13.07 branch when working for a new project for example? When would it make since to go for the 13.07.XX instead of just the latest revision given that you already indicated that the whole branch is considered stable?
>
> Taher Alkhateeb
>
> ----- Original Message -----
>
> From: "Jacques Le Roux" <[hidden email]>
> To: [hidden email]
> Sent: Monday, 27 October, 2014 1:20:18 PM
> Subject: Re: Understanding release and branch differences
>
>
> Le 27/10/2014 08:31, Taher Alkhateeb a écrit :
>> Hi everyone,
>>
>> I would like to understand the exact difference between branch and release
>> strategies or guidelines. I am wondering about questions like:
>>
>> - What is the difference between 12.04 and 12.04.03 for example
>
> R12.04 is a branch in the project. From time to time a release is produced from this branch, until the branch is no longer supported.
> Here supported means that bug fixes are no longer backported from the trunk to this branch
>
>> - How long do you maintain each release of a branch
>
> We don't maintain releases, they are frozen when packaged. We maintain branches as explained above
> Most of the time it's around 3 years, for instance the R11.04 branch is no longer supported
> This is explained a bit at https://ofbiz.apache.org/download.html
> Did you read it? If yes, what did you miss there (apart the end of support dates)
> BTW on this subject you might be interested by these discussions
> http://markmail.org/message/rwvvvkvd56sw2lfb
> http://markmail.org/message/ta2b6tlyidvaeaap
>
>> - What should happen to production environments when a new release of a
>> branch is issued. Should the vendor upgrade to the new release?
>
> That's indeed a possibility, or you can select the patches to apply manually in your custom project, maybe easier if you want to pick only bug fixes
> and few new features.
>
>> - Is there a risk of pulling directly from the branch vs release? stability
>> issues?
>
> Not at all, only the trunk receives new features. Once created the releases branches receives only bug fixes.
> In some exceptional cases, when there is total consensus in the dev community, some new features are applied to fresh new branches.
>
>> - How many releases are there per branch? What tests should they pass to be
>> considered releases?
> For the number of releases per branch, it depends on the branch (for instance when a vulnerability is fixed a release is "immediately" packaged),
> normally it's around 5 or 6.
> They pass the CI tests which run at (for instance) http://ci.apache.org/builders/ofbiz-branch13
> You might have a look at all the results of the tests there http://ci.apache.org/projects/ofbiz/logs/
> Also before the package is officialy released, a vote is done and people participating are testing the releases in their environment, not only CI tests.
>
> HTH
>
> Jacques
>
>
>>
>> I appreciate your insights into this issue.
>>
>> Taher Alkhateeb
>>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: Understanding release and branch differences

Jacques Le Roux
Administrator
You can't say it with less words

Thanks Adrian :)

Jacques

Le 28/10/2014 04:30, Adrian Crum a écrit :

> Binary releases are a convenience for end users. The branch will always be more up-to-date than a binary release.
>
> Adrian Crum
> Sandglass Software
> www.sandglass-software.com
>
> On 10/27/2014 8:14 PM, Taher Alkhateeb wrote:
>> Hi Jacques,
>>
>> Thank you for your valuable input below and it was good to go through the links. It seem there is no ambiguity in the release _mechanism_ and how
>> it works. However, I am trying to understand _purpose_ with the specific context of OFBiz .
>>
>> Let me try to ask another way: Why would I pull 13.07.01 instead of pulling the latest revision of the 13.07 branch when working for a new project
>> for example? When would it make since to go for the 13.07.XX instead of just the latest revision given that you already indicated that the whole
>> branch is considered stable?
>>
>> Taher Alkhateeb
>>
>> ----- Original Message -----
>>
>> From: "Jacques Le Roux" <[hidden email]>
>> To: [hidden email]
>> Sent: Monday, 27 October, 2014 1:20:18 PM
>> Subject: Re: Understanding release and branch differences
>>
>>
>> Le 27/10/2014 08:31, Taher Alkhateeb a écrit :
>>> Hi everyone,
>>>
>>> I would like to understand the exact difference between branch and release
>>> strategies or guidelines. I am wondering about questions like:
>>>
>>> - What is the difference between 12.04 and 12.04.03 for example
>>
>> R12.04 is a branch in the project. From time to time a release is produced from this branch, until the branch is no longer supported.
>> Here supported means that bug fixes are no longer backported from the trunk to this branch
>>
>>> - How long do you maintain each release of a branch
>>
>> We don't maintain releases, they are frozen when packaged. We maintain branches as explained above
>> Most of the time it's around 3 years, for instance the R11.04 branch is no longer supported
>> This is explained a bit at https://ofbiz.apache.org/download.html
>> Did you read it? If yes, what did you miss there (apart the end of support dates)
>> BTW on this subject you might be interested by these discussions
>> http://markmail.org/message/rwvvvkvd56sw2lfb
>> http://markmail.org/message/ta2b6tlyidvaeaap
>>
>>> - What should happen to production environments when a new release of a
>>> branch is issued. Should the vendor upgrade to the new release?
>>
>> That's indeed a possibility, or you can select the patches to apply manually in your custom project, maybe easier if you want to pick only bug fixes
>> and few new features.
>>
>>> - Is there a risk of pulling directly from the branch vs release? stability
>>> issues?
>>
>> Not at all, only the trunk receives new features. Once created the releases branches receives only bug fixes.
>> In some exceptional cases, when there is total consensus in the dev community, some new features are applied to fresh new branches.
>>
>>> - How many releases are there per branch? What tests should they pass to be
>>> considered releases?
>> For the number of releases per branch, it depends on the branch (for instance when a vulnerability is fixed a release is "immediately" packaged),
>> normally it's around 5 or 6.
>> They pass the CI tests which run at (for instance) http://ci.apache.org/builders/ofbiz-branch13
>> You might have a look at all the results of the tests there http://ci.apache.org/projects/ofbiz/logs/
>> Also before the package is officialy released, a vote is done and people participating are testing the releases in their environment, not only CI
>> tests.
>>
>> HTH
>>
>> Jacques
>>
>>
>>>
>>> I appreciate your insights into this issue.
>>>
>>> Taher Alkhateeb
>>>
>>
>>
>
Reply | Threaded
Open this post in threaded view
|

Re: Understanding release and branch differences

taher
Adrian, Jacques,

Thank you! It all clicked now.

Taher Alkhateeb
On Oct 28, 2014 11:57 PM, "Jacques Le Roux" <[hidden email]>
wrote:

> You can't say it with less words
>
> Thanks Adrian :)
>
> Jacques
>
> Le 28/10/2014 04:30, Adrian Crum a écrit :
>
>> Binary releases are a convenience for end users. The branch will always
>> be more up-to-date than a binary release.
>>
>> Adrian Crum
>> Sandglass Software
>> www.sandglass-software.com
>>
>> On 10/27/2014 8:14 PM, Taher Alkhateeb wrote:
>>
>>> Hi Jacques,
>>>
>>> Thank you for your valuable input below and it was good to go through
>>> the links. It seem there is no ambiguity in the release _mechanism_ and how
>>> it works. However, I am trying to understand _purpose_ with the specific
>>> context of OFBiz .
>>>
>>> Let me try to ask another way: Why would I pull 13.07.01 instead of
>>> pulling the latest revision of the 13.07 branch when working for a new
>>> project for example? When would it make since to go for the 13.07.XX
>>> instead of just the latest revision given that you already indicated that
>>> the whole branch is considered stable?
>>>
>>> Taher Alkhateeb
>>>
>>> ----- Original Message -----
>>>
>>> From: "Jacques Le Roux" <[hidden email]>
>>> To: [hidden email]
>>> Sent: Monday, 27 October, 2014 1:20:18 PM
>>> Subject: Re: Understanding release and branch differences
>>>
>>>
>>> Le 27/10/2014 08:31, Taher Alkhateeb a écrit :
>>>
>>>> Hi everyone,
>>>>
>>>> I would like to understand the exact difference between branch and
>>>> release
>>>> strategies or guidelines. I am wondering about questions like:
>>>>
>>>> - What is the difference between 12.04 and 12.04.03 for example
>>>>
>>>
>>> R12.04 is a branch in the project. From time to time a release is
>>> produced from this branch, until the branch is no longer supported.
>>> Here supported means that bug fixes are no longer backported from the
>>> trunk to this branch
>>>
>>>  - How long do you maintain each release of a branch
>>>>
>>>
>>> We don't maintain releases, they are frozen when packaged. We maintain
>>> branches as explained above
>>> Most of the time it's around 3 years, for instance the R11.04 branch is
>>> no longer supported
>>> This is explained a bit at https://ofbiz.apache.org/download.html
>>> Did you read it? If yes, what did you miss there (apart the end of
>>> support dates)
>>> BTW on this subject you might be interested by these discussions
>>> http://markmail.org/message/rwvvvkvd56sw2lfb
>>> http://markmail.org/message/ta2b6tlyidvaeaap
>>>
>>>  - What should happen to production environments when a new release of a
>>>> branch is issued. Should the vendor upgrade to the new release?
>>>>
>>>
>>> That's indeed a possibility, or you can select the patches to apply
>>> manually in your custom project, maybe easier if you want to pick only bug
>>> fixes
>>> and few new features.
>>>
>>>  - Is there a risk of pulling directly from the branch vs release?
>>>> stability
>>>> issues?
>>>>
>>>
>>> Not at all, only the trunk receives new features. Once created the
>>> releases branches receives only bug fixes.
>>> In some exceptional cases, when there is total consensus in the dev
>>> community, some new features are applied to fresh new branches.
>>>
>>>  - How many releases are there per branch? What tests should they pass
>>>> to be
>>>> considered releases?
>>>>
>>> For the number of releases per branch, it depends on the branch (for
>>> instance when a vulnerability is fixed a release is "immediately" packaged),
>>> normally it's around 5 or 6.
>>> They pass the CI tests which run at (for instance)
>>> http://ci.apache.org/builders/ofbiz-branch13
>>> You might have a look at all the results of the tests there
>>> http://ci.apache.org/projects/ofbiz/logs/
>>> Also before the package is officialy released, a vote is done and people
>>> participating are testing the releases in their environment, not only CI
>>> tests.
>>>
>>> HTH
>>>
>>> Jacques
>>>
>>>
>>>
>>>> I appreciate your insights into this issue.
>>>>
>>>> Taher Alkhateeb
>>>>
>>>>
>>>
>>>
>>