[Note: I've reverted the PEP to Draft status while this discussion is ongoing: https://github.com/python/peps/blob/master/pep-0517.txt]
On 3 June 2017 at 00:56, Thomas Kluyver firstname.lastname@example.org wrote:
On Fri, Jun 2, 2017, at 03:41 PM, Nick Coghlan wrote:
Instead, the flow that I think makes sense is "VCS -> sdist tree [-> sdist tree -> sdist tree -> ...] -> wheel", and the above model where the export filtering is only used when PKG-INFO doesn't exist yet will give us that.
I still object to conflating 'filter the files needed to build a wheel' with 'build an sdist' - these are different tasks which I would implement differently
This concerns me somewhat, as if a backend implements the two differently, then it means building from an sdist and building from a VCS checkout may give different results (since they may contain different files).
Could you provide a little more detail as to what you would do differently in exporting the contents of an sdist that wouldn't apply to export a build tree? (aside from skipping emitting PKG-INFO)
. And flit cannot do (sdist tree -> sdist tree).
It wouldn't be required to - since a PKG-INFO would be present in that case, the front end would just copy the directory without bothering the backend about it.
The options as I see them:
No, we're not going to do that - build isolation will be the frontend's responsibility.
While Donald seems more amenable to this now, I still don't understand the difference you see between the two (aside from PKG-INFO potentially being unneeded in the build tree case, depending on how the backend handles creation of the METADATA file)
-- Nick Coghlan | email@example.com | Brisbane, Australia