From Fedora Project Wiki
Line 66: Line 66:
#* The freeze and testing time (from Branch Freeze until GA) is held constant from release to release
#* The freeze and testing time (from Branch Freeze until GA) is held constant from release to release


=== 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 [[FESCo | Fedora Engineering Steering Committee (FESCo)]].
Обычно Fedora разрабатывает новый выпуск за шестимесячный период, чтобы обеспечить регулярное и предсказуемое расписание новых выпусков. Новые выпуски выходят два раза в год: ''Первого мая'' (Первомай) и на ''Хэллоуин'' (31 октября), что позволяет легко запомнить эти даты и избежать больших перерывов в работе из-за праздников. Изменения в этих стандартах должны быть одобрены выбранным комитетом [[FESCo | 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 [http://article.gmane.org/gmane.linux.redhat.fedora.advisory-board/1475/ 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.
Шестимесячное расписание выпуска пришло из Red Hat Linux (предшественника Fedora).  Предыдущий инженер по программному обеспечению Havoc Pennington предложил [http://article.gmane.org/gmane.linux.redhat.fedora.advisory-board/1475/ это].  GNOME также начал следовать идеям успешно примененным в  Red Hat Linux и последующей за ним Fedora, адаптировав подобным образом свой жизненный цикл. Несколько других основных компонентов, таких как ядро Linux, Openoffice.org, Xorg начали следовать расписанию выпуска релизов на временной основе. В то время как расписание сильно отличается для каждого из приведенных компонентов и других проектов, взаимодействие между этими компонентами и Fedora на основе шести-месячного расписания выпуска позволило достигнуть равновесия.


=== Schedule Contingency Planning ===
=== Schedule Contingency Planning ===

Revision as of 22:56, 4 July 2010

Проект Fedora выпускает новую версию операционной системы примерно каждые 6 месяцев и обеспечивает обновление пакетов (поддержку) для этого выпуска приблизительно 13 месяцев. Что позволяет пользователям "пропустить выпуск", продолжая использовать систему, которая продолжает получать обновления.

Расписание разработки

Мы говорим разрабатывается и выпускается приблизительно каждые 6 месяцев потому что, как и все остальное, не всегда все получается как было запланировано.

Расписание для выпуска Fedora 40 разрабатывается на странице расписания выпуска. Alpha, Beta, Основной (final) выпуск происходит в 10:00am Eastern US Time, или в 1500UTC или 1400UTC в зависимости от того является ли время летним.

Методология составления расписания

Расписание выпусков Fedora выносится на рассмотрение и одобряется Fedora Engineering Steering Committee (FESCo). FESCo отвечает за контроль технического направления Fedora. Основное расписания создается с помощью ключевых задач перечисленных ниже. Более детально график работ распределяется вокруг этих дат.

Задача/Этап Дата начала Длительность
Планирование и разработка Следующий день после GA предыдущего выпуска Зависит от даты GA и работ над задачами перечисленными ниже
Крайний срок принятия заявляемых возможностей (Feature Acceptance Deadline) Вторник--За две недели перед заморозкой заявляемых возможностей (Feature Freeze) n/a
Заморозка заявляемых возможностей Feature Freeze Вторник--За неделю до Branch Freeze Until GA
Branch Freeze Event Вторник--Через неделю после 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 Compose Вторник--Второй день после Branch Freeze 1 day
Alpha Go/No-Go Meeting Среда в 20:00 E{D,S}T--через шесть дней после Alpha Compose n/a
Alpha Release Вторник--Через две недели после Branch Freeze и через 12 дней после Alpha Compose открытое тестирование Alpha в течении последних трех недель
Feature Complete Среда--Конец тестирования Alpha выпуска n/a
Beta Compose Четверг--Через два дня после Feature Complete 1 day
Beta Go/No-Go Meeting Среда в 20:00 E{D,S}T--шестой день после Beta Compose n/a
Beta Release Вторник--Two weeks after Feature Complete and 12 days after Beta Compose Public testing of Beta lasts 3 Weeks
Final Freeze Вторник--End of Beta Release Testing In effect until GA
Compose Final RC Четверг--Two days after Final Freeze 1 day
Test Final RC С четверга по вторник 6 days
Final Go/No-Go Meeting Вторник @ 20:00 E{D,S}T после тестирования Final RC n/a
GA Release Вторник--Через семь дней после окончания тестирования Final RC n/a
Maintenance Вторник--GA release day ~13 Months
Окончание жизни Один месяц после выхода текущего выпуска + 2 выпуска n/a

Шаги необходимые для создания нового расписания

Это немного необычная методика, но расписание можно легко создать с помощью TaskJuggler, созданная John Poelstra.

  1. Pick GA date (the Tuesday before May 1st or October 31st)
  2. Work backwards using consistent spacing for freezes, composes, and releases for Alpha, Beta, and Final, as described above
  3. Set the feature submission and completion dates working backwards from the Branch Freeze date
  4. The time between the feature submission deadline and the GA of the previous release is the time dedicated to development
    • Development time varies from from release to release based on how when the previous release finished
    • The freeze and testing time (from Branch Freeze until GA) is held constant from release to release

Обоснование расписания разработки

Обычно Fedora разрабатывает новый выпуск за шестимесячный период, чтобы обеспечить регулярное и предсказуемое расписание новых выпусков. Новые выпуски выходят два раза в год: Первого мая (Первомай) и на Хэллоуин (31 октября), что позволяет легко запомнить эти даты и избежать больших перерывов в работе из-за праздников. Изменения в этих стандартах должны быть одобрены выбранным комитетом Fedora Engineering Steering Committee (FESCo).

Шестимесячное расписание выпуска пришло из Red Hat Linux (предшественника Fedora). Предыдущий инженер по программному обеспечению Havoc Pennington предложил это. GNOME также начал следовать идеям успешно примененным в Red Hat Linux и последующей за ним Fedora, адаптировав подобным образом свой жизненный цикл. Несколько других основных компонентов, таких как ядро Linux, Openoffice.org, Xorg начали следовать расписанию выпуска релизов на временной основе. В то время как расписание сильно отличается для каждого из приведенных компонентов и других проектов, взаимодействие между этими компонентами и Fedora на основе шести-месячного расписания выпуска позволило достигнуть равновесия.

Schedule Contingency Planning

If the Alpha, Beta, or Final 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 approximately 13 months because the supported period for 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 38 will be maintained until 1 month after the release of Fedora 40.
  • Fedora 39 will be maintained until 1 month after the release of Fedora 41.

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