-- Joshua Cranmer News submodule owner DXR coauthor
Hi All,
I just updated the Change of Release and Governance model wiki page with a revised section for Releases, this links straight to a new etherpad containing the initial version of the proposed release plan following the switch to the new model:
https://etherpad.mozilla.org/tb-releases
Sorry for no pretty pictures, I'll put one together after we flesh it out a bit more.
- All releases will be based on Gecko ESR releases
- To provide a more stable core for releases, so that we're not affected so much by Gecko changes
- The ESR model will remain the same, separate from the mainstream channel
-- @lhirlimann on twitter https://wiki.mozilla.org/Thunderbird:Testing my photos http://www.flickr.com/photos/lhirlimann/collections/
This definitely merits larger discussion, since I'm kind of attacking the core idea here...
3. Everyone who wants to maintain compatibility with preview and release versions of Thunderbird now has to contend with the possibility of 8 versions of difference in Gecko (17 on m-esr versus 25 on m-aurora). This introduces similar issues as point #2, but it also applies to community extension authors as well too.
In short, the questions I want answered are the following (I'm assuming that the intended landing of features is on c-c, not c-r):
1. What are the perceived pros and cons by not adopting the rapid release model?
There's probably a few more, but I think they are the main ones.
2. Under this model, who decides what gets ported to ESR-based release?
3. Under this model, who actually ports the features to ESR-based release?
4. Is it expected that most changes (commits other than those necessary to fix m-c-induced issues) will get ported to ESR-based release?
5. Under this model, what would happen if a highly-valued feature arose that relied on a change in Gecko since the last ESR?
- Stability, we don't have significant gecko changing under us every six weeks, nor will we have large Thunderbird changes
- We don't have to do so much regression testing continuously
- There's a greater range of time where our changes can get testing
- Less risk of regressions that are found after each release, so less likely to need the x.0.1 releases that we've been seeing
- Regressions that have been caused by gecko, don't necessarily have to be fixed straight away before the next cycle, but can be left to run a bit longer
so
- All releases will be based on Gecko ESR releases
- To provide a more stable core for releases, so that we're not affected so much by Gecko changes
- The ESR model will remain the same, separate from the mainstream channel
Hum why that besides the channel change they'd be identical, I don't see the need to keep two channels with the same product. What's the point in keeping ESR and release based on the same ESR code ?
I don't see the point keeping Aurora and Beta. From the way it currently works we don't benefit much from having Aurora and Beta - most Major regression are found at release time not on Aurora nor beta and if they are they are found too close to the release dates to be actionable. Maintaining Aurora is too time consuming in terms of QA, release management and engineering for US to keep. I do see the l10 arguments but I think we can do it in another way (eg anyway most of the l10n strings from gecko we'll get for free from Ff).
I'de like us to consider the following :
- We base release on ESR
- When we have enough "new features"+bug fixes we cut a beta
- Beta get's tested and released over a 3/4 week period
- Next beta comes out a few months later which gives us time to chew on beta data (bugs, feedback etc ...)
What I'm proposing looks a lot like what happened for 3.0 or 3.1 eg reverting back to pre rapid release. I think this works better with how I see Thunderbird evolving and will give us more stable releases.
Mark.
On 09/08/2012 06:18, Ludovic Hirlimann wrote:
so
- All releases will be based on Gecko ESR releases
- To provide a more stable core for releases, so that we're not affected so much by Gecko changes
- The ESR model will remain the same, separate from the mainstream channel
Hum why that besides the channel change they'd be identical, I don't see the need to keep two channels with the same product. What's the point in keeping ESR and release based on the same ESR code ?
Keeping them separate gives the opportunity for intermediate releases if we have a significant amount of features ready. If we didn't have separate channels, then we wouldn't be able to do those intermediate releases because we'd be breaking the ESR promise. As we don't yet know the amount of contributions that we'll get going forward I feel it would be better to keep the opportunity available rather than take it away. We can always review it in a year or two.
Would it be possible to guesstimate what would happen in an "average" release cycle by looking at the changes from TB 10-now?