How to remove a package at end of life

From FedoraProject

Revision as of 14:46, 7 February 2013 by Toshio (Talk | contribs)

Jump to: navigation, search

When a package reaches the end of its useful life, the following procedure will let other people -- and automated processes! -- know both not to expect any more releases, and why it was removed. The process is simple.

Please execute the following steps in the order indicated.

  1. Make sure the package is properly Obsoleted/Provided by something if it is being replaced, see Renaming/Replacing Guidelines. If not, go on to the next step.
  2. Run fedpkg retire MSG. This will recursively remove all files, then add a dead.package file to git. Do it for all affected package branches (usually master only, but also the branched release if it has not yet released). The MSG parameter is a message which should briefly explain where this package went ('Obsolete package', 'Renamed to bar' or the like) and will be written in the dead.package file.
  3. git rm all files in the other branches only if there are special factors at work, like licensing issues, or package being removed completely from Fedora.
  4. Remove the package from comps if it is listed.
  5. Check for and remove the package from any spins kickstarts files: http://git.fedorahosted.org/git/spin-kickstarts.git
  6. Mark the package as "retired" in the package database system: log in with your FAS credentials, go to the page for your package, and click the Retire package button for each branch on which you are retiring the package. Do not execute this step if you don't have already completed steps 2 and 3, otherwise you will have to ask a provenpackager to perform those steps for you.
  7. If the package was registered on Upstream_release_monitoring, remove it from that page
  8. File a ticket for rel-eng (component koji) asking the package to be blocked from the appropriate collections in which it is retired.

Note that you can use this process for specific EPEL branches as well, for example if your package has been added to base RHEL. Just do the steps only on/refering to the specific branch (eg, el6)