Wiki - https://fedoraproject.org/wiki/Changes/DeprecatePythonPytestRunner Discussion Thread - https://discussion.fedoraproject.org/t/f42-change-proposal-deprecate-python-pytest-runner-self-contained/141620 This is a proposed Change for Fedora Linux. This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee. == Summary == The {{package|python-pytest-runner}} ({{package|python3-pytest-runner}}) package will be [https://docs.fedoraproject.org/en-US/packaging-guidelines/deprecating-packages/ deprecated] in [https://docs.fedoraproject.org/en-US/releases/f42/ Fedora Linux 42]. Dependent packages are encouraged to switch to using `pytest` directly. == Owner == * Name: [[User:salimma|Michel Lind]], [[User:music|Ben Beasley]] * Email: michel@xxxxxxxxxxxxxxx, code@xxxxxxxxxxxxxxxxxx == Detailed Description == pytest-runner has been considered [https://github.com/pytest-dev/pytest-runner/commit/78a492cb9f611a4fccaf6556c966b848885833ba deprecated upstream since 2019] and the repo upstream was archived over a year ago (December 3, 2023). Per upstream, {{quote| pytest-runner depends on deprecated features of setuptools and relies on features that break security mechanisms in pip. For example `setup_requires` and `tests_require` bypass `pip --require-hashes`. See also https://github.com/pypa/setuptools/issues/1684. |source=pytest-runner github|}} === How to migrate to pytest === * Remove 'pytest-runner' from your 'setup_requires', preferably removing the `setup_requires` option. * Remove 'pytest' and any other testing requirements from 'tests_require', preferably removing the `setup_requires` option. * Use a requirement-test.txt file to hold test dependencies * Invoke tests with `pytest` * Another good option is to configure a `tox.ini` next to your `setup.cfg`. https://tox.readthedocs.io/en/latest/ == Feedback == == Benefit to Fedora == The security benefits mostly do not apply to us, as we install dependencies from RPM packages. But preventing additional packages from depending on a package with a dead upstream that might increasingly become incompatible with newer `setuptools` releases would avoid us accumulating tech debt and having to deal with potential test runner failures in the future. == Scope == * Proposal owners: ** Mark {{package|python-pytest-runner}} as deprecated in `rawhide` ** Send PRs to affected packages to remove dependencies on this package * Other developers: ** If your package depends on {{package|python-pytest-runner}, adjust it to drop the dependency * Release engineering: no impact anticipated * Policies and guidelines: N/A (not needed for this Change) * Trademark approval: N/A (not needed for this Change) * Alignment with the Fedora Strategy: N/A == Upgrade/compatibility impact == N/A. This just deprecates the package, and stops it from being used in new dependencies. == Early Testing (Optional) == Do you require 'QA Blueprint' support? N == How To Test == <code> $ fedrq pkgs python3-pytest-runner -F provides | grep deprecated deprecated() </code> == 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) == Documentation == N/A (not a System Wide Change) == Release Notes == -- Aoife Moloney Fedora Operations Architect Fedora Project Matrix: @amoloney:fedora.im IRC: amoloney -- _______________________________________________ devel-announce mailing list -- devel-announce@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-announce-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel-announce@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue -- _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue