Edgewall Software

Version 9 (modified by Christian Boos, 9 years ago) ( diff )

add link to PyPi installation instructions for setuptools and remove link to Python's trunk/setuptools as it contains the old 0.7a1 version

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 PyPi (installation instructions):

$ wget https://bootstrap.pypa.io/ez_setup.py -O - | python

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

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


See also: TracDev/Proposals/Setuptools

Note: See TracWiki for help on using the wiki.