On Dec 13, 2005, at 11:36 AM, Schollnick, Benjamin wrote: > >> Is distutils more for distributing packages/modules than developing? > > The only situation I use distutils is for installing packages/modules, > and distributing the software that I write (via py2app & py2exe). > > To my knowledge distutils is primarily for distributing packages & > modules...
It's the only good way to compile extensions, which makes it infinitely useful for extension development as well. However, setuptools is also useful for pure Python development, because setup.py develop goes ahead and checks all your dependencies and adds your working copy to sys.path (ensuring that it doesn't conflict with something already installed). Normally I would manually generate a pth file to add my working copy to sys.path, but creating a minimal setup.py is easier than dealing with any of that. It can also create scripts via entry points, which saves more time. crack:~/src/MyPackage bob$ cd ~ crack:~ bob$ mkdir -p src/MyPackage/MyPackage crack:~ bob$ cd src/MyPackage crack:~/src/MyPackage bob$ touch MyPackage/__init__.py crack:~/src/MyPackage bob$ cat - > setup.py #!/usr/bin/env python from setuptools import setup, find_packages setup(name="MyPackage", version="1.0", packages=find_packages()) crack:~/src/MyPackage bob$ python setup.py develop running develop running egg_info creating MyPackage.egg-info writing ./MyPackage.egg-info/PKG-INFO writing top-level names to ./MyPackage.egg-info/top_level.txt running build_ext Creating /Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/MyPackage.egg-link (link to .) Adding MyPackage 1.0 to easy-install.pth file Installed /Volumes/Crack/src/MyPackage Processing dependencies for MyPackage==1.0 crack:~/src/MyPackage bob$ cd ~ crack:~ bob$ python -c "import MyPackage; print MyPackage.__file__" /Volumes/Crack/src/MyPackage/MyPackage/__init__.py -bob _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig