-
-
Notifications
You must be signed in to change notification settings - Fork 256
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
Experiment: Allow using pip 23.1.x with Python 3.12 #2314
Conversation
CI gave you at least 1 answer, pkgutil.ImpImporter is gone in 3.12 and that Pip needs it: https://docs.python.org/3.11/library/pkgutil.html#pkgutil.ImpImporter @huonw perhaps a good question is why you're trying to search for a mistake here. Is there some need driving wanting older Pip to work with 3.12? I could've messed up but I also sunk alot of time into this transition to be ready on time for Pants, etc since I initially thought it would require cutting Pex 3 / dropping Python 2.7 support. |
Brief reply to start with because I'm on mobile: I'm investigating behaviour here because pip 23.1 is apparently working for me on arm macOS with Python 3.12, as you can see in the description (and, for instance, the same steps with an earlier version do not work, and fail with errors similar to CI here). I'm not looking for a mistake (I apologise if it came across that way) or demanding more of your time. In fact, it's an attempt at the exact opposite: I'm doing the debugging/experimenting myself so I'm more informed before asking you any questions/getting reviews etc. |
Ok. Well, perhaps most simply, your quick check used
See: pypa/pip#12053 For completeness, when trying to get a gut feel for this sort of thing, know Pex actually uses all of |
Okay, thanks for the fish.
Right, that's helpful gut feel. |
This adjusts the Python version upper bounds for the pip 23.1.x series, since they seem to work with Python 3.12 locally, but this was excluded by the range.
In #2172, support for Python 3.12 was added to pex. At that time, it seemed like pip 23.1.x didn't work with Python 3.12, but, some naive tests suggests it does, now:
Does pex's CI agree? Is there background to the ranges chosen #2172 that isn't recorded somewhere I could find?