
On Sun, Jun 25, 2017, at 08:41 AM, Nick Coghlan wrote:
Aside from not producing an archive, the bit that makes `prepare_wheel_build_files` notably different from `build_sdist` is that it relies on `get_build_wheel_requires` *not* on `get_build_sdist_requires`: https://www.python.org/dev/peps/pep-0517/#build-environment
This reminds me: while implementing a wrapper to call PEP 517 hooks, a problem occurred to me. I have implemented prepare_wheel_build_files with a fallback to making an sdist if the hook is not defined: https://github.com/takluyver/pep517/blob/ee43a9334c377d7c37badcc8527cb7a8500... But in this case, the build_sdist hook will be invoked in an environment with the build-wheel-deps installed, not the build-sdist-deps. Working around this would require moving the fallback a couple of levels up the stack to a component that knows about installing packages for the build process. That's not impossible, but it's inelegant and less efficient. Thomas