more virtualenvwrapper enhancements

Yesterday I released version 2.1 of virtualenvwrapper. The primary
purpose of this release is a set of enhancements to support
virtualenvwrapper.project, a new extension to manage project
work directories with templates.

The base project plugin gives you automatic creation of work
directories to hold sources and other artifacts for a project. Each time
you run mkproject you’ll get a virtualenv and a matching directory in
$PROJECT_HOME. Continuing the theme of extensibility, there is also a
new API for creating project “templates”. A template has complete access
to the virtualenv and project directories, and can install software,
configure it, set up source repositories, etc. Anything you need to do
on a regular basis when starting work on a new project.

To illustrate the utility of project templates, I also released
virtualenvwrapper.bitbucket, a template to automatically clone a
Mercurial repository from BitBucket each time a new project is created.

Here’s an example of all three working together:

$ mkproject -t bitbucket virtualenvwrapper.bitbucket
New python executable in virtualenvwrapper.bitbucket/bin/python
Installing distribute.............................................
..................................................................
..................................................................
virtualenvwrapper.user_scripts Creating /Users/dhellmann/.virtualenvs/virtualenvwrapper.bitbucket/bin/predeactivate
virtualenvwrapper.user_scripts Creating /Users/dhellmann/.virtualenvs/virtualenvwrapper.bitbucket/bin/postdeactivate
virtualenvwrapper.user_scripts Creating /Users/dhellmann/.virtualenvs/virtualenvwrapper.bitbucket/bin/preactivate
virtualenvwrapper.user_scripts Creating /Users/dhellmann/.virtualenvs/virtualenvwrapper.bitbucket/bin/postactivate

Creating /Users/dhellmann/Devel/virtualenvwrapper.bitbucket
Applying template bitbucket
virtualenvwrapper.bitbucket Cloning ssh://hg@bitbucket.org/dhellmann/virtualenvwrapper.bitbucket
requesting all changes
adding changesets
adding manifests
adding file changes
added 3 changesets with 10 changes to 8 files
updating to branch default
8 files updated, 0 files merged, 0 files removed, 0 files unresolved
(virtualenvwrapper.bitbucket) $ ls
src
(virtualenvwrapper.bitbucket) $ cat src/.hg/hgrc
[paths]
default = ssh://hg@bitbucket.org/dhellmann/virtualenvwrapper.bitbucket

virtualenvwrapper 2.1 also includes several smaller changes and bug
fixes
(including the pernicious TMPDIR problem several users have
reported).