-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Never use the pkg_resources metadata backend on python 3.13+ #13010
base: main
Are you sure you want to change the base?
Conversation
84c50f5
to
0e81b3c
Compare
0e81b3c
to
840dc8f
Compare
840dc8f
to
d8f2eac
Compare
We should probably check in our redistributors to make sure they're OK with this change. /cc @FFY00 @eli-schwartz @stefanor @doko42 @kitterma @hroncok TL;DR, we'd like to stop using Anyway, for a long time, pip has defaulted to using the We'd like to disable these escape hatches on Python 3.13 so we have a migration path to eliminating the |
Gentoo does not ship any .egg files, which I believe means we shouldn't be affected by this change, correct? |
If we do, it's always some cmake-wrpapped-autotools-bash-script-calling-setup.py-with-weird-arguments situation. Such packages are hardly ever interacted with by the rest of the Python ecosystem. And we don't want pip to uninstall RPM-installed packages. So that part is more than OK. Anyway, on Fedora 42:
(based on |
I suggest it would be excellent to make setuptools not create eggs first before you land this, but perhaps you need to land this before you make this a priority for setuptools :/ |
We have no control over what setuptools does, unfortunately, but given that pypa/setuptools#3143 appears to be triggered only by using the deprecated |
In Debian we have a couple of packages installed as
Many of these are off We use |
Thanks @eli-schwartz @hroncok and @stefanor for responding!
@hroncok I did reach out to the the setuptools folks to flag pypa/setuptools#3143, but ultimately whether they decide to do anything is entirely up to them. We have no control over what setuptools does, sadly.
@eli-schwartz Assuming Gentoo doesn't patch pip or CPython to force the use of the legacy
@stefanor Sounds great! Thanks for letting us know! I don't think we've heard from the Arch folks yet? Filipe is probably busy so I'll leave it for a little bit longer and then ping someone else. Please note that I am purposefully making no comment on whether we should actually stop using the |
Interestingly, Gentoo has this package but ours installs egg-info, not an egg. It is still a legacy package and runs Arguably it should be migrated from legacy setup.py with egg-info to a wheel builder/installer anyway, even though the pkg_resources backend for pip isn't affected. I guess this ancient unmaintained JTAG package is not commonly configured by users to enable the non-default, optional python backend. :)
Yup, I agree this shouldn't matter.
Another automake installation of a setup.py using |
On python 3.13+ we don't support the fallback to the
pkg_resources
metadata backend, and don't attempt to detect.egg
installed distributions (#12330).In effect, this means
pkg_resources
is never used at all by pip on python 3.13 (to the best of my knowledge).This does not mean we will not want to drop support for the pkg_resources backend before we drop support for python 3.12, but at least this places a limit on it.
@pypa/pip-committers what do you think?