Debian Hard Freeze Phase Explained
The hard freeze phase in the Debian development cycle is a crucial milestone where package migration from the "unstable" (Sid) branch to the "testing" branch is strictly regulated to prepare for a stable release. During this period, the Debian Release Team locks down automatic migrations for critical system components, demanding manual intervention and rigorous review for any proposed changes. This stage shifts developer priorities entirely away from feature additions toward resolving Release-Critical (RC) bugs, polishing documentation, and validating the overall stability of the operating system.
Restriction of Package Migrations
In normal development, packages automatically migrate from "unstable" to "testing" once they satisfy basic criteria such as aging requirements, passing autopkgtests, and having no open Release-Critical bugs. During the hard freeze, this automation is dismantled for designated components:
- Key Packages Frozen: Essential base packages and their direct dependencies no longer migrate automatically.
- Manual Unblock Requests: Developers wishing to move an updated package into testing must file an explicit unblock request with the Debian Release Team.
- Diff Reviews: The Release Team reviews source-code diffs line by line to verify that changes do not introduce new regressions or destabilize the system.
Prioritization of Release-Critical (RC) Bugs
During the hard freeze, the primary metric of progress is the downward trend of the RC bug counter. The rules for package updates become exceptionally strict:
- No New Features: Upstream version bumps are strictly prohibited unless granted a rare exception by the Release Team.
- Targeted Bug Fixes Only: Maintainers must only submit targeted patches that resolve existing high-severity bugs (critical, grave, or serious).
- Minimal Code Diffs: Changes must be as small and isolated as possible to limit unintended side effects. Maintainers are expected to cherry-pick individual upstream commits rather than importing extensive code updates.
Finalization of the Debian Installer
The debian-installer (d-i) reaches near-final status
during this stage. Because changes to the base system can disrupt
hardware detection and installation routines, the installer packages are
frozen to allow for broad testing. The testing covers:
- Hardware compatibility across all officially supported architectures (e.g., amd64, arm64, ppc64el, s390x).
- Storage configurations, such as LVM, RAID, UEFI secure boot, and filesystem setup.
- Network and headless installation flows.
Translations, Documentation, and Artwork
Because software behavior and interfaces are locked in, other contributors can finalize auxiliary aspects of the distribution:
- Release Notes: Technical writers document known issues, upgrade instructions, and architectural changes for the official release documentation.
- Localization: Translators update interface strings, installer prompts, and package descriptions without fear of incoming changes breaking their translations.
- Visual Theme: The official artwork, desktop themes, and branding selected for the release are integrated and stabilized.
Paving the Way for the Full Freeze
The hard freeze acts as the penultimate operational filter before the "full freeze." By suppressing code volatility across core libraries and services, the Release Team can monitor the behavior of the software archive as a cohesive whole. Once the RC bug count reaches a sufficiently low threshold and the remaining key issues are resolved, the hard freeze transitions into the full freeze, where all automatic package migrations cease entirely until the release is officially announced as stable.