[Distutils] Distutils changes - end user requirements (Was: Deprecate MANIFEST.in)

Paul Moore p.f.moore at gmail.com
Thu Apr 9 11:24:18 CEST 2009


2009/4/9 Lennart Regebro <regebro at gmail.com>:
> On Wed, Apr 8, 2009 at 12:27, Paul Moore <p.f.moore at gmail.com> wrote:
>> 1. (Meta-requirement) I want to be able to download a Windows
>> installer[1] for *every* package I need.
>
> I would like to know why you have this requirement. Some sort of
> Windows binary, absolutely. But an installer? Would a package
> management GUI be enough? A Windows software that can install (and
> remove) eggs?

Because I like to see my installed Python packages in Windows'
"Add/Remove Programs" list.

Think of it as an application of "There should be one-- and preferably
only one --obvious way to do it" (in this case, install and remove
software on my PC). Although maybe because I'm not Dutch, that doesn't
apply :-)

>> 1a. This means that the barrier for packagers building Windows
>> installers should be as low as possible.
>
> Agreed.
>
>> 1b. It also means that other formats (e.g. eggs) should offer no
>> benefit over Windows installers
>
> Well... they don't, do they? Except that they can be easy_installed, right?

Don't they? I have to admit that I'm baffled by how the features in
setuptools/eggs/easy_install all hang together. What about the magic
that creates executables from scripts? Entry points? Stuff like that.
Don't you need to use eggs to make them work?

If not, why do people distribute eggs rather than bdist_wininst
installers? From what I understand, easy_install can convert and
install a bdist_wininst if an egg doesn't exist, but there's no path
the other way. So by what you're saying, eggs are a strict subset of
bdist_wininst, and so people should be distributing bdist_wininst
installers. But they aren't, so what gives?

Can any packager step up and explain why they execute "python setup.py
bdist_egg" rather than "python setup.py bdist_wininst" when creating
distributions for their Windows users?

Paul.


More information about the Distutils-SIG mailing list