
On 31 March 2015 at 08:04, Paul Moore <p.f.moore@gmail.com> wrote:
On 30 March 2015 at 16:56, Donald Stufft <donald@stufft.io> wrote:
Honestly, I don’t think that setup.py as a development interface is that bad. It gets really bad when we start sticking it inside of a sdist and using that as part of the installation metadata.
It’s not unusual for me to want (or need) to do something a little bit different in a project, or something that the original authors didn’t quite intend to do. This is perfectly valid and fine inside of a file that only ever gets executed on a developer machine. However it *needs* to be “compiled” down to a static file when creating a sdist.
Hmm, I don't think I'd ever really understood the distinction between "development setup" and "sdist" that clearly. I take your point, it's the sdist level that we want to avoid executable metadata formats in.
Thinking some more about that, my confusion is probably in part because pip doesn't distinguish between a "development directory" and a sdist at the moment. For both, it runs "setup.py bdist_wheel/install". So I guess work on a new sdist format would have to include pip learning to distinguish between a sdist and a working directory, and installing (or building wheels from) the two things differently. Paul