< Changes
Deprecate python-pytoml
Summary
The (
python-pytoml) package will be deprecated in Fedora 33. Pytoml is deprecated upstream in favor of toml (
python3-pytoml), but existing Fedora packages depend on it, so we cannot remove it yet. Packagers are encouraged to work with upstream to switch to
python-toml, but
python-toml remains available until it is a leaf package, it will be removed then (possibly not yet in Fedora 33).
python-pytoml
Owner
- Name: Miro Hrončok
- Email: mhroncok@redhat.com
Current status
- Targeted release: Fedora 33
- Last updated: 2020-07-07
- FESCo issue: #2427
- Tracker bug: #1854484
- Release notes tracker: #525
Detailed Description
The package is deprecated upstream:
python-pytoml
> The pytoml project is no longer being actively maintained. Consider using the toml package instead.
We'd like to drop it from Fedora, but several packages still require it. Before we attempt to remove the package, we need to stop new packages to (Build)Require , hence we want to have it deprecated.
python3-pytoml
Packagers are encouraged to switch to with upstream involvement. Downstream patches to switch from pytoml to toml are not encouraged.
python3-toml
Note that repoquery gives many packages that BuildRequire :
python3-toml
$ repoquery --repo=rawhide{,-source} --whatrequires python3-pytoml
ilua-0:0.2.1-1.fc33.src
pyproject-rpm-macros-0:0-15.fc33.noarch
pyproject-rpm-macros-0:0-15.fc33.src
python-black-0:19.10~b0-3.fc33.src
python-chaospy-0:3.2.12-1.fc33.src
python-copr-0:1.102-1.fc33.src
python-decopatch-0:1.4.6-3.fc33.src
python-elementpath-0:1.4.0-4.fc33.src
python-flit-0:2.3.0-3.fc33.src
python-latexcodec-0:2.0.1-1.fc33.src
python-makefun-0:1.6.11-3.fc33.src
python-numpoly-0:0.2.3-2.fc33.src
python-openqa_client-0:4.1.0-2.fc33.src
python-pint-0:0.13-1.fc33~bootstrap.src
python-pybtex-docutils-0:0.2.2-4.fc33.src
python-pytest-cases-0:1.11.1-3.fc33.src
python-pytest-harvest-0:1.7.2-3.fc33.src
python-pytest-steps-0:1.7.2-2.fc33.src
python-readthedocs-sphinx-ext-0:2.0.0-1.fc33.src
python-requests-download-0:0.1.2-3.fc33.src
python-sphinx-copybutton-0:0.2.12-1.fc33.src
python-sphinxcontrib-bibtex-0:1.0.0-4.fc33.src
python-wikitcms-0:2.6.3-2.fc33.src
python-xmlschema-0:1.0.18-3.fc33.src
python-xmlsec-0:1.3.8-1.fc33.src
python3-flit-0:2.3.0-3.fc33.noarch
python3-flit-core-0:2.3.0-3.fc33.noarch
But many of them are only there because the dependency was generated by BuildRequires generator which was since already updated to use
pyproject-rpm-macros. When rebuilt with updated
python3-toml, the dependency will be replaced with
pyproject-rpm-macros.
python3-toml
$ repoquery --repo=rawhide{,-source} --whatrequires pyproject-rpm-macros
ansible-lint-0:4.2.0-4.fc33.src
ilua-0:0.2.1-1.fc33.src
python-PyGithub-0:1.51-2.fc33.src
python-black-0:19.10~b0-3.fc33.src
python-chaospy-0:3.2.12-1.fc33.src
python-copr-0:1.102-1.fc33.src
python-decopatch-0:1.4.6-3.fc33.src
python-elementpath-0:1.4.0-4.fc33.src
python-latexcodec-0:2.0.1-1.fc33.src
python-makefun-0:1.6.11-3.fc33.src
python-numpoly-0:0.2.3-2.fc33.src
python-openqa_client-0:4.1.0-2.fc33.src
python-pep517-0:0.7.0-4.fc33.src
python-pint-0:0.13-1.fc33~bootstrap.src
python-pybtex-docutils-0:0.2.2-4.fc33.src
python-pytest-cases-0:1.11.1-3.fc33.src
python-pytest-harvest-0:1.7.2-3.fc33.src
python-pytest-steps-0:1.7.2-2.fc33.src
python-readthedocs-sphinx-ext-0:2.0.0-1.fc33.src
python-requests-download-0:0.1.2-3.fc33.src
python-sphinx-copybutton-0:0.2.12-1.fc33.src
python-sphinxcontrib-bibtex-0:1.0.0-4.fc33.src
python-tox-current-env-0:0.0.2-5.fc33.src
python-wikitcms-0:2.6.3-2.fc33.src
python-xmlschema-0:1.0.18-3.fc33.src
python-xmlsec-0:1.3.8-1.fc33.src
The only really affected package is . Upstream already discusses the transition: https://github.com/takluyver/flit/issues/255
python-flit
Once all dependencies are removed, we plan to retire , whether it will be in Fedora 33 or later.
python-pytoml
Feedback
The intent was announced at https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org/message/MOAHRKMZRFNR34WHPICHCP6MR3IWY4FW/ but there was no feedback. The primary point of contact for the and
python-pytoml packages is on board.
python-toml
Benefit to Fedora
An upstream deprecated package will not be depended upon by new packages.
Scope
- Proposal owners: Deprecate
. Work with flit upstream to make the transition as well. Once the dependency is removed from flit, rebuild remaining packages using
python3-pytomland retire
pyproject-rpm-macros(possibly later than Fedora 33).
python-pytoml
- Other developers: No action needed. Don't add new dependencies on
.
python3-pytoml
- 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.
Once retired, we don't plan to provide python3-pytoml from , because it cannot work as drop-in replacement (the Python module has a different name). The package will eventually be obsoleted by
python3-toml once Python is updated to 3.10 to avoid broken upgrades.
fedora-obsolete-packages
How To Test
$ repoquery --repo=rawhide --provides python3-pytoml ... 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? product
Documentation
N/A (not a System Wide Change)
