[Distutils] it's happened - wheels without sdists (flit)
Paul Moore
p.f.moore at gmail.com
Tue Mar 31 16:53:27 CEST 2015
On 31 March 2015 at 13:06, Nick Coghlan <ncoghlan at gmail.com> wrote:
>> 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.
>
> Yep, the current PEP 426 draft suggests that sdists should grow a
> "dist-info" directory (akin to wheel files and installed packages),
> while development directories would continue to lack any of the
> generated metadata.
The thing is, because sdists include setup.py and the whole build
layout, there's no point (at the moment) in pip looking at any
sdist-specific data. We have to be able to do "pip install
/my/dev/directory", and so reusing the same code for a sdist is the
obvious thing to do. If the sdist metadata meant that we could somehow
do things *better* for a sdist than for a dev directory, then maybe it
would be worth doing that. But at the moment, it basically gains us
nothing to use the metadata from a sdist.
It's not quite that simple, I know. But until we work out how to do
something useful with a sdist that we can't do with a dev checkout,
it's hard to justify treating sdists specially.
Paul
More information about the Distutils-SIG
mailing list