| |
@@ -19,13 +19,22 @@
|
| |
|
| |
link:https://fedoraproject.org/wiki/Releases/Rawhide[Rawhide] is the always-rolling development tree.
|
| |
Package updates built for rawhide are composed every day and pushed out to all rawhide consumers.
|
| |
- There are no "_updates_" or "_updates-testing_" Repositories for rawhide. The Bodhi updates system is
|
| |
- not used. New builds against this tree also are added to the build root (i.e., other packages build
|
| |
- from them) daily (usually).
|
| |
+ New builds against this tree also are added to the build root (i.e., other packages build from them).
|
| |
|
| |
Repos available: link:https://fedoraproject.org/wiki/Repositories#rawhide[_rawhide_]
|
| |
|
| |
- For updates to rawhide packages, Maintainers *SHOULD*:
|
| |
+ Since link:https://fedoraproject.org/wiki/Changes/GatingRawhidePackages[Rawhide Gating change] was introduced,
|
| |
+ package updates in Fedora Rawhide need to pass verification before they land in the rawhide repositories. This
|
| |
+ is implemented as a check for a Bodhi update, which verifies that the update satisfies the Gating policy. See
|
| |
+ link:https://docs.fedoraproject.org/en-US/rawhide-gating/single-builds/[Rawhide Gating/single-builds] and
|
| |
+ link:https://docs.fedoraproject.org/en-US/rawhide-gating/multi-builds/[Rawhide Gating/multi-builds] for
|
| |
+ details.
|
| |
+
|
| |
+ Currently the default gating policy is empty, thus Fedora Rawhide update can pass the gate, no matter the test
|
| |
+ results. Package maintainer can opt-in for the gating of a package, by setting up individual gating policies,
|
| |
+ see link:https://docs.fedoraproject.org/en-US/rawhide-gating/optin/[Rawhide Gating/optin].
|
| |
+
|
| |
+ For updates to Rawhide packages, Maintainers SHOULD:
|
| |
|
| |
* Try not to push a broken build (breaks the default buildroot package set, etc).
|
| |
* When a proposed update contains an ABI or API change: notify *a week in advance* both the
|
| |
@@ -63,7 +72,7 @@
|
| |
link:https://fedoraproject.org/wiki/Repositories#stable[stable] immediately, and sent to the
|
| |
link:https://fedoraproject.org/wiki/Repositories#fedora[_fedora_ repository] directly in the next nightly
|
| |
compose. There are no restrictions beyond those for Rawhide at this point, but maintainers *SHOULD* be
|
| |
- thinking about stabilization from this point onwards, and making sure their packages will be in good
|
| |
+ thinking about stabilization from this point onward, and making sure their packages will be in good
|
| |
condition well in advance of the stable release. Some packages will be signed at this point, but not
|
| |
all of them. You may have to use `--nogpgcheck` to install or update.
|
| |
|
| |
@@ -99,14 +108,18 @@
|
| |
Repos available: link:https://fedoraproject.org/wiki/Repositories#fedora[_fedora_],
|
| |
link:https://fedoraproject.org/wiki/Repositories#updates-testing[_updates-testing_]
|
| |
|
| |
- From this point onwards Maintainers **MUST**footnote:enforced[_Must_ requirements are enforced by Bodhi.]:
|
| |
+ From this point onward Maintainers
|
| |
+ **MUST**footnote:enforced[_Must_ requirements are enforced by Bodhi.]:
|
| |
|
| |
* Push all updates first to updates-testing.
|
| |
- * All link:https://fedoraproject.org/wiki/Critical_path_package[critical path] updates *MUST* either get
|
| |
- one +1 karma, *OR* spend at least 14 days in updates-testing and have no negative karma before being
|
| |
- moved to stable.
|
| |
- * All non critical path updates *MUST* either reach the prescribed karma level for that update, OR
|
| |
- spend at least 3 days in updates-testing before being allowed to move to stable.
|
| |
+ * All link:https://fedoraproject.org/wiki/Critical_path_package[critical path] updates
|
| |
+ *MUST* either get one +1 karma,
|
| |
+ *OR* spend at least 14 days in updates-testing and have no negative karma
|
| |
+ before being moved to stable.
|
| |
+ * All non critical path updates
|
| |
+ *MUST* either reach the prescribed karma level for that update,
|
| |
+ *OR* spend at least 3 days in updates-testing
|
| |
+ before being allowed to move to stable.
|
| |
|
| |
and Maintainers *SHOULD* (not enforced):
|
| |
|
| |
@@ -143,15 +156,19 @@
|
| |
Repos available: link:https://fedoraproject.org/wiki/Repositories#fedora[_fedora_],
|
| |
link:https://fedoraproject.org/wiki/Repositories#updates-testing[_updates-testing_]
|
| |
|
| |
- From this point onwards maintainers **MUST**footnote:enforced[]:
|
| |
+ From this point onward maintainers **MUST**footnote:enforced[]:
|
| |
|
| |
* Avoid Major version updates, ABI breakage or API changes if at all possible.
|
| |
* Push updates first to updates-testing.
|
| |
* All link:https://fedoraproject.org/wiki/Critical_path_package[critical path]
|
| |
- updates *MUST* either have a sum of +2 karma,
|
| |
- *OR* spend at least 14 days in updates-testing and have no negative karma.
|
| |
- * All non critical path updates *MUST* either reach the prescribed karma level for that update,
|
| |
- *OR* spend at least 7 days in updates-testing before being allowed to go to stable.
|
| |
+ updates
|
| |
+ *MUST* either have a sum of +2 karma,
|
| |
+ *OR* spend at least 14 days in updates-testing
|
| |
+ and have no negative karma.
|
| |
+ * All non critical path updates
|
| |
+ *MUST* either reach the prescribed karma level for that update,
|
| |
+ *OR* spend at least 7 days in updates-testing
|
| |
+ before being allowed to go to stable.
|
| |
|
| |
[[pre-release]]
|
| |
=== Pre release
|
| |
@@ -173,15 +190,19 @@
|
| |
|
| |
During this period:
|
| |
|
| |
- * All updates pulled into the release **MUST**footnote:enforced[] fix an accepted blocker
|
| |
- or freeze exception bug.
|
| |
+ * All updates pulled into the release
|
| |
+ **MUST**footnote:enforced[] fix an accepted blocker or freeze exception bug.
|
| |
* All update pushes will go to updates-testing.
|
| |
- * All link:https://fedoraproject.org/wiki/Critical_path_package[ critical path] updates *MUST* either
|
| |
- have a sum of +2 karma, *OR* spend at least 14 days in updates-testing and have no negative karma.
|
| |
- * All non critical path updates *MUST* either reach the prescribed karma level for that update, *OR*
|
| |
- spend at least 7 days in updates-testing before being allowed in stable.
|
| |
+ * All link:https://fedoraproject.org/wiki/Critical_path_package[critical path] updates
|
| |
+ *MUST* either have a sum of +2 karma,
|
| |
+ *OR* spend at least 14 days in updates-testing and have no negative karma.
|
| |
+ * All non critical path updates
|
| |
+ *MUST* either reach the prescribed karma level for that update,
|
| |
+ *OR* spend at least 7 days in updates-testing
|
| |
+ before being allowed in stable.
|
| |
* Once the _updates_ repository is available, builds marked as
|
| |
- link:https://fedoraproject.org/wiki/Repositories#stable[_stable_] will go there instead of to
|
| |
+ link:https://fedoraproject.org/wiki/Repositories#stable[_stable_]
|
| |
+ will go there instead of to
|
| |
link:https://fedoraproject.org/wiki/Repositories#fedora[_fedora_].
|
| |
|
| |
[[stable-releases]]
|
| |
@@ -219,14 +240,17 @@
|
| |
[[updates-to-critical-path-packages]]
|
| |
=== Updates to 'critical path' packages
|
| |
|
| |
- Updates that constitute a part of the 'critical path' package set (defined
|
| |
- below) *including security updates* *MUST* follow the rules as defined for
|
| |
- link:https://fedoraproject.org/wiki/Critical_path_package[critical path packages] for
|
| |
- pending releases, meaning:
|
| |
+ Updates that constitute a part of the 'critical path' package set
|
| |
+ (defined below) *including security updates*
|
| |
+ *MUST* follow the rules as defined for
|
| |
+ link:https://fedoraproject.org/wiki/Critical_path_package[critical path packages]
|
| |
+ for pending releases, meaning:
|
| |
|
| |
* At the time of the request to stable, the update needs to have either a
|
| |
- link:https://fedoraproject.org/wiki/Bodhi[Bodhi karma] sum of 2 *OR*
|
| |
- * It must spend at least 14 days in updates-testing *AND* have no negative
|
| |
+ link:https://fedoraproject.org/wiki/Bodhi[Bodhi karma]
|
| |
+ sum of 2 *OR*
|
| |
+ * It must spend at least 14 days in updates-testing
|
| |
+ *AND* have no negative
|
| |
link:https://fedoraproject.org/wiki/Bodhi[Bodhi karma] points.
|
| |
|
| |
For the purposes of this policy, the 'critical path' package set is defined as the following:
|
| |
@@ -235,14 +259,15 @@
|
| |
link:https://fedoraproject.org/wiki/Critical_Path_Packages[critical path package set]
|
| |
* All major desktop environments' core functionality (GNOME, KDE, Xfce, LXDE)
|
| |
* Package updating frameworks
|
| |
- (link:https://apps.fedoraproject.org/packages/gnome-packagekit[``gnome-packagekit``],
|
| |
- link:https://apps.fedoraproject.org/packages/apper[``apper``])
|
| |
- * Major desktop productivity apps. An initial list would be
|
| |
- link:https://apps.fedoraproject.org/packages/firefox[``firefox``],
|
| |
- link:https://apps.fedoraproject.org/packages/kde-baseapps[``kde-baseapps``](konqueror),
|
| |
- link:https://apps.fedoraproject.org/packages/thunderbird[``thunderbird``],
|
| |
- link:https://apps.fedoraproject.org/packages/evolution[``evolution``],
|
| |
- link:https://apps.fedoraproject.org/packages/kdepim[``kdepim``](kmail).
|
| |
+ (link:https://src.fedoraproject.org/rpms/gnome-packagekit[``gnome-packagekit``],
|
| |
+ link:https://src.fedoraproject.org/rpms/apper[``apper``])
|
| |
+ * Major desktop productivity apps.
|
| |
+ An initial list would be
|
| |
+ link:https://src.fedoraproject.org/rpms/firefox[``firefox``],
|
| |
+ link:https://src.fedoraproject.org/rpms/kde-baseapps[``kde-baseapps``](konqueror),
|
| |
+ link:https://src.fedoraproject.org/rpms/thunderbird[``thunderbird``],
|
| |
+ link:https://src.fedoraproject.org/rpms/evolution[``evolution``],
|
| |
+ link:https://src.fedoraproject.org/rpms/kdepim[``kdepim``](kmail).
|
| |
|
| |
Changes to this definition may only be made by xref:index.adoc[FESCo] or their delegate.
|
| |
|
| |
@@ -258,14 +283,14 @@
|
| |
|
| |
Package maintainers *MUST*:
|
| |
|
| |
- * Avoid Major version updates, ABI breakage or API changes if at all possible.
|
| |
+ * Avoid Major version updates, ABI breakage, or API changes if at all possible.
|
| |
* Avoid changing the user experience if at all possible.
|
| |
* Avoid updates that are trivial or don't affect any Fedora users.
|
| |
|
| |
Package maintainers *SHOULD*:
|
| |
|
| |
- * Push *only* major bug fixes and security fixes to the previous stable releases (i.e., at present,
|
| |
- and before).
|
| |
+ * Push *only* major bug fixes and security fixes to the previous stable releases
|
| |
+ (i.e. the current Fedora _N_, and the previous Fedora _N-1_).
|
| |
|
| |
[[exceptions]]
|
| |
=== Exceptions
|
| |
@@ -285,18 +310,18 @@
|
| |
* The package is a "leaf" node. Nothing depends on it or requires it.
|
| |
* The update fixes a security issue that would affect a large number of users.
|
| |
* The update doesn't change ABI/API and nothing needs to be rebuilt against the new version.
|
| |
- * The update fixes serious bugs that many fedora users are encountering.
|
| |
+ * The update fixes serious bugs that many Fedora users are encountering.
|
| |
|
| |
Things that would make it less likely to grant a request:
|
| |
|
| |
* The update converts databases or resources one way to a new format.
|
| |
- * The update requires admin intervention for the service to keep working (config file format
|
| |
- changes, etc)
|
| |
- * The update causes behavior changes (something that was denied is allowed, etc)
|
| |
- * The update changes the UI the end user sees (moves menus or buttons around, changes option names
|
| |
- on command line)
|
| |
- * The update fixes bugs that no fedora user has reported nor would affect many fedora users (i.e.,
|
| |
- fixes for other platforms or configurations).
|
| |
+ * The update requires admin intervention for the service to keep working
|
| |
+ (config file format changes, etc.)
|
| |
+ * The update causes behavior changes (something that was denied is allowed, etc.)
|
| |
+ * The update changes the UI the end user sees
|
| |
+ (moves menus or buttons around, changes option names on command line)
|
| |
+ * The update fixes bugs that no Fedora user has reported nor would affect many Fedora users
|
| |
+ (i.e., fixes for other platforms or configurations).
|
| |
|
| |
[[exceptions-list]]
|
| |
==== Exceptions list
|
| |
@@ -367,10 +392,10 @@
|
| |
devices or formats in compatible ways.
|
| |
|
| |
Examples of this type of package:
|
| |
- link:https://apps.fedoraproject.org/packages/libopenraw[``libopenraw``],
|
| |
- link:https://apps.fedoraproject.org/packages/libimobiledevice[``libimobiledevice``],
|
| |
- link:https://apps.fedoraproject.org/packages/calibre[``calibre``],
|
| |
- link:https://apps.fedoraproject.org/packages/pilot-link[``pilot-link``]
|
| |
+ link:https://src.fedoraproject.org/rpms/libopenraw[``libopenraw``],
|
| |
+ link:https://src.fedoraproject.org/rpms/libimobiledevice[``libimobiledevice``],
|
| |
+ link:https://src.fedoraproject.org/rpms/calibre[``calibre``],
|
| |
+ link:https://src.fedoraproject.org/rpms/pilot-link[``pilot-link``]
|
| |
|
| |
[[database-packages]]
|
| |
==== Database packages
|
| |
@@ -382,8 +407,8 @@
|
| |
rebasing.
|
| |
|
| |
Examples of this type of package:
|
| |
- link:https://apps.fedoraproject.org/packages/spamassassin[``spamassassin``],
|
| |
- link:https://apps.fedoraproject.org/packages/clamav[``clamav``]
|
| |
+ link:https://src.fedoraproject.org/rpms/spamassassin[``spamassassin``],
|
| |
+ link:https://src.fedoraproject.org/rpms/clamav[``clamav``]
|
| |
|
| |
[[examples]]
|
| |
==== Examples
|
| |
@@ -409,23 +434,28 @@
|
| |
changes are (removing the File menu would be rude, but moving the plugin configuration menu item
|
| |
would be acceptable).
|
| |
|
| |
- * Firefox releases an update that only contains changes for other platforms. This update could be
|
| |
- pushed to rawhide (to keep up with the latest version), but should not be pushed to stable
|
| |
- releases, as it does no good to our users and wastes resources to build, update, mirror and
|
| |
- download to our users.
|
| |
|
| |
- * Terminal fails to build from source when tested in a mass rebuild. An updated package should be
|
| |
- pushed to rawhide. Fixes for stable releases should be tested and even committed, but unless there
|
| |
- is a problem with the previous existing build in the stable release, no update should be issued.
|
| |
+ * Firefox releases an update that only contains changes for other platforms.
|
| |
+ This update could be pushed to rawhide (to keep up with the latest version),
|
| |
+ but should not be pushed to stable releases, as it does no good to our users
|
| |
+ and wastes resources to build, update, mirror, and download to our users.
|
| |
+
|
| |
+ * Terminal fails to build from source when tested in a mass rebuild.
|
| |
+ An updated package should be pushed to rawhide.
|
| |
+ Fixes for stable releases should be tested and even committed,
|
| |
+ but unless there is a problem with the previous existing build in the stable release,
|
| |
+ no update should be issued.
|
| |
This update would not change any user facing functions of the package.
|
| |
|
| |
- * KDE upstream releases a new major version, and at the same time stops supporting the older release
|
| |
- that is in Fedora N and Fedora N-1. This release includes a large number of bugfixes, mixed with
|
| |
- enhancements and security fixes. An exception for this type of update would need to consider:
|
| |
- ability to backport major fixes/security issues, type and amount of bugs fixed, ability to not
|
| |
- update other parts of fedora for this update (i.e., avoid Qt or other base library ABI changes),
|
| |
- amount of testing and end user visible changes. An exception like this would be on a case by case
|
| |
- bases based on all the above.
|
| |
+ * KDE upstream releases a new major version,
|
| |
+ and at the same time stops supporting the older release that is in Fedora N and Fedora N-1.
|
| |
+ This release includes a large number of bugfixes, mixed with enhancements and security fixes.
|
| |
+ An exception for this type of update would need to consider:
|
| |
+ ability to backport major fixes/security issues,
|
| |
+ type and amount of bugs fixed,
|
| |
+ ability to not update other parts of Fedora for this update (i.e., avoid Qt or other base library ABI changes),
|
| |
+ amount of testing and end user visible changes.
|
| |
+ An exception like this would be on a case by case basis, based on all the above.
|
| |
|
| |
[[problems-or-issues-with-updates]]
|
| |
== Problems or issues with Updates
|
| |
@@ -481,4 +511,4 @@
|
| |
against their good will, and is likely to drive testers away. Bodhi and updates-testing are not a
|
| |
place for experimentation or advanced notification of potentially disruptive updates. These should
|
| |
be handled with packages in link:https://copr.fedorainfracloud.org/[Copr] or another public repository
|
| |
- with a message to call for testing on the appropriate mailing lists.
|
| |
\ No newline at end of file
|
| |
+ with a message to call for testing on the appropriate mailing lists.
|
| |
Fix issues introduced by automated conversion to AsciiDoc, and update/correct content:
[multiblock footnote omitted]
insertions with additional references to labeled footnote1 — (Note: Some examples are pretty out of date (
pilot-link
!?), they could use reviewing and refreshing.)