StableReleaseUpdates

Differences between revisions 3 and 404 (spanning 401 versions)
Revision 3 as of 2006-09-11 22:50:12
Size: 3409
Editor: studiocity-motorola-bsr1-70-36-194-85
Comment: more drafting
Revision 404 as of 2025-06-25 19:59:52
Size: 14476
Editor: ahasenack
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Once an Ubuntu release has been completed and published, updates for it are only released under certain circumstances, and must follow a special procedure. ||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;"><<TableOfContents>>||

{{{#!wiki warning
SRU documentation has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/

See the announcement: https://lists.ubuntu.com/archives/ubuntu-devel/2024-August/043090.html
}}}
Line 5: Line 11:
In contrast to pre-release versions, official releases of Ubuntu are subject to much wider use, and by a different demographic of user. During development, changes to the distribution primarily affect developers, early adopters and other advanced users, all of whom have elected to use pre-release software at their own risk.

Users of the official release, in contrast, expect a high degree of stability. They use their Ubuntu system for their day-to-day work, and problems they experience with it can be extremely disruptive. Many of them are less experienced with Ubuntu and with Linux, and expect a reliable system which does not require their intervention.

Stable release updates are automatically recommended to a very large number of users, and so it is critically important to treat them with great caution. Therefore, when updates are proposed, they must be accompanied by a strong rationale and present a low risk of regressions.
{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/principles/ and https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/requirements/
}}}
Line 13: Line 17:
Stable release updates will, in general, only be issued in order to fix "high-impact" bugs. Examples of such bugs include:

 * Security vulnerabilities
 * Severe regressions from the previous release of Ubuntu
 * Bugs which may, under realistic circumstances, directly cause user data to be lost

== How ==

 1. Proposing
 
  All proposals for stable release updates must first be discussed with XXX and be approved by XXX. Proposals must be accompanied by the following information for each bug to be addressed:

   * A bug number referring to a complete bug report describing the problem and its effect
   * A statement explaining the impact of the bug on users and justification for backporting the fix to the stable release
   * An explanation of how the bug has been addressed in the development branch, including the relevant version numbers of packages modified in order to implement the fix

  A copy of this proposal and a hyperlink to the resulting discussion thread should be added to the bug report as a comment, usually by CCing ''bugnumber''`@bugs.launchpad.net`.

 2. Preparing

  Once an update has been discussed and approved in principle, a patch should be prepared for the stable release. The following criteria apply to any packages modified as part of the update:

   * The changelog entry and resulting .changes file must include a reference to the corresponding bug report(s), including the approved proposal
   * The version number(s) must be carefully checked in order to avoid clashing with any other version of the package, past, present or future
   * The upload target should be ''release''`-proposed`
   * XXX more standard checklist items here

  Uploads which do not meet these criteria will be rejected by an archive administrator and not published.

 3. Testing

  Once the update has been uploaded to `-proposed` and built, it can be reviewed and tested by a wider audience. A copy of the complete source package delta (debdiff) should be attached to the bug report for review. XXX uploader, peer, community

 4. Releasing

  XXX re-upload to -updates with no changes other than changelog, final signoff

 5. Following up

  XXX monitor Malone for regressions, regression response procedure
{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#what-is-acceptable-to-sru
}}}

=== High-impact bugs ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#what-is-acceptable-to-sru

=== Other safe cases ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#other-safe-cases

=== New upstream microreleases ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#new-upstream-microreleases

=== Staging low priority uploads ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/non-standard-processes/#explanation-staged-uploads

=== ESM Uploads ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/special/

<<Anchor(GeneralRequirements)>>
== General Requirements ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#general-requirements-for-all-srus
}}}

=== Development Release Fixed First ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#general-requirements-for-all-srus

=== Newer Releases ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#general-requirements-for-all-srus

== Procedure ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/standard/
}}}

=== SRU Bug Template ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/bug-template/

=== Bug references in changelogs ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#bug-references-in-changelogs

=== Staging an upload ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/special/#stage-an-upload

==== Landing an upload blocked by staging ====

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/special/#land-an-upload-blocked-by-staging

==== Responsibility for SRU verification and cancellation of incomplete verification ====

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/non-standard-processes/#explanation-staged-uploads

== Publishing ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/release/
}}}

== Phasing ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/standard-processes/#phasing
}}}

=== Investigation of Halted Phased Updates ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/phasing/

=== SRU team documentation ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/internal/#override-phasing

== Verification ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/standard/ and https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/regression/#howto-report-regression
}}}

=== Autopkgtest Regressions ===

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/autopkgtest-failure/

==== Expected resolution for reported autopkgtest failures ====

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/autopkgtest-failure/

== Removal of updates ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/non-standard-processes/#removal-of-languishing-updates
}}}

== Regressions ==
<<Anchor(regressions)>>

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/regression/#howto-report-regression
}}}

=== Testing for Regressions ===

(defunct section removed)

<<Anchor(Special)>>
== Documentation for Special Cases ==

{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/

See the announcement: https://lists.ubuntu.com/archives/ubuntu-devel/2025-June/043391.html
}}}

=== Kernel ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#kernel
}}}

=== Landscape ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#landscape
}}}

=== Snapd ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#snapd
}}}

=== Snapcraft ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#snapcraft
}}}

=== Ubuntu-image ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#ubuntu-image
}}}

=== Docker.io group ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#docker-io-group
}}}

=== gce-compute-image-packages ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#gce-compute-image-packages
}}}

=== google-compute-engine ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#google-compute-engine
}}}

=== google-compute-engine-oslogin ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#google-compute-engine-oslogin
}}}


=== google-guest-agent ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#google-guest-agent
}}}

=== google-osconfig-agent ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#google-osconfig-agent
}}}

=== curtin ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#curtin
}}}


=== walinuxagent ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#walinuxagent
}}}

=== GNOME ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#gnome
}}}


=== OpenStack ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#openstack
}}}

=== Certbot ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#certbot
}}}

=== cloud-init ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#cloud-init
}}}


=== DPDK ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#dpdk
}}}

=== ubuntu-release-upgrader and python-apt ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#ubuntu-release-upgrader-and-python-apt
}}}

=== apt and python-apt ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#apt-and-python-apt
}}}

=== rax-nova-agent ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#rax-nova-agent
}}}

=== livecd-rootfs ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#livecd-rootfs
}}}

=== fwupd and fwupdate ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#fwupd-and-fwupdate
}}}

=== snapd-glib ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#snapd-glib
}}}

=== netplan.io ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#netplan-io
}}}

=== ec2-hibinit-agent ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#ec2-hibinit-agent
}}}

=== NVIDIA driver ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#nvidia-driver
}}}

=== wslu ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#wslu
}}}

=== openjdk-N ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#openjdk-n
}}}

=== Postfix ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#postfix
}}}

=== sosreport/sos ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#sosreport-sos
}}}

=== oem-*-meta ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#oem-meta
}}}

=== ubuntu-dev-tools ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#ubuntu-dev-tools
}}}

=== OpenLDAP ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#openldap
}}}

=== HAProxy ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#haproxy
}}}

=== autopkgtest ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#autopkgtest
}}}

=== squid ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#squid
}}}

=== bind9 ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#bind9
}}}

=== virtualbox ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#virtualbox
}}}

=== ubuntu-advantage-tools ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#ubuntu-advantage-tools
}}}

=== open-vm-tools ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#open-vm-tools
}}}

=== postgresql ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#postgresql
}}}

=== GRUB ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#grub
}}}

=== OpenVPN ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#openvpn
}}}

=== Language Packs (language-pack-*) ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#language-packs-language-pack
}}}

=== cd-boot-images-<arch> ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#cd-boot-images-arch
}}}

<<Anchor(Security)>>
== Data Packages Kept in Sync with Security ==
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#data-packages-kept-in-sync-with-security
}}}

=== tzdata ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#tzdata
}}}

=== distro-info-data ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#distro-info-data
}}}

=== linux-firmware ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#linux-firmware
}}}

=== wireless-regdb ===
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#wireless-regdb
}}}

== Toolchain Updates ==
{{{#!wiki warning
This section has moved to https://documentation.ubuntu.com/sru/en/latest/reference/package-specific/#toolchain-updates
}}}

== Examples ==

As a reference, see [[https://launchpad.net/bugs/173082|bug #173082]] for an idea of how the SRU process works for a main package, or [[https://launchpad.net/bugs/208666|bug #208666]] for an SRU in universe.

== Package Removals ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/non-standard-processes/#explanation-removals
}}}

== Links ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/status/
}}}

== Reviewing procedure and tools ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/internal/#reviewing-procedure-and-tools
}}}

== Contacting the SRU team ==

{{{#!wiki warning
This section has moved to https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/contact/
}}}
----
CategoryProcess

Why

When

High-impact bugs

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#what-is-acceptable-to-sru

Other safe cases

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#other-safe-cases

New upstream microreleases

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#new-upstream-microreleases

Staging low priority uploads

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/non-standard-processes/#explanation-staged-uploads

ESM Uploads

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/special/

General Requirements

Development Release Fixed First

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#general-requirements-for-all-srus

Newer Releases

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#general-requirements-for-all-srus

Procedure

SRU Bug Template

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/bug-template/

Bug references in changelogs

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#bug-references-in-changelogs

Staging an upload

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/special/#stage-an-upload

Landing an upload blocked by staging

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/special/#land-an-upload-blocked-by-staging

Responsibility for SRU verification and cancellation of incomplete verification

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/explanation/non-standard-processes/#explanation-staged-uploads

Publishing

Phasing

Investigation of Halted Phased Updates

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/phasing/

SRU team documentation

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/internal/#override-phasing

Verification

Autopkgtest Regressions

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/autopkgtest-failure/

Expected resolution for reported autopkgtest failures

See: https://canonical-sru-docs.readthedocs-hosted.com/en/latest/howto/autopkgtest-failure/

Removal of updates

Regressions

Testing for Regressions

(defunct section removed)

Documentation for Special Cases

Kernel

Landscape

Snapd

Snapcraft

Ubuntu-image

Docker.io group

gce-compute-image-packages

google-compute-engine

google-compute-engine-oslogin

google-guest-agent

google-osconfig-agent

curtin

walinuxagent

GNOME

OpenStack

Certbot

cloud-init

DPDK

ubuntu-release-upgrader and python-apt

apt and python-apt

rax-nova-agent

livecd-rootfs

fwupd and fwupdate

snapd-glib

netplan.io

ec2-hibinit-agent

NVIDIA driver

wslu

openjdk-N

Postfix

sosreport/sos

oem-*-meta

ubuntu-dev-tools

OpenLDAP

HAProxy

autopkgtest

squid

bind9

virtualbox

ubuntu-advantage-tools

open-vm-tools

postgresql

GRUB

OpenVPN

Language Packs (language-pack-*)

cd-boot-images-<arch>

Data Packages Kept in Sync with Security

tzdata

distro-info-data

linux-firmware

wireless-regdb

Toolchain Updates

Examples

As a reference, see bug #173082 for an idea of how the SRU process works for a main package, or bug #208666 for an SRU in universe.

Package Removals

Reviewing procedure and tools

Contacting the SRU team


CategoryProcess

StableReleaseUpdates (last edited 2025-06-25 19:59:52 by ahasenack)