Difference between revisions of "DSDP/DD/DD 1.0 RampDownPolicy"

From Eclipsepedia

< DSDP‎ | DD
Jump to: navigation, search
m
m (DD 1.0 Dates)
 
(4 intermediate revisions by one user not shown)
Line 8: Line 8:
 
Typically the last week of a Milestone is for testing, and fixing only regressions and P1 or blocking defects.  
 
Typically the last week of a Milestone is for testing, and fixing only regressions and P1 or blocking defects.  
  
'''For M6, we plan to be API complete''', so there will not be any more breaking API changes or unsolicited API change requests accepted.
+
'''For M6, we plan to be API complete''', so there will not be any more breaking API changes or unsolicited API changes.  If needed, making non-breaking API change requires an explicit approval of another committer in the regular peer review, while making a breaking API change requires a committer vote on the mailing list with at least two committers voting +1 and no -1s.
  
'''For M7, we plan to be functionally complete'''. We will accept API changes only if regressions are involved, or serious issues need to be addressed. Only non-breaking API changes are accepted, and require review by another committer (as part of the regular peer review).  After M7, the remaining Release Candidates are (only) for fixing bugs, or fixing release required items (such as version numbers, licensing, etc.).
+
'''For M7, we plan to be functionally complete'''. We will accept API changes only if regressions are involved, or serious issues need to be addressed. Process for making API changes is the same as in M6.  After M7, the remaining Release Candidates are (only) for fixing bugs, or fixing release required items (such as version numbers, licensing, etc.).
  
 
'''After M7, production of release candidates starts'''. Additional RCs will be produced every week. After the first RC is produced, the time for general functional improvements is long past. The following describes the types of bugs that would be appropriate:  
 
'''After M7, production of release candidates starts'''. Additional RCs will be produced every week. After the first RC is produced, the time for general functional improvements is long past. The following describes the types of bugs that would be appropriate:  
Line 23: Line 23:
 
=== DD 1.0 Dates ===
 
=== DD 1.0 Dates ===
 
<ol>
 
<ol>
* May 6th, M7 produced
+
* May 6th, M7 (RC0) produced
  
 
:After the 6th, API changes or functional enhancements should no longer happen. If there is a need for an API change or functional change, it requires a majority of committers to vote +1 on the mailing list or bugzilla bug. For plain bugfixes, review is optional although it is encouraged for any bug beyond real simple changes. Bug fixes that could potentially affect other components or adopters require project lead review.  
 
:After the 6th, API changes or functional enhancements should no longer happen. If there is a need for an API change or functional change, it requires a majority of committers to vote +1 on the mailing list or bugzilla bug. For plain bugfixes, review is optional although it is encouraged for any bug beyond real simple changes. Bug fixes that could potentially affect other components or adopters require project lead review.  

Latest revision as of 11:13, 6 May 2008

[edit] Ramp down for Ganymede

For reference, see the Ganymede Simultaneous Release, in particular the Ganymede Simultaneous Release#Milestones and Release Candidates.

When talking about API Freeze, we always mean public API only. Provisional, experimental "internal" API, as well as incubating components i.e. the IP-XACT editor are exempt from API freeze or feature freeze, although we will strive for release quality of these components as well.

Typically the last week of a Milestone is for testing, and fixing only regressions and P1 or blocking defects.

For M6, we plan to be API complete, so there will not be any more breaking API changes or unsolicited API changes. If needed, making non-breaking API change requires an explicit approval of another committer in the regular peer review, while making a breaking API change requires a committer vote on the mailing list with at least two committers voting +1 and no -1s.

For M7, we plan to be functionally complete. We will accept API changes only if regressions are involved, or serious issues need to be addressed. Process for making API changes is the same as in M6. After M7, the remaining Release Candidates are (only) for fixing bugs, or fixing release required items (such as version numbers, licensing, etc.).

After M7, production of release candidates starts. Additional RCs will be produced every week. After the first RC is produced, the time for general functional improvements is long past. The following describes the types of bugs that would be appropriate:

    • A regression
    • A P1 or P2 bug, one that is blocking or critical, and some cases of major severities.
    • Documentation and PII files are exceptions to the normal PMC required review, since there is little chance of that breaking anything, though it is still expected to be complete by M6, and remaining work to be only documentation fixes (that is, no refactoring of plugins, build changes, etc, without PMC review and approval).
    • In addition to a bug meeting the above priority/severity conditions, there should be a simple, safe, well understood fix that is well isolated from effecting other components, that doesn't affect API or adopters, that has been well reviewed and well tested.
    • As each Release Candidate passes, the criteria for weighing the benefit-to-risk ratio criteria gets higher and higher, and as such requires a larger number of committers and PMC members to review.

[edit] DD 1.0 Dates

    • May 6th, M7 (RC0) produced
    After the 6th, API changes or functional enhancements should no longer happen. If there is a need for an API change or functional change, it requires a majority of committers to vote +1 on the mailing list or bugzilla bug. For plain bugfixes, review is optional although it is encouraged for any bug beyond real simple changes. Bug fixes that could potentially affect other components or adopters require project lead review.
    • May 20th, RC1 produced
    Besides the fix author, at least 1 additional committer must also review and vote +1 on bugzilla for each change, although the review may also happen after-the-fact to ensure smooth operation: fixes can be committed provided that the review and voting happens afterwards.
    With RC1, we will fork off the R1_0_maintenance branch for further 1.0.x work. Fixes after RC1 need to be applied to both the MAIN trunk and the R1_0_maintenance branch.
    • May 27th, RC2 produced
    After May 27, at least 1 additional committer must review and approve each patch on bugzilla before it can be committed. Approvals after the fact can only happen in case of a must-fix-emergency where no reviewer is reachable in time.
    • June 3rd, RC3 produced
    After June 3, at least 2 additional committers must agree in a vote after reviewing the bug for appropriateness and risk before it can be committed.
    • June 10th, RC4 produced
    After June 10, all available committers must also review and agree in a vote after reviewing the bug for appropriateness and risk before it can be committed.
    • June 17
    Final Release to Ganymede: following Server Freeze on June 24, public access on June 25

[edit] Ramp down for Ganymede SR1 (Tentatively September 2008)

Since we expect to see only bug fixes without functional change in the DD 1.0.1 Service Release, the testing and ramp down procedure is shortened compared to the full release. Because of that, we will also not have milestones for the Service Release, but produce weekly I-builds or M-builds every Thursday. Quality of these builds is expected to be the same or better than any milestone.

The last few weeks before the DD 1.0.1 release are reserved for testing and raising the bar for bug fixes, with appropriateness of a bug fix considered similar to the full release described above.

  • (date TBA), RC1 produced
After (date TBA) we'll have an intensive DD 1.0.1 Testing pass. For further fixes, besides the normal peer review, at least 1 additional committer should also review and vote +1 on bugzilla after reviewing the bug for appropriateness and risk. Every fix after RC1 needs to be verified.
  • (date TBA), RC2 produced
After (date TBA), besides the normal peer review, at least 1 additional committer must also review and vote +1 on bugzilla after reviewing the bug for appropriateness and risk.
  • (date TBA), RC3 produced
After (date TBA), we do not really want to put any more bug fixes into 1.0.1 unless an emergency turns up. Now, besides the normal component team review, at least 1 PMC member and 1 additional committer must also review and vote +1 after reviewing the bug for appropriateness and risk.