Branching SOP

This document outlines the procedures for activities that occur on "branch day": when the next Fedora Linux release branches from Rawhide.

Many of the branching activities are handled by Release Engineering, but several are in the scope of the Fedora Program Manager.

Timing/trigger

This process occurs once per release. The branch day happens between the mass rebuild and the Beta freeze.

Procedures

All of the following procedures should be run in the order listed.

Update Bugzilla product description

  1. Adjust wording of the Fedora product in Bugzilla to reflect the branch.

Bugs related to the components of the Fedora distribution. If you are reporting a bug
against a stable release or a branched pre-release version, please select that
version number. The currently maintained released versions are: Fedora N-1, Fedora N.
The branched pre-released version is Fedora N+1. If you have a bug to report against
the daily development tree (rawhide), please choose 'rawhide' as the version.

For more information about filing a bug against Fedora packages, see
https://docs.fedoraproject.org/en-US/quick-docs/howto-file-a-bug/

Create N+1 version

  1. Create N+1 in Bugzilla’s Fedora product versions.

  2. Create N+1 in Bugzilla’s Fedora Container Images product versions.

Branch Rawhide bugs

If you run this after Branch Day, you will need to add constraint on the bug open date.
  1. Change the F<N+1>Changes bug and bugs that block it to the branched version.

  2. Use this Bugzilla query to select bugs that meet the criteria.

  3. Save the results as a CSV file.

  4. Run the fedora_bz.py script against it. For example:

./fedora_bz.py --release 34 branch bugs-2019-08-13.csv

This script will take a while to run. Execute it from a machine with stable power and networking.

Update Product Pages

  1. Set F<N> to the "Development/Testing" phase.

  2. Set F<N+1> to the "Planning" phase.