Version 8 (modified by 10 years ago) ( diff ) | ,
---|
setuptools
setuptools is a Python module that helps to compile, distribute and install Python packages by wrapping them into "egg"s. Eggs contain additional information to process dependencies, etc. Trac plugins can be packaged as eggs since 0.9. Starting with 0.11 Trac itself can also be packaged using setuptools.
Installed setuptools version can be checked with the following commands (should work for other Python packages too):
$ python Python 2.3.5 >>> import setuptools >>> setuptools.__version__ '0.7a1'
Setuptools can be installed using bootstrap script from PEAK:
$ wget http://peak.telecommunity.com/dist/ez_setup.py $ python ez_setup.py $ rm ez_setup.py
Aternatively, it can be obtained from the Python repository:
$ svn co http://svn.python.org/projects/sandbox/trunk/setuptools
$ cd setuptools
$ python setup.py install
Notes:
- if you're using svn 1.6.x and setuptools prior to 0.6c10, be sure to apply the latest patch in setuptools-issue:64.
- if you're using Python 2.6 and setuptools prior to 0.6c10, be sure to also apply the
Python26.warnings.diff
patch from setuptools-issue:56. - if you're using setuptools versions 5.4 through 5.6, the environment variable
PKG_RESOURCES_CACHE_ZIP_MANIFESTS
should be set, otherwise the performance of Trac will be significantly degraded.- Linux:
$export PKG_RESOURCES_CACHE_ZIP_MANIFESTS=1
- Windows:
>set PKG_RESOURCES_CACHE_ZIP_MANIFESTS=1
- Linux:
setuptools include "easy_install" script for convenient installation of packages found on Python Package Index including Trac with all necessary dependencies.
$ python -m easy_install Trac
Reference Documentation
- setuptools
- pkg_resources (setuptools)
- pkg_resources (Distribute)
- .egg format
See also: TracDev/Proposals/Setuptools