On Mon, May 29, 2017, at 10:19 AM, Paul Moore wrote:
I think that the key thing here is that as things stand, pip needs a means to copy an existing "source tree", as efficiently as possible. For local directories (source checkouts, typically) there's a lot of clutter that isn't needed to replicate the "source tree" aspect of the directory - but we can't reliably determine what is clutter and what isn't.
This sounds similar to the question we had in flit about making sdists - we don't want to reinvent MANIFEST.in, but we also don't want to include random clutter that might be present in the source tree.
The compromise we've gone for in flit is to ask the VCS which files it is tracking and only include those, on the grounds that it should be possible to treat a fresh clone/checkout of the repository as the source. But this probably wouldn't work for what pip wants, because there are two big limitations: