On 14. 10. 22 21:36, Maxwell G via devel wrote:
On 22/10/06, Ben Cotton wrote:
https://fedoraproject.org/wiki/Changes/DeprecatePythonToml
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-toml}} (`python3-toml`) package will be
[https://docs.fedoraproject.org/en-US/packaging-guidelines/deprecating-packages/
deprecated] in [[Releases/38|Fedora 38]]. The
[https://pypi.org/project/toml/ upstream toml package] is considered
unmaintained (see [[#Detailed_Description|description]]) and Python
3.11 contains [https://peps.python.org/pep-0680/ a TOML-reading
library in the standard library]. Existing Fedora packages depend on
{{package|python-toml}}, so we cannot remove it yet. Packagers are
encouraged to work with upstreams to switch to
[https://peps.python.org/pep-0680/
tomllib]/[https://pypi.org/project/tomli/ tomli] for reading toml or
[https://pypi.org/project/tomli/ tomli-w] for writing it. But
{{package|python-toml}} remains available until it is a leaf package,
it will be removed then (possibly not yet in Fedora 38).
From the table of contents:
1.4 Detailed Description
1.4.1 List of components still (Build)Requiring python3-toml
1.4.2 Migrating to tomllib
1.4.3 Migrating to tomli
1.4.4 Migrating to tomllib on Python 3.11+ and falling back to tomli
1.4.5 Migrating to tomllib on Python 3.11+ and falling back to toml
1.4.6 Migrating to tomli-w
Perhaps the "Migrating to tomllib on Python 3.11+ and falling back to
tomli" approach should be more strongly recommended? tomllib is based
off of tomli's code and is yet another thing that has to be bootstrapped
during Python rebuilds. python-toml AND python-tomli have been removed
from ELN/RHEL 10, as they're both made redundant by tomllib.
Sure, "Migrating to tomllib on Python 3.11+ and falling back to tomli" is the
recommended approach. How do I make that more visible?
I've removed the "fallback to toml" option entirely now when toml is in EPEL 8
(thanks for that).
I wonder if it would make sense to also phase out python-tomli at some
point.
I was thinking about deprecating that one as well, but I thought perhaps it's
too soon for some upstreams. When we deal with RHEL 10, patching tomli imports
to make them tomllib imports seems "trivial" (unlike migrating from toml).
One slight correction: Neither python-tomli nor python-toml has not been
removed from ELN, they will only be removed once not depended upon by other ELN
pacakges.
https://tiny.distro.builders/view-rpm--view-eln--python3-tomli.html
https://tiny.distro.builders/view-rpm--view-eln--python3-toml.html
FWIW, the list of packages that directly require tomli is
relatively small.
$ ./python_toml_deps.py python3-tomli
Runtime dependents of python3-tomli:
1. pyp2spec
I can deal with that one.
2. python3-check-manifest
3. python3-flit
4. python3-flit-core
Flit has been dealt with upstream:
https://github.com/pypa/flit/commit/dba0f317c52
5. python3-pep517
6. python3-pytest
https://github.com/pytest-dev/pytest/commit/2e8a319828
7. python3-setuptools_scm
8. python3-sphinx-theme-builder
9. python3-towncrier
10. python3-versioningit
Buildtime dependents of python3-tomli:
1. bst-external
2. hatch
3. pyp2spec
4. pytest
5. python-diff-cover
6. python-flit
7. python-pep517
8. python-pyproject-metadata
9. python-setuptools_scm
10. python-sphinx-theme-builder
11. python-towncrier
12. python-versioningit
13. python3-mypy
14. sagemath
Source RPM names:
1. bst-external
2. hatch
3. pyp2spec
4. pytest
5. python-check-manifest
6. python-diff-cover
7. python-flit
8. python-pep517
9. python-pyproject-metadata
10. python-setuptools_scm
11. python-sphinx-theme-builder
12. python-towncrier
13. python-versioningit
14. python3-mypy
15. sagemath
I am slowly walking trough upstream projects and dealing with the tomli
dependency. Chances are, we might get rid of it naturally without deprecation.
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org
Do not reply to spam, report it:
https://pagure.io/fedora-infrastructure/new_issue