FreezeExceptionProcess

Differences between revisions 10 and 60 (spanning 50 versions)
Revision 10 as of 2007-02-23 12:27:33
Size: 5026
Editor: i59F7190D
Comment:
Revision 60 as of 2020-04-14 12:59:51
Size: 7772
Editor: rikmills
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
[[TableOfContents()]] <<TableOfContents>>
Line 7: Line 7:
Requests for freeze exceptions for `main` should be emailed to Matt Zimmerman <mdz@ubuntu.com> and Colin Watson <cjwatson@ubuntu.com>. All freeze exceptions must include the following information, in order to provide them with enough information to weigh the risk of regressions against the benefit of the changes: Requests for freeze exceptions should be filed as bugs in launchpad against the relevant package (or just "Ubuntu" if the package is not available yet). The bug should be set to status of "New" when requesting a freeze exception, to ensure the release team sees the request. Once the bug is filed and the necessary information is available, subscribe [[https://launchpad.net/~ubuntu-release|ubuntu-release]]. All freeze exceptions must include the following information, in order to provide them with enough information to weigh the risk of regressions against the benefit of the changes:
Line 12: Line 12:

== UpstreamVersionFreeze (UVF) Exceptions ==

A request for an exception to the UpstreamVersionFreeze should demonstrate that the proposed new upstream release is appropriate for the current phase of the Ubuntu release process. For example, if the current freeze guidelines allow only bug fixes, the proposed upstream release should contain only bug fixes. Reviewing the upstream changes with a third party helps to ensure that no unexpected changes are introduced which could disrupt the release process.

An UpstreamVersionFreeze exception request must include at least the following additional details:

 * An excerpt from the upstream changelog and/or release notes listing (only) the changes relative to the current version in Ubuntu
 * If the upstream version contains changes which require exceptions to other freeze guidelines, additional information should be provided according to the instructions below.
Line 28: Line 19:
 * `diffstat` output showing the magnitude of code changes relative to the current version in Ubuntu  * If the upload is a new upstream microrelease, the relevant part of the upstream changelog and/or release notes
Line 30: Line 21:
  * Builds
  * Installs
  * Does not break packages which depend on it, or that corresponding updates have been prepared
  * builds,
  * installs and upgrades,
  * does not break packages which depend on it, or that corresponding updates have been prepared.
Line 34: Line 25:
== DeepFreeze Exceptions == === FeatureFreeze for new upstream versions ===
Line 36: Line 27:
During DeepFreeze periods, extreme caution is exercised when considering freeze exceptions, as a regression could cause a deadline to be missed, or a build to receive less testing than desired. A request for an exception must demonstrate strong rationale and minimal risk for the update to be considered. If you want to introduce a new upstream version with new features and/or ABI/API changes, please
Line 38: Line 29:
Exception requests must include the following additional details:

 * A complete `debdiff` of the proposed upload


== Exceptions for Universe/Multiverse ==

If you want to get UVF exception for something, please

 * [https://launchpad.net/ubuntu/+filebug file a bug]
 * state the reason why you feel it is necessary
 * [[https://launchpad.net/ubuntu/+filebug|file a bug]]
 * '''state the reason why you feel it is necessary'''
Line 51: Line 33:
  * diffstat of the upstream tarballs {{{
diff -ruN <package>-{old-version,new-version} | diffstat > diffstat.txt
}}}
Line 58: Line 37:
  * this does not mean `debian/changelog`
Line 60: Line 38:
  * build-/install-log (as files)   * build log (as file)
Line 62: Line 40:
 * assign it to the '`motu-uvf`' team.    * `pbuilder-dist` and `cowbuilder-dist` automatically save it as `last_operation.log`.
  * install log
   * for instance a copy and paste of the install messages from console when installing
  * mention what testing you've done to see that it works
   * a screenshot showing the main features could also be nice
 * subscribe (do not assign to) the '`ubuntu-release`' team.
Line 64: Line 47:
Please note that we expect requesters to have an updated package already prepared and tested! You will need this anyway to provide proper diffstats and buildlogs. Please note that we expect requesters to have an updated package already prepared and tested! You will need this anyway to provide proper build logs.
Line 66: Line 49:
Once one of the [https://launchpad.net/~motu-uvf team members] marks the bug as `Confirmed` you can proceed with uploading. Once the Feature Freeze Exception has been ACK'd by a member of the [[https://launchpad.net/~ubuntu-release|Release Team]], the status will be changed to '''TRIAGED'''. You can then either upload the package (in case you're in [[http://launchpad.net/~motu|motu]] or [[http://launchpad.net/~ubuntu-core-dev|ubuntu-core-dev]]), or follow the [[SponsorshipProcess]]. Please close the bug from the upload, where possible.
Line 68: Line 51:
=== References === References:
 * [[https://bugs.launchpad.net/~ubuntu-release/+subscribedbugs|Open requests]]
 * [[https://lists.ubuntu.com/archives/ubuntu-motu/2006-February/000545.html|Original announcement]]
Line 70: Line 55:
 * [https://launchpad.net/~motu-uvf/+assignedbugs Open requests]
 * [https://lists.ubuntu.com/archives/ubuntu-motu/2006-February/000545.html Original announcement]
 * UniverseFreeze
=== FeatureFreeze for bugfix-only updates ===
Line 74: Line 57:
Up through RC, if a developer believes an upload of a new upstream release that just has bug fixes in it is warranted, they may upload it. The developer should explicitly document that this is a bugfix-only upload in the changelog or sync request.
Line 75: Line 59:
== NewPackagesFreezeUniverse exceptions == If you have doubts about if something qualifies, check with a member of ubuntu-release (or subscribe ubuntu-release to the bug) and if one person from ubuntu-release agrees it's a bug fix update, you're good for upload.
Line 77: Line 61:
The `motu-uvf` team will consider exceptions, where additions of packages are worthwhile. Please note: the `motu-uvf` team will not review the package for you. You should have followed ["MOTU/Packages/New/Policy"] before asking for an exception. === FeatureFreeze for new packages ===

New source packages in the archive do not require feature freeze exceptions, as they must be explicitly opted into by users. For NEW uploads which are not syncs from Debian, please make sure you have the agreement of a member of ~ubuntu-archive to perform the necessary queue reviews before you upload.

However, at the point where you integrate the new package into an existing one (e.g. adding a dependency or turning on a feature) or add it to a seed, feature freeze begins to apply and you must seek an exception. This is the point at which risk is added to people who didn't explicitly choose it.

== UserInterfaceFreeze Exceptions ==

The exception request bug report needs to have a justification why the user interface needs to be changed at that point, and give a rationale why the benefits of it are worth breaking existing documentation and translations.

Every change of the user interface (either a string or the layout) requires you to notify the [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-doc|documentation]] and [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-translators|translation]] teams. Please add links to your posts in the [[https://lists.ubuntu.com/archives/ubuntu-doc/|ubuntu-doc@]] and [[https://lists.ubuntu.com/archives/ubuntu-translators/|ubuntu-translators@]] mailing list archives to the bug.

After that, subscribe the release team, as usual.

== Milestone freeze Exceptions (like BetaFreeze) ==

During milestone/final release freeze periods, extreme caution is exercised when considering exceptions, as a regression could cause a deadline to be missed, or a build to receive less testing than desired. A request for an exception must demonstrate strong rationale and minimal risk for the update to be considered.

Exception requests must include the following additional details:

 * It must fix a bug milestoned for that particular milestone.
 * A complete `debdiff` of the proposed upload must be provided (preferably as bug attachment).

== Packageset FFe Delegations ==

From time to time the `ubuntu-release` team will delegate the responsibility of reviewing Feature Freeze exceptions for a packageset to one or more designated individuals that are not members of the Release Team. Delegates are expected to be Ubuntu Developers with upload rights to the packageset in question who have a good working relationship with the Release Team and have demonstrated a clear understanding of the freeze guidelines.

For the `kubuntu-desktop` packageset in Ubuntu 20.04, the Release Team delegates FFe-granting authority to
[[https://launchpad.net/~rikmills|Rik Mills (~rikmills)]] and [[https://launchpad.net/~tsimonq2|Simon Quigley (~tsimonq2)]].

== Exceptions for Universe/Multiverse ==
The FreezeExceptionProcess is the same for Universe/Multiverse as for Main/Restricted, except where explained below.

=== Milestone Freeze ===

During the last week of development before the release, all uploads need to get approved by the release team.
Line 80: Line 99:
 * Follow ["MOTU/Packages/New/Policy"].
 * File a bug, attach the source package to it (or link to it).
 * Assign the bug to `motu-uvf`.
 * State '''why''' the addition of the package should get considered.
 * Either file a bug with the debdiff and assign it to `ubuntu-release` and get approval for it.
 * Or ask a member of the `ubuntu-release` [[http://launchpad.net/~ubuntu-release|team]] on IRC of approval for the debdiff.
Line 85: Line 102:
Decision: ["MOTU/Council/Meetings/2007-02-23"]. Decision: [[MOTU/Council/Meetings/2007-02-23]].

----
[[CategoryProcess]]

As with most rules, there are occasional exceptions to the restrictions imposed by the various stages of the Ubuntu release process. These exceptions are granted by the release team based on information provided by the developer who proposes the change.

General Instructions

Requests for freeze exceptions should be filed as bugs in launchpad against the relevant package (or just "Ubuntu" if the package is not available yet). The bug should be set to status of "New" when requesting a freeze exception, to ensure the release team sees the request. Once the bug is filed and the necessary information is available, subscribe ubuntu-release. All freeze exceptions must include the following information, in order to provide them with enough information to weigh the risk of regressions against the benefit of the changes:

  • A description of the proposed changes, with sufficient detail to estimate their potential impact on the distribution
  • A rationale for the exception, explaining the benefit of the change
  • Any additional information which would be helpful in considering the decision

FeatureFreeze Exceptions

A request for an exception to FeatureFreeze should demonstrate that the benefit of new functionality, or the total benefit of a new upstream release which includes it, outweighs the risk of regressions and other potential disruption of the release process.

Exception requests must include the following additional details:

  • If the upload is a new upstream microrelease, the relevant part of the upstream changelog and/or release notes
  • An explanation of the testing which has been performed on the new version in Ubuntu, including verification that the new package:
    • builds,
    • installs and upgrades,
    • does not break packages which depend on it, or that corresponding updates have been prepared.

FeatureFreeze for new upstream versions

If you want to introduce a new upstream version with new features and/or ABI/API changes, please

  • file a bug

  • state the reason why you feel it is necessary

    • (other bugs it fixes, etc.)
  • attach (as files)
    • diff of the Upstream ChangeLog (not debian/changelog)

      diff -u <package>-{old-version,new-version}/ChangeLog > changelog.diff
    • note that the ChangeLog sometimes is called CHANGES, is missing or the tarball merely has a NEWS file.

    • the NEWS file, if you think that this information helps reviewing your request (true for most gnome packages)

    • build log (as file)
      • pbuilder has the --logfile option.

      • pbuilder-dist and cowbuilder-dist automatically save it as last_operation.log.

    • install log
      • for instance a copy and paste of the install messages from console when installing
    • mention what testing you've done to see that it works
      • a screenshot showing the main features could also be nice
  • subscribe (do not assign to) the 'ubuntu-release' team.

Please note that we expect requesters to have an updated package already prepared and tested! You will need this anyway to provide proper build logs.

Once the Feature Freeze Exception has been ACK'd by a member of the Release Team, the status will be changed to TRIAGED. You can then either upload the package (in case you're in motu or ubuntu-core-dev), or follow the SponsorshipProcess. Please close the bug from the upload, where possible.

References:

FeatureFreeze for bugfix-only updates

Up through RC, if a developer believes an upload of a new upstream release that just has bug fixes in it is warranted, they may upload it. The developer should explicitly document that this is a bugfix-only upload in the changelog or sync request.

If you have doubts about if something qualifies, check with a member of ubuntu-release (or subscribe ubuntu-release to the bug) and if one person from ubuntu-release agrees it's a bug fix update, you're good for upload.

FeatureFreeze for new packages

New source packages in the archive do not require feature freeze exceptions, as they must be explicitly opted into by users. For NEW uploads which are not syncs from Debian, please make sure you have the agreement of a member of ~ubuntu-archive to perform the necessary queue reviews before you upload.

However, at the point where you integrate the new package into an existing one (e.g. adding a dependency or turning on a feature) or add it to a seed, feature freeze begins to apply and you must seek an exception. This is the point at which risk is added to people who didn't explicitly choose it.

UserInterfaceFreeze Exceptions

The exception request bug report needs to have a justification why the user interface needs to be changed at that point, and give a rationale why the benefits of it are worth breaking existing documentation and translations.

Every change of the user interface (either a string or the layout) requires you to notify the documentation and translation teams. Please add links to your posts in the ubuntu-doc@ and ubuntu-translators@ mailing list archives to the bug.

After that, subscribe the release team, as usual.

Milestone freeze Exceptions (like BetaFreeze)

During milestone/final release freeze periods, extreme caution is exercised when considering exceptions, as a regression could cause a deadline to be missed, or a build to receive less testing than desired. A request for an exception must demonstrate strong rationale and minimal risk for the update to be considered.

Exception requests must include the following additional details:

  • It must fix a bug milestoned for that particular milestone.
  • A complete debdiff of the proposed upload must be provided (preferably as bug attachment).

Packageset FFe Delegations

From time to time the ubuntu-release team will delegate the responsibility of reviewing Feature Freeze exceptions for a packageset to one or more designated individuals that are not members of the Release Team. Delegates are expected to be Ubuntu Developers with upload rights to the packageset in question who have a good working relationship with the Release Team and have demonstrated a clear understanding of the freeze guidelines.

For the kubuntu-desktop packageset in Ubuntu 20.04, the Release Team delegates FFe-granting authority to Rik Mills (~rikmills) and Simon Quigley (~tsimonq2).

Exceptions for Universe/Multiverse

The FreezeExceptionProcess is the same for Universe/Multiverse as for Main/Restricted, except where explained below.

Milestone Freeze

During the last week of development before the release, all uploads need to get approved by the release team.

Process:

  • Either file a bug with the debdiff and assign it to ubuntu-release and get approval for it.

  • Or ask a member of the ubuntu-release team on IRC of approval for the debdiff.

Decision: MOTU/Council/Meetings/2007-02-23.


CategoryProcess

FreezeExceptionProcess (last edited 2020-04-14 12:59:51 by rikmills)