[Distutils] Deprecating little used file types/extensions on PyPI?

Nick Coghlan ncoghlan at gmail.com
Mon Aug 22 07:14:40 EDT 2016


On 22 August 2016 at 09:03, Nathaniel Smith <njs at pobox.com> wrote:
> On Aug 21, 2016 9:18 AM, "Nick Coghlan" <ncoghlan at gmail.com> wrote:
>>
> [...]
>> By contrast, I *know* Linux distros are in the habit of pulling
>> release tarballs from PyPI and feeding them directly into their
>> release pipelines, so the potential for unanticipated breakage seems
>> much higher there, and more likely to fall on community distros rather
>> than on commercial Python redistributors (simply because there are
>> more volunteers working on Linux based tooling than there are on
>> WIndows developer tools).
>
> But those release pipelines today have no problem handling the ~10% of
> sdists that are zips. For my personal projects actually I've always released
> .zip sdists exclusively (just because it seemed like a more universally
> convenient format than .tar.gz), and those packages have shown up in distros
> and no one has ever complained. Are any distros really hardcoding an
> assumption that .tar.gz is that only possible sdist format?

Thanks, that's good info that shows I was clearly being unduly
pessimistic about toolchain compatibility. It means the only salient
technical difference we're aware of between the two formats is that
the distutils and setuptools default settings on .tar.gz currently
result in smaller archives than the default settings for .zip.

In that case, perhaps the way to go for sdists (at least for now)
would be to continue allowing both .tar.gz and .zip, but disallow
uploading both of them for any given release?

The only remaining thing holding me back from being gung-ho about "OK,
let's just standardise on .zip, then" is the filesize consideration,
since that means implicitly asking Fastly to donate more sponsored
bandwidth, and likewise for anyone else running private PyPI mirrors,
etc.

Then sdist 2.0 (whenever that ends up bugging someone enough for them
to set out to define it) can be defined as a zip format, but with
compression applied to match or better the file size of the current
.tar.gz files.

Cheers,
Nick.

-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia


More information about the Distutils-SIG mailing list