From Fedora Project Wiki

< Changes

Revision as of 08:10, 15 January 2020 by Zbyszek (talk | contribs) (→‎Summary: fix typo)


Deprecate python-nose

Summary

The Package-x-generic-16.pngpython-nose (Package-x-generic-16.pngpython3-nose) package will be deprecated in Fedora 32. Nose is dead upstream, but far too many packages still BuildRequire it, so we cannot remove it yet. Packagers are encouraged to switch to Package-x-generic-16.pngpython3-pytest or Package-x-generic-16.pngpython3-nose2, but Package-x-generic-16.pngpython3-nose remains available for the time being.

Owner

Current status

  • Targeted release: Fedora 32
  • Last updated: 2020-01-15
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

The Package-x-generic-16.pngpython-nose package regularly requires downstream only patches to support new Python versions.

Upstream is long dead and has a notice on the website that says:

> Nose has been in maintenance mode for the past several years and will likely cease without a new person/team to take over maintainership. New projects should consider using Nose2, py.test, or just plain unittest/unittest2.

We'd like to drop it from Fedora, but 27 packages require it on runtime and 323 on build time (only direct (Build)Requires were counted, on 2020-01-13). Before we attempt to make the number smaller, we need to stop new packages to (Build)Require Package-x-generic-16.pngpython3-nose, hence we want to have it deprecated.

Packagers are encouraged to switch to Package-x-generic-16.pngpython3-pytest or Package-x-generic-16.pngpython3-nose2, but Package-x-generic-16.pngpython3-nose remains available for the time being without a known removal date. Future removal is possible, but not part of this proposal.

Benefit to Fedora

No new packages will depend on a dead test runner. Eventually, bootstrapping new Python versions in Fedora won't be blocked on another downstream only patch for nose.

Scope

  • Proposal owners: Deprecate Package-x-generic-16.pngpython3-nose. Help package maintainers convert to other test runners when asked.
  • Other developers: Nothing required (not a System Wide Change). Optionally, drop the dependency on nose from existing packages.
  • Release engineering: N/A (not a System Wide Change)
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

The package will remain available. Only new packages cannot depend on it.

How To Test

$ repoquery --repo=rawhide --provides python3-nose
...
deprecated()
...

User Experience

No changes.

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change), Yes/No
  • Blocks product? N/A

Documentation

N/A (not a System Wide Change)

Release Notes