On 3 June 2017 at 04:53, C Anthony Risinger firstname.lastname@example.org wrote:
I want to make sure I understand what I'd need to do, as a user, in a post PEP 517 world. Say I wanted to accomplish the following three things:
Since I can only define one entrypoint for build-system.build-backend, I can't point directly at setuptools_scm (or equiv) as it only achieves the first, I can't point directly at cython or cffi (or equiv) as it only achieves the second, and I can't point directly at my-custom-backend or distutils as it only achieves the third... right? If I added setuptools_scm and cffi to build-system.requires, will it have an opportunity to somehow do something useful before my-custom-backend begins its work?
I agree, this isn't something that's been clearly set out yet. Obviously setuptools support isn't going away any time soon, so you can just carry on as you do now - but I understand that's not what you're asking.
Let's assume there's a new PEP 517 backend, call it setuptools_tng, that handles building C files using the platform compiler. That's basically the replacement for setup.py. Then it would be down to that backend to provide a means of hooking into setuptools_scm and cython, much like at the moment you specify that you're using them in setup.py.
Obviously, you might want to use setuptools_scm with other backends. In that case, maybe backend developers would need to come up with a unified plugin system. But it could just be a case of saying to the flit (or other backend) developers, "please add support for setuptools_scm".
So, basically the answer is that this is an open question for the new backend development ecosystem. But it's not something PEP 517 needs to take a view on.
Hope that helps, Paul