Fedora Release Life Cycle :: Fedora Docs Site (2024)

We say approximately every 6 months because like many things, they don’t always go exactly as planned. The schedule is not strictly time-based, but a hybrid of time and quality. The milestone releases are QA:Release_validation_test_plan[tested] for compliance with the Fedora Release Criteria, and releases will be delayed if this is not the case.

The schedule for the release currently under development, , is on its |next}}/Schedule| release schedule page. Beta, and General Availability (final) releases happen at 14:00 UTC.

Development Planning

Fedora development planning is handled by the Release Planning Process. So-called Changes are proposed, initially reviewed, and monitored through the development process by the engineering steering committee.

Development Process

Fedora uses a system involving two 'development' trees. Rawhide is a constantly rolling development tree. No releases are built directly from Rawhide. Approximately 10 weeks before the planned date of a Fedora release, a tree for that release is "https://fedoraproject.org/wiki/Releases/Branched[Branched]" from the Rawhide tree. At that point the Rawhide tree is moving towards the release after the new Branched release, and the pending release is stabilized in the Branched tree.

After the Bodhi activation point, the Bodhi system is permanently active on the Branched release (all the way until it goes EOL), and requirements for updates to be marked as stable are set out in the Updates Policy. Packages must go through the updates-testing repository for the release before entering its stable repository, according to rules defined in the updates policy: these rules tighten gradually from Beta through to post-GA (Final), but the basic process does not change.

For some time prior to a milestone (Beta, Final) release a freeze is in effect which prevents packages moving from updates-testing to stable except in accordance with the QA:SOP_blocker_bug_process[blocker] and QA:SOP_freeze_exception_bug_process[freeze exception] bug policies. This freeze is lifted once the milestone is finished, and so packages begin to move from updates-testing to stable as normal again, until the next milestone’s freeze date.

Schedule Methodology

Fedora release schedules are proposed by the Fedora Program Manager and ratified by the Fedora Engineering Steering Committee (FESCo), with input from other groups. 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.

Note: When referring to Beta/Final Target, we refer to an planned date. When referring to Beta/Final release only, we refer to a date the release has actually happened.

Task/MilestoneStart Day (Tuesdays or Thursdays)Length

Planning and Development

Branch point of previous release plus one day

Variable

Changes Checkpoint: Proposal deadline for Changes requiring Mass rebuild

Tue: Mass rebuild minus 3 weeks

n/a

Changes Checkpoint: Proposal deadline for System Wide Changes

Tue: Mass rebuild minus 1 week

n/a

Mass rebuild

Branch point minus 5 weeks

Until Branch point

Changes Checkpoint: Proposal deadline for Self Contained Changes

Tue: Branch point minus 3 weeks

n/a

Branch point

Tue: Preferred Beta Release Target minus 5 weeks

n/a

Changes Checkpoint: Completion deadline (testable)

Tue: Same day as Branch point

N/A

String Freeze

Tue: Branch point plus 1 week

Software String Freeze Policy in effect until Final Release (GA)

Bodhi activation point

Tue: Preferred Beta Target minus 3 weeks, Same day as Beta Freeze

Bodhi enabled and Updates_Policy requirements in effect until EOL

Beta Freeze

Tue: Preferred Beta Target minus 3 weeks

QA:SOP_freeze_exception_bug_process and QA:SOP_blocker_bug_process in effect until Beta Release

Changes Checkpoint: 100% code complete deadline

Tue: Same day as Beta Freeze

N/A

QA:SOP_compose_request[Beta release candidates]

Any time after Beta Freeze

Until Beta Release

Beta Go_No_Go_Meeting

Thu @ 13:00 E\{D,S}T: planned Preferred Beta Target minus five days (repeats if No-Go)

n/a

Preferred Beta Target

Tue: Preferred Final Target minus 5 weeks

Live until GA release

Beta Target #1

Tue: Preferred Beta Target plus 1 week, Preferred Final Target minus 4 weeks

n/a

Final Freeze

Tue: Preferred Final Target minus 2 weeks

QA:SOP_freeze_exception_bug_process and QA:SOP_blocker_bug_process in effect until Final Release (GA)

QA:SOP_compose_request[Final release candidates]

Any time after Final Freeze

Until Final Release (GA)

Final Go_No_Go_Meeting

Thu @ 13:00 E\{D,S}T: planned Final Release (GA) minus five days (repeats if No-Go)

n/a

Preferred Final Target

Tue: Primary date from which rest of schedule derives + This date is either the Tuesday before May 1st or October 31st.

n/a

Final Target #1

Tue: Preferred Final Target plus 1 week

n/a

Maintenance

Tue: Same day as Final Release (GA)

~13 Months

End of Life

Final Release (GA) of next-but-one release plus one month

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 for 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 other distributions following Fedora having adopted a similar release cycle. Several other major components, including the Linux kernel, Openoffice.org, Xorg, have started following a time based release schedule. 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.

Although due to how planning process and release validation works, Fedora is not a strictly time based distribution, but uses combination of both time and feature based release paradigms. This way we can react to bigger changes aka new installed, way how we release bits (Fedora.Next) etc.

Schedule Contingency Planning

If Mass rebuild is not completed on time, all the subsequent milestones starting with Branch point are pushed back for one week until the Mass rebuild is completed.

If the Beta Go/No-Go Meeting results in a "No Go" determination, rescheduling of the milestone and subsequent milestones follows these rules:

  • Slip of the Beta from the Preferred Target to Target #1 does not affect Final Release (GA) date. The Final Release (GA) date remains on Preferred Final Target.

  • Slip of the Beta to Target #1 adds a new Beta Target #2 and Final Release (GA) slips to Final Target #1 (and we don’t yet add a Final Target #2).

  • Slip of the Beta past Target #N (where N >= 2) adds a new Beta Target #(N+1) and also adds a new Final Target #N

If the Final Go_No_Go_Meeting results in a "No Go" determination, that milestone and subsequent milestones will be pushed back by one week.

One week is 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 correspond to the established day we synchronize our content with the mirrors that carry our releases. Be aware of holidays and of possible PR conflicts (contact Fedora PR) with the new proposed final date.

Go/No Go meetings receive input from representatives of FESCo,Release Engineering, and Quality Assurance.

Fedora Release Life Cycle :: Fedora Docs Site (2024)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Eusebia Nader

Last Updated:

Views: 5570

Rating: 5 / 5 (60 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Eusebia Nader

Birthday: 1994-11-11

Address: Apt. 721 977 Ebert Meadows, Jereville, GA 73618-6603

Phone: +2316203969400

Job: International Farming Consultant

Hobby: Reading, Photography, Shooting, Singing, Magic, Kayaking, Mushroom hunting

Introduction: My name is Eusebia Nader, I am a encouraging, brainy, lively, nice, famous, healthy, clever person who loves writing and wants to share my knowledge and understanding with you.