On Jun 16, 2017 12:13 PM, "Daniel Holth" <dho...@gmail.com> wrote:
Build systems should be able to run under a different version of Python than the one that is running 'pip install'. Does PEP 517 have anything to say about that? No, and I don't think it should. At the start of the bootstrap process, the *only* thing we know about the system doing the build is that the python being used to run pip is installed. Even if the build system could declare a requirement for some other version of python, then what could we even do with that information? pip3 install python==2.7? I guess I can imagine building some system that tries to find other interpreters, or where you can configure a database of installed interpreters that pip reads, or even making it so that you actually can do the equivalent of "pip3 install python==2.7". But that's all *way* out of scope for this initial PEP. Then a flit back end could have a small amount of Python 2.7 compatible interface code and create the wheel with Python 3 anyway. If someone wants to experiment with this, then it's possible within the PEP 517 framework to write a 2.7-compatible backend that searches the system for a python 3 install and then uses it. I'm not sure it's a good idea, but you can do it :-). For flit in particular I suspect this is unnecessary though. I see three cases: 1. Developers building wheels to release: they can use python 3, no big deal. The resulting wheels will be tagged as py2 or py2.py3 as appropriate. 2. End users installing from pypi: there are wheels on pypi so they never need to run flit. (Key observation here: flit wheels are always pure python, so they work everywhere the project is supported all.) 3. End users who have for whatever reason decided to manually get a source tree (via git checkout or unpacking an sdist), and want to install it: if they can manually get a source tree, they can also manually read and follow directions to use python 3 to build it :-) -n
_______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig