"easy_install py"
===================================================

With a working `setuptools installation`_ you can install from the command line::

    easy_install -U py 

to get the latest release of the py lib.  The ``-U`` switch
will trigger an upgrade if you already have an older version installed. 
The py lib and its tools are expected to work well on Linux,
Windows and OSX, Python versions 2.3, 2.4, 2.5 and 2.6.

We provide binary eggs for Windows machines. 

On other systems you need a working C-compiler in order to
install the full py lib.  If you don't have a compiler available 
you can still install the py lib but without greenlets - look 
below for the ``install_lib`` target. 

**IMPORTANT NOTE**: if you are using Windows and have previous 
installations of the py lib on your system, please download 
and execute http://codespeak.net/svn/py/build/winpathclean.py
This will check that no previous files are getting in the way. 
(Unfortunately we don't know about a way to execute this 
code automatically during the above install). 

Installing on Debian or Fedora 
===================================

On Debian systems look for ``python-codespeak-lib``.
*This package is probably outdated - if somebody 
can help with bringing this up to date, 
that would be very much appreciated.*

Dwayne Bailey has thankfully put together a Fedora `RPM`_. 

.. _`RPM`: http://translate.sourceforge.net/releases/testing/fedora/pylib-0.9.2-1.fc9.noarch.rpm

.. _`setuptools installation`: http://pypi.python.org/pypi/setuptools


Downloading a tar/zip archive and installing that
===================================================

Go to the python package index (pypi) and download a tar or zip file:

    http://pypi.python.org/pypi/py/

and unpack it to a directory, where you then type::

    python setup.py install

If you don't have a working C-compiler you can do::

    python setup.py install_lib

You will then not be able to use greenlets but otherwise
``py.test`` and all tools and APIs are fine to use. 

Installing from subversion / develop mode
============================================

To follow development or help with fixing things
for the next release, checkout the complete code
and documentation source::

    svn co http://codespeak.net/svn/py/release/0.9.x py-0.9.x

You can then issue::

    python setup.py develop 

in order to work with your checkout version. 

other interesting svn checkout points::

    http://codespeak.net/
        svn/py/release      # release tags and branches
        svn/py/dist         # latest stable (may or may not be a release) 
        svn/py/trunk        # head development / merge point


Working with multiple py lib versions / svn externals
=======================================================

If you happen to have multiple versions of the py lib 
around or you ship the py lib as an svn-external to 
then you might want to use py lib scripts more directly.
For example if you have a project layout like this::

    mypkg/
        subpkg1/
            tests/
        tests/
    py/ # as svn-external, could be specific tag/version

then you want to make sure that the actual local py lib is used
and not another system-wide version.  For this you need to add
``py/bin`` or ``py\bin\win32`` respectively to your system's PATH settings. 

You can do this by executing (on windows) a script to set the environment::

    c:\\path\to\checkout\py\env.cmd

or on linux/osx you can add something like this to your shell
initialization::

    eval `python ~/path/to/checkout/py/env.py`

to get good settings for PYTHONPATH and PATH.

