[dpdk-dev,v2] update stable releases roadmap

Message ID 20180410232813.2534-1-thomas@monjalon.net (mailing list archive)
State Not Applicable, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Thomas Monjalon April 10, 2018, 11:28 p.m. UTC
  Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
Patch for the website (to web@dpdk.org) Cc'ed to dev@dpdk.org

v2:
	- more volunteers
	- propose to do .1 release after -rc1 of next branch.

---
 dev/roadmap.html | 37 ++++++++++++++++++++++++++++++++-----
 1 file changed, 32 insertions(+), 5 deletions(-)
  

Comments

Luca Boccassi April 11, 2018, 10:04 a.m. UTC | #1
On Wed, 2018-04-11 at 01:28 +0200, Thomas Monjalon wrote:
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
> Patch for the website (to web@dpdk.org) Cc'ed to dev@dpdk.org
> 
> v2:
> 	- more volunteers
> 	- propose to do .1 release after -rc1 of next branch.

Acked-by: Luca Boccassi <bluca@debian.org>
  
Christian Ehrhardt April 11, 2018, 10:43 a.m. UTC | #2
On Wed, Apr 11, 2018 at 1:28 AM, Thomas Monjalon <thomas@monjalon.net>
wrote:

> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
> Patch for the website (to web@dpdk.org) Cc'ed to dev@dpdk.org
>
> v2:
>         - more volunteers
>         - propose to do .1 release after -rc1 of next branch.
>
> ---
>  dev/roadmap.html | 37 ++++++++++++++++++++++++++++++++-----
>  1 file changed, 32 insertions(+), 5 deletions(-)
>
> [...]
> +               <tr>
> +                       <td>18.05.1</td>
> +                       <td>June 29, 2018</td>
> +                       <td>October 2018</td>
> +                       <td>Christian Ehrhardt</td>
> +               </tr>
>

Acked-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
  
Kevin Traynor April 11, 2018, 3:10 p.m. UTC | #3
On 04/11/2018 12:28 AM, Thomas Monjalon wrote:
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
> Patch for the website (to web@dpdk.org) Cc'ed to dev@dpdk.org
> 
> v2:
> 	- more volunteers
> 	- propose to do .1 release after -rc1 of next branch.
> 
> ---

Acked-by: Kevin Traynor <ktraynor@redhat.com>
  
Ferruh Yigit April 18, 2018, 9:05 a.m. UTC | #4
On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
> -	<p>Typically a new stable release version follows a mainline release
> -	by 1-2 weeks, depending on the test results.
> +	<p>The first stable release (.1) of a branch should follow
> +	its mainline release (.0) by at least two months,
> +	after the first release candidate (-rc1) of the next branch.

Hi Thomas,

What this change suggest? To be able to backport patches from rc1?
  
Thomas Monjalon April 18, 2018, 9:14 a.m. UTC | #5
18/04/2018 11:05, Ferruh Yigit:
> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
> > -	<p>Typically a new stable release version follows a mainline release
> > -	by 1-2 weeks, depending on the test results.
> > +	<p>The first stable release (.1) of a branch should follow
> > +	its mainline release (.0) by at least two months,
> > +	after the first release candidate (-rc1) of the next branch.
> 
> Hi Thomas,
> 
> What this change suggest? To be able to backport patches from rc1?

Yes, it is the proposal we discussed earlier.
We can wait one week after RC1 to get some validation confirmation.
Do you agree?
  
Ferruh Yigit April 18, 2018, 12:28 p.m. UTC | #6
On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
> 18/04/2018 11:05, Ferruh Yigit:
>> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
>>> -	<p>Typically a new stable release version follows a mainline release
>>> -	by 1-2 weeks, depending on the test results.
>>> +	<p>The first stable release (.1) of a branch should follow
>>> +	its mainline release (.0) by at least two months,
>>> +	after the first release candidate (-rc1) of the next branch.
>>
>> Hi Thomas,
>>
>> What this change suggest? To be able to backport patches from rc1?
> 
> Yes, it is the proposal we discussed earlier.
> We can wait one week after RC1 to get some validation confirmation.
> Do you agree?

This has been discussed in tech-board, what I remember the decision was to wait
the release to backport patches into stable tree.
  
Thomas Monjalon April 18, 2018, 1:28 p.m. UTC | #7
18/04/2018 14:28, Ferruh Yigit:
> On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
> > 18/04/2018 11:05, Ferruh Yigit:
> >> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
> >>> -	<p>Typically a new stable release version follows a mainline release
> >>> -	by 1-2 weeks, depending on the test results.
> >>> +	<p>The first stable release (.1) of a branch should follow
> >>> +	its mainline release (.0) by at least two months,
> >>> +	after the first release candidate (-rc1) of the next branch.
> >>
> >> Hi Thomas,
> >>
> >> What this change suggest? To be able to backport patches from rc1?
> > 
> > Yes, it is the proposal we discussed earlier.
> > We can wait one week after RC1 to get some validation confirmation.
> > Do you agree?
> 
> This has been discussed in tech-board, what I remember the decision was to wait
> the release to backport patches into stable tree.

It was not so clear to me.
I thought post-rc1 was acceptable. The idea is to speed-up stable releases
pace, especially first release of a series.
  
Kevin Traynor April 19, 2018, 9:38 a.m. UTC | #8
On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
> 18/04/2018 14:28, Ferruh Yigit:
>> On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
>>> 18/04/2018 11:05, Ferruh Yigit:
>>>> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
>>>>> -	<p>Typically a new stable release version follows a mainline release
>>>>> -	by 1-2 weeks, depending on the test results.
>>>>> +	<p>The first stable release (.1) of a branch should follow
>>>>> +	its mainline release (.0) by at least two months,
>>>>> +	after the first release candidate (-rc1) of the next branch.
>>>>
>>>> Hi Thomas,
>>>>
>>>> What this change suggest? To be able to backport patches from rc1?
>>>
>>> Yes, it is the proposal we discussed earlier.
>>> We can wait one week after RC1 to get some validation confirmation.
>>> Do you agree?
>>
>> This has been discussed in tech-board, what I remember the decision was to wait
>> the release to backport patches into stable tree.
> 

Any minutes? I couldn't find them

> It was not so clear to me.
> I thought post-rc1 was acceptable. The idea is to speed-up stable releases
> pace, especially first release of a series.
> 
> 

I think timing of stable releases and bugfix backports to the stable
branch are two separate items.

I do think that bugfix backports to stable should happen on a regular
basis (e.g. every 2 weeks). Otherwise we are back to the situation where
if there's a bugfix after a DPDK release, a user like (surprise,
surprise) OVS may not be able to use that DPDK version for ~3 months.

Someone who wants to get the latest bugfixes can just take the latest on
the stable branch and importantly, can have confidence that the
community has officially accepted those patches. If someone requires
stable to be validated, then they have to wait until the release.

Kevin.
  
Aaron Conole April 20, 2018, 3:52 p.m. UTC | #9
Kevin Traynor <ktraynor@redhat.com> writes:

> On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
>> 18/04/2018 14:28, Ferruh Yigit:
>>> On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
>>>> 18/04/2018 11:05, Ferruh Yigit:
>>>>> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
>>>>>> -	<p>Typically a new stable release version follows a mainline release
>>>>>> -	by 1-2 weeks, depending on the test results.
>>>>>> +	<p>The first stable release (.1) of a branch should follow
>>>>>> +	its mainline release (.0) by at least two months,
>>>>>> +	after the first release candidate (-rc1) of the next branch.
>>>>>
>>>>> Hi Thomas,
>>>>>
>>>>> What this change suggest? To be able to backport patches from rc1?
>>>>
>>>> Yes, it is the proposal we discussed earlier.
>>>> We can wait one week after RC1 to get some validation confirmation.
>>>> Do you agree?
>>>
>>> This has been discussed in tech-board, what I remember the decision was to wait
>>> the release to backport patches into stable tree.
>> 
>
> Any minutes? I couldn't find them
>
>> It was not so clear to me.
>> I thought post-rc1 was acceptable. The idea is to speed-up stable releases
>> pace, especially first release of a series.
>> 
>> 
>
> I think timing of stable releases and bugfix backports to the stable
> branch are two separate items.
>
> I do think that bugfix backports to stable should happen on a regular
> basis (e.g. every 2 weeks). Otherwise we are back to the situation where
> if there's a bugfix after a DPDK release, a user like (surprise,
> surprise) OVS may not be able to use that DPDK version for ~3 months.
>
> Someone who wants to get the latest bugfixes can just take the latest on
> the stable branch and importantly, can have confidence that the
> community has officially accepted those patches. If someone requires
> stable to be validated, then they have to wait until the release.

+1 - this seems to make the most sense to me.  Keep the patches flowing,
but don't label/tag it until validation.  That serves an additional
function: developers know their CC's to stable are being processed.

> Kevin.
  
Ferruh Yigit April 25, 2018, 8:33 a.m. UTC | #10
On 4/20/2018 4:52 PM, Aaron Conole wrote:
> Kevin Traynor <ktraynor@redhat.com> writes:
> 
>> On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
>>> 18/04/2018 14:28, Ferruh Yigit:
>>>> On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
>>>>> 18/04/2018 11:05, Ferruh Yigit:
>>>>>> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
>>>>>>> -	<p>Typically a new stable release version follows a mainline release
>>>>>>> -	by 1-2 weeks, depending on the test results.
>>>>>>> +	<p>The first stable release (.1) of a branch should follow
>>>>>>> +	its mainline release (.0) by at least two months,
>>>>>>> +	after the first release candidate (-rc1) of the next branch.
>>>>>>
>>>>>> Hi Thomas,
>>>>>>
>>>>>> What this change suggest? To be able to backport patches from rc1?
>>>>>
>>>>> Yes, it is the proposal we discussed earlier.
>>>>> We can wait one week after RC1 to get some validation confirmation.
>>>>> Do you agree?
>>>>
>>>> This has been discussed in tech-board, what I remember the decision was to wait
>>>> the release to backport patches into stable tree.
>>>
>>
>> Any minutes? I couldn't find them
>>
>>> It was not so clear to me.
>>> I thought post-rc1 was acceptable. The idea is to speed-up stable releases
>>> pace, especially first release of a series.
>>>
>>>
>>
>> I think timing of stable releases and bugfix backports to the stable
>> branch are two separate items.
>>
>> I do think that bugfix backports to stable should happen on a regular
>> basis (e.g. every 2 weeks). Otherwise we are back to the situation where
>> if there's a bugfix after a DPDK release, a user like (surprise,
>> surprise) OVS may not be able to use that DPDK version for ~3 months.
>>
>> Someone who wants to get the latest bugfixes can just take the latest on
>> the stable branch and importantly, can have confidence that the
>> community has officially accepted those patches. If someone requires
>> stable to be validated, then they have to wait until the release.
> 
> +1 - this seems to make the most sense to me.  Keep the patches flowing,
> but don't label/tag it until validation.  That serves an additional
> function: developers know their CC's to stable are being processed.

Are stable trees verified?

> 
>> Kevin.
  
Luca Boccassi April 25, 2018, 10:03 a.m. UTC | #11
On Wed, 2018-04-25 at 09:33 +0100, Ferruh Yigit wrote:
> On 4/20/2018 4:52 PM, Aaron Conole wrote:
> > Kevin Traynor <ktraynor@redhat.com> writes:
> > 
> > > On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
> > > > 18/04/2018 14:28, Ferruh Yigit:
> > > > > On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
> > > > > > 18/04/2018 11:05, Ferruh Yigit:
> > > > > > > On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
> > > > > > > > -	<p>Typically a new stable release version
> > > > > > > > follows a mainline release
> > > > > > > > -	by 1-2 weeks, depending on the test results.
> > > > > > > > +	<p>The first stable release (.1) of a branch
> > > > > > > > should follow
> > > > > > > > +	its mainline release (.0) by at least two
> > > > > > > > months,
> > > > > > > > +	after the first release candidate (-rc1) of
> > > > > > > > the next branch.
> > > > > > > 
> > > > > > > Hi Thomas,
> > > > > > > 
> > > > > > > What this change suggest? To be able to backport patches
> > > > > > > from rc1?
> > > > > > 
> > > > > > Yes, it is the proposal we discussed earlier.
> > > > > > We can wait one week after RC1 to get some validation
> > > > > > confirmation.
> > > > > > Do you agree?
> > > > > 
> > > > > This has been discussed in tech-board, what I remember the
> > > > > decision was to wait
> > > > > the release to backport patches into stable tree.
> > > 
> > > Any minutes? I couldn't find them
> > > 
> > > > It was not so clear to me.
> > > > I thought post-rc1 was acceptable. The idea is to speed-up
> > > > stable releases
> > > > pace, especially first release of a series.
> > > > 
> > > > 
> > > 
> > > I think timing of stable releases and bugfix backports to the
> > > stable
> > > branch are two separate items.
> > > 
> > > I do think that bugfix backports to stable should happen on a
> > > regular
> > > basis (e.g. every 2 weeks). Otherwise we are back to the
> > > situation where
> > > if there's a bugfix after a DPDK release, a user like (surprise,
> > > surprise) OVS may not be able to use that DPDK version for ~3
> > > months.
> > > 
> > > Someone who wants to get the latest bugfixes can just take the
> > > latest on
> > > the stable branch and importantly, can have confidence that the
> > > community has officially accepted those patches. If someone
> > > requires
> > > stable to be validated, then they have to wait until the release.
> > 
> > +1 - this seems to make the most sense to me.  Keep the patches
> > flowing,
> > but don't label/tag it until validation.  That serves an additional
> > function: developers know their CC's to stable are being processed.
> 
> Are stable trees verified?

Verification is one issue - so far, Intel and ATT have provided time
and resources to do some regression tests, but only at release time
(before tagging). And it has been a manual process.
It would be great if more companies would step up to help - and even
better if regressions could be automated (nightly job?).

The other issue is deciding when a patch is "good to go" - until now,
the criteria has been "when it's merged into master".
So either that criteria needs to change, and another equally
"authoritative" is decided on, or patches should get reviewed and
merged in master more often and more quickly :-P

We also have not been looking directly at the the various -next trees,
as things are more "in-flux" there and could be reverted, or clash with
changes from other trees - hence why we merge from master.
  
Thomas Monjalon April 30, 2018, 10:47 a.m. UTC | #12
25/04/2018 12:03, Luca Boccassi:
> On Wed, 2018-04-25 at 09:33 +0100, Ferruh Yigit wrote:
> > On 4/20/2018 4:52 PM, Aaron Conole wrote:
> > > Kevin Traynor <ktraynor@redhat.com> writes:
> > > > On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
> > > > > 18/04/2018 14:28, Ferruh Yigit:
> > > > > > On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
> > > > > > > 18/04/2018 11:05, Ferruh Yigit:
> > > > > > > > On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
> > > > > > > > > -	<p>Typically a new stable release version
> > > > > > > > > follows a mainline release
> > > > > > > > > -	by 1-2 weeks, depending on the test results.
> > > > > > > > > +	<p>The first stable release (.1) of a branch
> > > > > > > > > should follow
> > > > > > > > > +	its mainline release (.0) by at least two
> > > > > > > > > months,
> > > > > > > > > +	after the first release candidate (-rc1) of
> > > > > > > > > the next branch.
> > > > > > > > 
> > > > > > > > Hi Thomas,
> > > > > > > > 
> > > > > > > > What this change suggest? To be able to backport patches
> > > > > > > > from rc1?
> > > > > > > 
> > > > > > > Yes, it is the proposal we discussed earlier.
> > > > > > > We can wait one week after RC1 to get some validation
> > > > > > > confirmation.
> > > > > > > Do you agree?
> > > > > > 
> > > > > > This has been discussed in tech-board, what I remember the
> > > > > > decision was to wait
> > > > > > the release to backport patches into stable tree.
> > > > 
> > > > Any minutes? I couldn't find them
> > > > 
> > > > > It was not so clear to me.
> > > > > I thought post-rc1 was acceptable. The idea is to speed-up
> > > > > stable releases
> > > > > pace, especially first release of a series.
> > > > > 
> > > > > 
> > > > 
> > > > I think timing of stable releases and bugfix backports to the
> > > > stable
> > > > branch are two separate items.
> > > > 
> > > > I do think that bugfix backports to stable should happen on a
> > > > regular
> > > > basis (e.g. every 2 weeks). Otherwise we are back to the
> > > > situation where
> > > > if there's a bugfix after a DPDK release, a user like (surprise,
> > > > surprise) OVS may not be able to use that DPDK version for ~3
> > > > months.
> > > > 
> > > > Someone who wants to get the latest bugfixes can just take the
> > > > latest on
> > > > the stable branch and importantly, can have confidence that the
> > > > community has officially accepted those patches. If someone
> > > > requires
> > > > stable to be validated, then they have to wait until the release.
> > > 
> > > +1 - this seems to make the most sense to me.  Keep the patches
> > > flowing,
> > > but don't label/tag it until validation.  That serves an additional
> > > function: developers know their CC's to stable are being processed.
> > 
> > Are stable trees verified?
> 
> Verification is one issue - so far, Intel and ATT have provided time
> and resources to do some regression tests, but only at release time
> (before tagging). And it has been a manual process.
> It would be great if more companies would step up to help - and even
> better if regressions could be automated (nightly job?).
> 
> The other issue is deciding when a patch is "good to go" - until now,
> the criteria has been "when it's merged into master".
> So either that criteria needs to change, and another equally
> "authoritative" is decided on, or patches should get reviewed and
> merged in master more often and more quickly :-P
> 
> We also have not been looking directly at the the various -next trees,
> as things are more "in-flux" there and could be reverted, or clash with
> changes from other trees - hence why we merge from master.

Yes, backporting from master is definitely the right thing to do.
Backporting more regularly would be also an improvement.
There will be always the question of the bug-free ideal in stable
branches. I agree we need more help to validate the stable branches.
But realistically, it will never be perfect.

So the questions are:
	- What we must wait before pushing a backport in the stable tree?
	- What we must wait before tagging a stable release?

I think it is reasonnable to push backports one or two weeks after
it is in the master branch, assuming master is tested by the community.
If a corner case is found later, it will be fixed with another patch.
That's why it's important to wait a validation period (happening after
each release candidate) before tagging a stable release.
So, if we are aware of a regression in the master branch, which has been
backported, we can wait few more days to fix it.
The last thing we need to consider before tagging, is the validation of
the stable release itself. Are we able to run some non-regression tests
on the stable branch if it is ready few days after a RC1?
  
Aaron Conole May 1, 2018, 2:16 p.m. UTC | #13
Thomas Monjalon <thomas@monjalon.net> writes:

> 25/04/2018 12:03, Luca Boccassi:
>> On Wed, 2018-04-25 at 09:33 +0100, Ferruh Yigit wrote:
>> > On 4/20/2018 4:52 PM, Aaron Conole wrote:
>> > > Kevin Traynor <ktraynor@redhat.com> writes:
>> > > > On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
>> > > > > 18/04/2018 14:28, Ferruh Yigit:
>> > > > > > On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
>> > > > > > > 18/04/2018 11:05, Ferruh Yigit:
>> > > > > > > > On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
>> > > > > > > > > -	<p>Typically a new stable release version
>> > > > > > > > > follows a mainline release
>> > > > > > > > > -	by 1-2 weeks, depending on the test results.
>> > > > > > > > > +	<p>The first stable release (.1) of a branch
>> > > > > > > > > should follow
>> > > > > > > > > +	its mainline release (.0) by at least two
>> > > > > > > > > months,
>> > > > > > > > > +	after the first release candidate (-rc1) of
>> > > > > > > > > the next branch.
>> > > > > > > > 
>> > > > > > > > Hi Thomas,
>> > > > > > > > 
>> > > > > > > > What this change suggest? To be able to backport patches
>> > > > > > > > from rc1?
>> > > > > > > 
>> > > > > > > Yes, it is the proposal we discussed earlier.
>> > > > > > > We can wait one week after RC1 to get some validation
>> > > > > > > confirmation.
>> > > > > > > Do you agree?
>> > > > > > 
>> > > > > > This has been discussed in tech-board, what I remember the
>> > > > > > decision was to wait
>> > > > > > the release to backport patches into stable tree.
>> > > > 
>> > > > Any minutes? I couldn't find them
>> > > > 
>> > > > > It was not so clear to me.
>> > > > > I thought post-rc1 was acceptable. The idea is to speed-up
>> > > > > stable releases
>> > > > > pace, especially first release of a series.
>> > > > > 
>> > > > > 
>> > > > 
>> > > > I think timing of stable releases and bugfix backports to the
>> > > > stable
>> > > > branch are two separate items.
>> > > > 
>> > > > I do think that bugfix backports to stable should happen on a
>> > > > regular
>> > > > basis (e.g. every 2 weeks). Otherwise we are back to the
>> > > > situation where
>> > > > if there's a bugfix after a DPDK release, a user like (surprise,
>> > > > surprise) OVS may not be able to use that DPDK version for ~3
>> > > > months.
>> > > > 
>> > > > Someone who wants to get the latest bugfixes can just take the
>> > > > latest on
>> > > > the stable branch and importantly, can have confidence that the
>> > > > community has officially accepted those patches. If someone
>> > > > requires
>> > > > stable to be validated, then they have to wait until the release.
>> > > 
>> > > +1 - this seems to make the most sense to me.  Keep the patches
>> > > flowing,
>> > > but don't label/tag it until validation.  That serves an additional
>> > > function: developers know their CC's to stable are being processed.
>> > 
>> > Are stable trees verified?
>> 
>> Verification is one issue - so far, Intel and ATT have provided time
>> and resources to do some regression tests, but only at release time
>> (before tagging). And it has been a manual process.
>> It would be great if more companies would step up to help - and even
>> better if regressions could be automated (nightly job?).
>> 
>> The other issue is deciding when a patch is "good to go" - until now,
>> the criteria has been "when it's merged into master".
>> So either that criteria needs to change, and another equally
>> "authoritative" is decided on, or patches should get reviewed and
>> merged in master more often and more quickly :-P
>> 
>> We also have not been looking directly at the the various -next trees,
>> as things are more "in-flux" there and could be reverted, or clash with
>> changes from other trees - hence why we merge from master.
>
> Yes, backporting from master is definitely the right thing to do.
> Backporting more regularly would be also an improvement.
> There will be always the question of the bug-free ideal in stable
> branches. I agree we need more help to validate the stable branches.
> But realistically, it will never be perfect.
>
> So the questions are:
> 	- What we must wait before pushing a backport in the stable tree?
> 	- What we must wait before tagging a stable release?
>
> I think it is reasonnable to push backports one or two weeks after
> it is in the master branch, assuming master is tested by the community.
> If a corner case is found later, it will be fixed with another patch.

+1 - I agree here.  Folks who truly care about 'validated stable'
(whatever definition that takes) will only use a labeled version anyway.

OTOH, developers who want to see that their patches are landing in
stable (and more over, who want to ensure that their proposed backports
are actually complete - which is more relevant w.r.t. hardware),
shouldn't have to wait for the label.

Most other projects work this way, as well.  Keep pulling in the
relevant patches from master to the stable branch(es).  Do the official
label / release at a certain point in time relative to the main release
(or as needed in the case of "oh no, a serious bug here").

> That's why it's important to wait a validation period (happening after
> each release candidate) before tagging a stable release.
> So, if we are aware of a regression in the master branch, which has been
> backported, we can wait few more days to fix it.
> The last thing we need to consider before tagging, is the validation of
> the stable release itself. Are we able to run some non-regression tests
> on the stable branch if it is ready few days after a RC1?
  
Kevin Traynor May 1, 2018, 3:46 p.m. UTC | #14
On 05/01/2018 03:16 PM, Aaron Conole wrote:
> Thomas Monjalon <thomas@monjalon.net> writes:
> 
>> 25/04/2018 12:03, Luca Boccassi:
>>> On Wed, 2018-04-25 at 09:33 +0100, Ferruh Yigit wrote:
>>>> On 4/20/2018 4:52 PM, Aaron Conole wrote:
>>>>> Kevin Traynor <ktraynor@redhat.com> writes:
>>>>>> On 04/18/2018 02:28 PM, Thomas Monjalon wrote:
>>>>>>> 18/04/2018 14:28, Ferruh Yigit:
>>>>>>>> On 4/18/2018 10:14 AM, Thomas Monjalon wrote:
>>>>>>>>> 18/04/2018 11:05, Ferruh Yigit:
>>>>>>>>>> On 4/11/2018 12:28 AM, Thomas Monjalon wrote:
>>>>>>>>>>> -	<p>Typically a new stable release version
>>>>>>>>>>> follows a mainline release
>>>>>>>>>>> -	by 1-2 weeks, depending on the test results.
>>>>>>>>>>> +	<p>The first stable release (.1) of a branch
>>>>>>>>>>> should follow
>>>>>>>>>>> +	its mainline release (.0) by at least two
>>>>>>>>>>> months,
>>>>>>>>>>> +	after the first release candidate (-rc1) of
>>>>>>>>>>> the next branch.
>>>>>>>>>>
>>>>>>>>>> Hi Thomas,
>>>>>>>>>>
>>>>>>>>>> What this change suggest? To be able to backport patches
>>>>>>>>>> from rc1?
>>>>>>>>>
>>>>>>>>> Yes, it is the proposal we discussed earlier.
>>>>>>>>> We can wait one week after RC1 to get some validation
>>>>>>>>> confirmation.
>>>>>>>>> Do you agree?
>>>>>>>>
>>>>>>>> This has been discussed in tech-board, what I remember the
>>>>>>>> decision was to wait
>>>>>>>> the release to backport patches into stable tree.
>>>>>>
>>>>>> Any minutes? I couldn't find them
>>>>>>
>>>>>>> It was not so clear to me.
>>>>>>> I thought post-rc1 was acceptable. The idea is to speed-up
>>>>>>> stable releases
>>>>>>> pace, especially first release of a series.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> I think timing of stable releases and bugfix backports to the
>>>>>> stable
>>>>>> branch are two separate items.
>>>>>>
>>>>>> I do think that bugfix backports to stable should happen on a
>>>>>> regular
>>>>>> basis (e.g. every 2 weeks). Otherwise we are back to the
>>>>>> situation where
>>>>>> if there's a bugfix after a DPDK release, a user like (surprise,
>>>>>> surprise) OVS may not be able to use that DPDK version for ~3
>>>>>> months.
>>>>>>
>>>>>> Someone who wants to get the latest bugfixes can just take the
>>>>>> latest on
>>>>>> the stable branch and importantly, can have confidence that the
>>>>>> community has officially accepted those patches. If someone
>>>>>> requires
>>>>>> stable to be validated, then they have to wait until the release.
>>>>>
>>>>> +1 - this seems to make the most sense to me.  Keep the patches
>>>>> flowing,
>>>>> but don't label/tag it until validation.  That serves an additional
>>>>> function: developers know their CC's to stable are being processed.
>>>>
>>>> Are stable trees verified?
>>>
>>> Verification is one issue - so far, Intel and ATT have provided time
>>> and resources to do some regression tests, but only at release time
>>> (before tagging). And it has been a manual process.
>>> It would be great if more companies would step up to help - and even
>>> better if regressions could be automated (nightly job?).
>>>
>>> The other issue is deciding when a patch is "good to go" - until now,
>>> the criteria has been "when it's merged into master".
>>> So either that criteria needs to change, and another equally
>>> "authoritative" is decided on, or patches should get reviewed and
>>> merged in master more often and more quickly :-P
>>>
>>> We also have not been looking directly at the the various -next trees,
>>> as things are more "in-flux" there and could be reverted, or clash with
>>> changes from other trees - hence why we merge from master.
>>
>> Yes, backporting from master is definitely the right thing to do.
>> Backporting more regularly would be also an improvement.
>> There will be always the question of the bug-free ideal in stable
>> branches. I agree we need more help to validate the stable branches.
>> But realistically, it will never be perfect.
>>
>> So the questions are:
>> 	- What we must wait before pushing a backport in the stable tree?
>> 	- What we must wait before tagging a stable release?
>>
>> I think it is reasonnable to push backports one or two weeks after
>> it is in the master branch, assuming master is tested by the community.
>> If a corner case is found later, it will be fixed with another patch.
> 
> +1 - I agree here.  Folks who truly care about 'validated stable'
> (whatever definition that takes) will only use a labeled version anyway.
> 
> OTOH, developers who want to see that their patches are landing in
> stable (and more over, who want to ensure that their proposed backports
> are actually complete - which is more relevant w.r.t. hardware),
> shouldn't have to wait for the label.
> 
> Most other projects work this way, as well.  Keep pulling in the
> relevant patches from master to the stable branch(es).  Do the official
> label / release at a certain point in time relative to the main release
> (or as needed in the case of "oh no, a serious bug here").
> 

I agree and I think it's the best way. However, it also requires
semi-frequent pull request merging into the master branch for this to
work. Otherwise there is still delay, just earlier in the process.

Not sure if there is a written/un-written workflow for when the next-*
branches merge into master at the moment?

>> That's why it's important to wait a validation period (happening after
>> each release candidate) before tagging a stable release.
>> So, if we are aware of a regression in the master branch, which has been
>> backported, we can wait few more days to fix it.
>> The last thing we need to consider before tagging, is the validation of
>> the stable release itself. Are we able to run some non-regression tests
>> on the stable branch if it is ready few days after a RC1?
  
Thomas Monjalon May 1, 2018, 4:02 p.m. UTC | #15
01/05/2018 17:46, Kevin Traynor:
> On 05/01/2018 03:16 PM, Aaron Conole wrote:
> > Thomas Monjalon <thomas@monjalon.net> writes:
> >> So the questions are:
> >> 	- What we must wait before pushing a backport in the stable tree?
> >> 	- What we must wait before tagging a stable release?
> >>
> >> I think it is reasonnable to push backports one or two weeks after
> >> it is in the master branch, assuming master is tested by the community.
> >> If a corner case is found later, it will be fixed with another patch.
> > 
> > +1 - I agree here.  Folks who truly care about 'validated stable'
> > (whatever definition that takes) will only use a labeled version anyway.
> > 
> > OTOH, developers who want to see that their patches are landing in
> > stable (and more over, who want to ensure that their proposed backports
> > are actually complete - which is more relevant w.r.t. hardware),
> > shouldn't have to wait for the label.
> > 
> > Most other projects work this way, as well.  Keep pulling in the
> > relevant patches from master to the stable branch(es).  Do the official
> > label / release at a certain point in time relative to the main release
> > (or as needed in the case of "oh no, a serious bug here").
> > 
> 
> I agree and I think it's the best way. However, it also requires
> semi-frequent pull request merging into the master branch for this to
> work. Otherwise there is still delay, just earlier in the process.
> 
> Not sure if there is a written/un-written workflow for when the next-*
> branches merge into master at the moment?

We try to have more pulls before RC1.
It is not formal yet.
  

Patch

diff --git a/dev/roadmap.html b/dev/roadmap.html
index e6cf640..c7cd7cb 100644
--- a/dev/roadmap.html
+++ b/dev/roadmap.html
@@ -97,13 +97,15 @@ 
 		<li>Integration deadline: June 29, 2018
 		<li>Release: August 1, 2018
 	</ul>
-	<p>18.11
+	<p>18.11 (LTS)
 	<ul>
 		<li>Proposal deadline: September 7, 2018
 		<li>Integration deadline: October 5, 2018
 		<li>Release: November 2, 2018
 	</ul>
 	<h2 id="stable">Stable releases</h2>
+	<p>There is a documentation page describing the
+	<a href="/doc/guides/contributing/stable.html">guidelines of the stable releases</a>.
 	<p>Stable point releases follow mainline releases.
 	<p>After each -rc tag and after the final version, relevant bug fixes get
 	backported by the stable maintainers into the respective branches in "bursts".
@@ -111,8 +113,9 @@ 
 	to stable@dpdk.org only (avoiding dev@dpdk.org).
 	<p>After all the relevant bugfixes have been backported,
 	regression tests are ran, and if clear, the stable release is announced.
-	<p>Typically a new stable release version follows a mainline release
-	by 1-2 weeks, depending on the test results.
+	<p>The first stable release (.1) of a branch should follow
+	its mainline release (.0) by at least two months,
+	after the first release candidate (-rc1) of the next branch.
 	<hr>
 	<div style="overflow-x:auto">
 	<table>
@@ -125,15 +128,39 @@ 
 		<tr>
 			<td>16.11.6</td>
 			<td>May 19, 2018</td>
-			<td>November 2018</td>
+			<td>November 2018 (LTS)</td>
 			<td>Luca Boccassi</td>
 		</tr>
 		<tr>
 			<td>17.11.2</td>
 			<td>May 19, 2018</td>
-			<td>November 2019</td>
+			<td>November 2019 (LTS)</td>
 			<td>Yuanhan Liu</td>
 		</tr>
+		<tr>
+			<td>18.02.1</td>
+			<td>April 6, 2018</td>
+			<td>June 2018</td>
+			<td>Luca Boccassi</td>
+		</tr>
+		<tr>
+			<td>18.05.1</td>
+			<td>June 29, 2018</td>
+			<td>October 2018</td>
+			<td>Christian Ehrhardt</td>
+		</tr>
+		<tr>
+			<td>18.08.1</td>
+			<td>October 5, 2018</td>
+			<td>January 2019</td>
+			<td>looking for volunteer</td>
+		</tr>
+		<tr>
+			<td>18.11.1</td>
+			<td>January 11, 2019</td>
+			<td>November 2020 (LTS)</td>
+			<td>Kevin Traynor</td>
+		</tr>
 	</table>
 	</div>
 </section>