[Distutils] Questionnaire: Why do you use setuptools?
Zooko O'Whielacronx
zooko at zooko.com
Tue Apr 21 03:06:03 CEST 2009
Roughly in order of most important to least important:
1. a formal, machine-readable way to specify our dependencies; see
XYZ [2]
2. automatic installation of dependencies; This reduces the
"dependencies" section in the instructions for installing Tahoe [1]
from having sixteen separate software packages with separate
versioning requirements to having one: Python 2.4.2 through 2.6.
3. Obviously having even one "dependency" in your installation
instructions is too many, so we try to provide .deb's, .rpm's, gentoo
ebuilds, Windows installers (e.g. as produced by py2exe or bbfreeze),
Macintosh applications, etc. Many of the tools that produce these
other formats rely on the above-mentioned feature #1 and/or feature #2.
4. Some people like to use "easy_install $PACKAGE". In fact, quite
a lot of people -- if I recall the results of Tarek's packaging
survey correctly, it was more popular among the responding Python
programmers than any other method of installing packages [3].
5. Using plugins so that you can add features to your build system,
such as revision control integration, unit testing, versioning,
pyflakes, uploading, etc. which you re-use as black box modules
maintained by someone else instead of copying code into your setup.py
or your GNUmakefile. [4, 5, 6, 7, 8].
6. Using the console scripts feature of setuptools to make it so
your scripts that you wrote for Unix also work on Windows.
7. python setup.py sdist upload register
8. revision control integration; I want all files under revision
control to be included in packages.
Regards,
Zooko
More information about the Distutils-SIG
mailing list