From Fedora Project Wiki
m (Announcing change proposal)
m (Minor stylistic tweaks.)
Line 24: Line 24:


== Summary ==
== Summary ==
Remove yum (v3) and all related packages from Fedora.
Remove the YUM (version 3) package manager stack from Fedora.


== Owner ==
== Owner ==
Line 56: Line 56:


== Detailed Description ==
== Detailed Description ==
Remove packages from the distribution:
Remove the following packages from the distribution:
* createrepo
* createrepo
* yum
* yum
Line 65: Line 65:
* python-urlgrabber
* python-urlgrabber


All these packages should no longer be used and all software using them should be migrated to DNF.
All these packages should no longer be used by the end-user, and all software using them should be migrated to DNF.


Compatibility:
Compatibility:
* Important packages such as yum, createrepo or yum-utils will be provided/obsoleted by relevant packages from the dnf stack
* Important packages such as ''yum'', ''createrepo'' or ''yum-utils'' will be provided/obsoleted by relevant packages from the DNF stack
* Important executables such yum, repoquery, createrepo, etc. will be provided either as new executables or via symlinks
* Important executables such ''/usr/bin/yum'', ''/usr/bin/repoquery'' or ''/usr/bin/createrepo'' will be provided either as new executables or symlinks to the respective DNF-based counterparts


== Benefit to Fedora ==
== Benefit to Fedora ==
Drop an old package manager that has no active upstream development.
Drop an old package manager that has no active upstream community.
Move existing users to DNF which that has active development.
Move existing users to DNF that is under active development.
Secondary benefit is reducing number of packages in Fedora that still depend on Python 2.
Secondary benefit is reducing number of packages in Fedora that still depend on Python 2.


== Scope ==
== Scope ==
* Proposal owners: Remove packages from the distribution: createrepo, yum, yum-langpacks, yum-utils, yum-metadata-parser, yum-updatesd, python-urlgrabber
* Proposal owners: Remove the packages listed in the [[Detailed Description]] section from the distribution
* Other developers: Either remove packages from the distribution or switch them to DNF
* Other developers: Either remove the depending packages from the distribution or port them to the DNF stack
* Release engineering: [https://pagure.io/releng/issue/7588 #7588]
* Release engineering: [https://pagure.io/releng/issue/7588 #7588]
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
Line 89: Line 89:


== Upgrade/compatibility impact ==
== Upgrade/compatibility impact ==
Any tool based on YUM 3 Python API will stop working. This applies on any 3rd party software which won't be changed in Fedora as part of this change.
Any tool based on the YUM 3 Python API will stop working. This applies on any 3rd party software which won't be changed in Fedora as part of this change.
CLI compatibility will be provided by DNF.
CLI compatibility will be provided by DNF.


== How To Test ==
== How To Test ==
Repoclosure passes after dropping the packages.
''repoclosure'' passes after dropping the packages.


== User Experience ==
== User Experience ==
There shouldn't be any impact on YUM users because the functionality is provided by DNF already.
There shouldn't be any impact on the YUM users because the package management functionality is provided by DNF already.
Users of tools listed in the Dependencies section shouldn't see any difference if the migration to DNF is done properly.
Users of tools listed in the [[Dependencies]] section shouldn't see any difference if the migration to DNF is done properly.


== Dependencies ==
== Dependencies ==
The list of source packages (SRPMs) that still depend on some of the yum-related packages to be removed:
The list of source packages (SRPMs) that still depend on (some parts of) the YUM stack:


* cas
* cas
Line 219: Line 219:


== Release Notes ==
== Release Notes ==
Inform end-users about removing the YUM 3 stack and definitive migration to DNF.
Inform end-users about removing the YUM 3 stack and the definitive migration to DNF.


[[Category:ChangeAnnounced]]
[[Category:ChangeAnnounced]]

Revision as of 09:40, 29 January 2019


Retire YUM 3

Summary

Remove the YUM (version 3) package manager stack from Fedora.

Owner

Current status

  • Targeted release: Fedora 30
  • Last updated: 2019-01-29
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

Remove the following packages from the distribution:

  • createrepo
  • yum
  • yum-langpacks
  • yum-utils
  • yum-metadata-parser
  • yum-updatesd
  • python-urlgrabber

All these packages should no longer be used by the end-user, and all software using them should be migrated to DNF.

Compatibility:

  • Important packages such as yum, createrepo or yum-utils will be provided/obsoleted by relevant packages from the DNF stack
  • Important executables such /usr/bin/yum, /usr/bin/repoquery or /usr/bin/createrepo will be provided either as new executables or symlinks to the respective DNF-based counterparts

Benefit to Fedora

Drop an old package manager that has no active upstream community. Move existing users to DNF that is under active development. Secondary benefit is reducing number of packages in Fedora that still depend on Python 2.

Scope

  • Proposal owners: Remove the packages listed in the Detailed Description section from the distribution
  • Other developers: Either remove the depending packages from the distribution or port them to the DNF stack
  • Release engineering: #7588
  • Policies and guidelines: N/A
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

Any tool based on the YUM 3 Python API will stop working. This applies on any 3rd party software which won't be changed in Fedora as part of this change. CLI compatibility will be provided by DNF.

How To Test

repoclosure passes after dropping the packages.

User Experience

There shouldn't be any impact on the YUM users because the package management functionality is provided by DNF already. Users of tools listed in the Dependencies section shouldn't see any difference if the migration to DNF is done properly.

Dependencies

The list of source packages (SRPMs) that still depend on (some parts of) the YUM stack:

  • cas
  • cobbler
  • ddiskit
    • bugzilla: N/A
    • requires: createrepo
    • rpms: ddiskit
  • diskimage-builder
    • bugzilla: N/A
    • requires: yum-utils
    • rpms: diskimage-builder
  • dlrn
    • bugzilla: N/A
    • requires: createrepo
    • rpms: python3-dlrn
  • fusioninventory-agent
    • bugzilla: N/A
    • requires: yum
    • rpms: fusioninventory-agent-yum-plugin
  • grinder
    • bugzilla: N/A
    • requires: createrepo
    • rpms: grinder
  • imagefactory
    • bugzilla: N/A
    • requires: python2-urlgrabber
    • rpms: imagefactory
  • kiwi
    • bugzilla: N/A
    • requires: yum
    • rpms: kiwi-systemdeps
  • koji
  • koji-containerbuild
    • bugzilla: N/A
    • requires: python2-urlgrabber
    • rpms: koji-containerbuild-builder
  • mach
  • mash
  • nagios-plugins-check-updates
    • bugzilla: N/A
    • requires: yum
    • rpms: nagios-plugins-check-updates
  • osc
    • bugzilla: N/A
    • requires: python2-urlgrabber
    • rpms: osc
  • perl-Fedora-Rebuild
    • bugzilla: N/A
    • requires: createrepo
    • rpms: perl-Fedora-Rebuild
  • plague
    • bugzilla: N/A
    • requires: createrepo
    • rpms: plague
  • pungi
    • bugzilla: N/A
    • requires: createrepo, yum, yum-utils
    • rpms: pungi-legacy
  • repo_manager
    • bugzilla: N/A
    • requires: createrepo
    • rpms: repo_manager
  • repoview
  • sigul
    • bugzilla: N/A
    • requires: python2-urlgrabber
    • rpms: sigul-bridge
  • snake
  • system-config-kickstart
    • bugzilla: N/A
    • requires: yum
    • rpms: system-config-kickstart
  • yum-axelget
  • yum-rhn-plugin
    • bugzilla: N/A (package was recently retired but no compose happened since)
    • requires: yum
    • rpms: yum-rhn-plugin

Updated: 2019-01-28

Generated with: https://gist.github.com/dmnks/787b121503ba1e9d1565d58b4a4e3a62

$ python3 deps.py createrepo yum yum-langpacks yum-utils yum-metadata-parser yum-updatesd python-urlgrabber

Contingency Plan

  • Contingency mechanism: Do not remove the packages in the current release.
  • Contingency deadline: Beta Freeze
  • Blocks release? No
  • Blocks product? No

Documentation

N/A

Release Notes

Inform end-users about removing the YUM 3 stack and the definitive migration to DNF.