Paver is a Python-based software project scripting tool along the
lines of Make or Rake. It is not designed to handle the dependency
tracking requirements of, for example, a C program. It *is* designed
to help out with all of your other repetitive tasks (run documentation
generators, moving files about, downloading things), all with the
convenience of Python's syntax and massive library of code.
If you're developing applications in Python, you get even more...
Most public Python projects use distutils or setuptools to create source
tarballs for distribution. (Private projects can take advantage of
this, too!) Have you ever wanted to generate the docs before building the
source distribution? With Paver, you can, trivially. Here's a complete
pavement.py::
from paver.easy import *
from paver.setuputils import setup
setup(
name="MyCoolProject",
packages=['mycool'],
version="1.0",
author="Kevin Dangoor",
)
@task
@needs(['html', "distutils.command.sdist"])
def sdist():
"""Generate docs and source distribution."""
pass
With that pavement file, you can just run ``paver sdist``, and your docs
will be rebuilt automatically before creating the source distribution.
It's also easy to move the generated docs into some other directory
(and, of course, you can tell Paver where your docs are stored,
if they're not in the default location.)
Installation
------------
The easiest way to get Paver is if you have setuptools_ installed.
``easy_install Paver``
Without setuptools, it's still pretty easy. Download the Paver .tgz file from
`Paver's Cheeseshop page`_, untar it and run:
``python setup.py install``
Help and Development
--------------------
You can get help from the `mailing list`_.
If you'd like to help out with Paver, you can check the code out from Googlecode:
--
Kevin Dangoor
work:
http://labs.mozilla.com/
email:
kid@blazingthings.comblog:
http://www.BlueSkyOnMars.com