(→Schedule Contingency Planning: more detail) |
No edit summary |
||
Line 54: | Line 54: | ||
=== Schedule Contingency Planning === | === Schedule Contingency Planning === | ||
If the Alpha or Beta Go/No Go meetings result in a "No Go" determination, that milestone | If the Alpha or Beta Go/No Go meetings result in a "No Go" determination, that milestone and subsequent milestones will be pushed back by one week. | ||
One week is the added to the schedule to maintain the practice of releasing on Tuesdays. Tuesdays are the designated release day because they are good days for news coverage and the established day we synchronize our content with the mirrors that carry our releases. Go/No Go meetings receive input from representatives of FESCo, Release Engineering, and Quality Assurance. | One week is the added to the schedule to maintain the practice of releasing on Tuesdays. Tuesdays are the designated release day because they are good days for news coverage and the established day we synchronize our content with the mirrors that carry our releases. Go/No Go meetings receive input from representatives of FESCo, Release Engineering, and Quality Assurance. |
Revision as of 22:56, 30 March 2010
The Fedora Project releases a new version of Fedora about every 6 months and provides updated packages (maintenance) to these releases for about 13 months. This allows users to "skip a release" while still being able to always have a system that is still receiving updates.
Development Schedule
We say developed and released about every 6 months because like many things--they don't always go exactly as planned.
The schedule for the release currently under development, Fedora 42, is on its release schedule page. Alpha, Beta, and General Availability (final) releases happen at 10:00am Eastern US Time, which is either 1500UTC or 1400UTC depending on if daylight savings effect.
Schedule Methodology
Fedora release schedules are proposed by the Release Engineering team and ratified by Fedora Engineering Steering Committee (FESCo). FESCo is responsible for overseeing the technical direction of the Fedora distribution. A core schedule is created using the key tasks listed below. Detailed team schedules are built around these dates.
Task/Milestone | Start Day | Length |
---|---|---|
Planning and Development | Day After GA of Previous Release | Depends on GA date and working backwards from all the tasks below |
Feature Acceptance Deadline | Tuesday--Two weeks before Feature Freeze | n/a |
Feature Freeze | Tuesday--1 week before Branch Freeze | Until GA |
Branch Freeze Event | Tuesday--One week after Feature Freeze. | Branch Freeze Policy in effect until GA. |
String Freeze | Same time as Branch Freeze | Software String Freeze Policy in effect until GA. |
Alpha Go/No-Go Meeting | Wednesday @ 20:00 E{D,S}T before Tuesday release day | n/a |
Alpha Milestone | Tuesday | Public testing of Alpha lasts 3 weeks |
Beta Go/No-Go Meeting | Wednesday @ 20:00 E{D,S}T before Tuesday release day | n/a |
Beta Milestone | Tuesday | Public testing of Beta lasts 3 Weeks |
Compose GA RC | Two days after end of Beta Public Testing | 1 day |
Test GA RC | After Compose GA RC | 1 week |
Final Go/No-Go Meeting | Monday @ 20:00 E{D,S}T before Tuesday release day | n/a |
GA Release | Six days after Test GA RC ends | n/a |
Maintenance | GA release day | ~13 Months |
End of Life | One month after GA of current release + 2 releases | n/a |
Development Schedule Rationale
Fedora generally develops new releases over a six month period to provide a regular and predictable release schedule. The bi-annual targeted release dates are May Day (May 1st) and Halloween (October 31) making them easy to remember and avoiding significant holiday breaks. Changes to this standard must be approved by the community-elected Fedora Engineering Steering Committee (FESCo).
A six month release schedule also follows the precedence of Red Hat Linux (precursor to Fedora). Former Red Hat software engineer Havoc Pennington offers a historical perspective here. GNOME started following a time based release based on the ideas and success of Red Hat Linux and others distribution following Fedora having adopted a similar release cycle too. Several other major components including the Linux kernel, Openoffice.org, Xorg have started following a time based release schedule too. While the exact release schedules vary between these components and other upstream projects, the interactions between these components and Fedora makes a six month time based release schedule a good balance.
Schedule Contingency Planning
If the Alpha or Beta Go/No Go meetings result in a "No Go" determination, that milestone and subsequent milestones will be pushed back by one week.
One week is the added to the schedule to maintain the practice of releasing on Tuesdays. Tuesdays are the designated release day because they are good days for news coverage and the established day we synchronize our content with the mirrors that carry our releases. Go/No Go meetings receive input from representatives of FESCo, Release Engineering, and Quality Assurance.
Maintenance Schedule
We say maintained for about 13 months because the supported period for released releases is dependent on the date the release under development goes final. As a result, Release X is supported until one month after the release of Release X+2.
This translates into:
- Fedora 40 will be maintained until 1 month after the release of Fedora 42.
- Fedora 41 will be maintained until 1 month after the release of Fedora 43.
Maintenance Schedule Methodology
This methodology is documented in the End of life SOP.
Maintenance Schedule Rationale
Fedora is focused on free and open source software innovations and moves quickly. If you want a distribution that moves slower but has a longer lifecycle, Red Hat Enterprise Linux, which is derivative of Fedora or free rebuilds of that such as CentOS might be more suitable for you. Refer to the RHEL page for more details.
Historically, the Fedora Project has found supporting two releases plus Rawhide and the pre-release Branched code to be a manageable work load.
Additional Release Schedule Information
- Overview of Releases, including currently supported releases
- Unsupported Releases
- Historical Release Information