[Python-Dev] Call for attention: pip’s migration path from distutils to sysconfig is narrowing

2021-04-06 Thread Tzu-ping Chung
Cross-posted from https://discuss.python.org/t/8111 on Brett’s suggestion.

A while ago, I proposed pip’s migration plan from distutils to sysconfig[1], in
preparation of distuitls’s deprecation and planned removal in Python 3.12. When
working on the implementation, however, I realised sysconfig currently lacks
important abstractions that pip needs to correctly interface with downstream
Python redistributors and alternative Python implementations. I raised the
issue in b.p.o.43312[2] and provided a pull request[3], but failed to progress
things forward.

With only one alpha window left[4], time is running out for the change to make
it into 3.10. If this has to wait for 3.11, pip will be left with only one year
to perform the migration away from distutils and detect possible backward
incompatibilities, which, since Python packaging tends to have a very long tail
of users on older Python versions, would make the distutils removal extremely
disruptive.

I wish this does not sound like I’m pressuring people to accept my patch; that
is not my intention at all. I do, however, very strongly feel pip’s inability
to remove distutils dependence is not taken seriously enough, and will be very
problematic if the status quo continues. Either something is done for sysconfig
in Python 3.10, or distutils’s removal must be delayed indefinitely until pip
is able to replace its distutils usages with stdlib replacements. Otherwise,
3.12 users will not be able to use pip.

[1]: https://github.com/pypa/pip/issues/9617
[2]: https://bugs.python.org/issue43312
[3]: https://github.com/python/cpython/pull/24644
[4]: https://discuss.python.org/t/8107


--
Tzu-ping Chung (@uranusjr)
uranu...@gmail.com
https://uranusjr.com

___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/GJ2X7Q65FUROWRTP5D7GZB5GCNSVAT2E/
Code of Conduct: http://python.org/psf/codeofconduct/


[Python-Dev] Fixing sys.platlibdir usages in sysconfig on Python 3.10

2021-09-05 Thread Tzu-ping Chung
Hi

I’d like to raise awareness to the two b.p.o. entries I recently created and 
their corresponding PRs:
sysconfig's posix_user scheme has different platlib value to distutils's 
unix_user
https://bugs.python.org/issue44860

sysconfig's posix_home scheme has different platlib value to distutils's 
unix_home
https://bugs.python.org/issue45035
Since Python 3.10 switches from distutils to sysconfig as the canonical 
location to discover/install packages, I’d very much want these two to be 
included in 3.10.0 (and backported to 3.9 for consistency). Otherwise Python 
distributions that sets sys.platlibdir to a non-default value (e.g. Red Hat 
distributions sets it to lib64) will not be able to correctly run pip 21.3 (due 
October) on Python 3.10.
TP
--
Tzu-ping Chung (@uranusjr)
uranu...@gmail.com
https://uranusjr.com
___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/5UU6V2B3KBS4Z7OG5T7D6YQZASFNSBJM/
Code of Conduct: http://python.org/psf/codeofconduct/