virtualenvwrapper / announce.rst

What is virtualenvwrapper

virtualenvwrapper is a set of extensions to Ian Bicking's virtualenv tool. The extensions include wrappers for creating and deleting virtual environments and otherwise managing your development workflow, making it easier to work on more than one project at a time without introducing conflicts in their dependencies.

What's New in 2.0

This new version uses a significantly rewritten version of the hook/callback subsystem to make it easier to share extensions. For example, released at the same time is virtualenvwrapper-emacs-desktop, a plugin to switch emacs project files when you switch virtualenvs.

Existing user scripts should continue to work as-written. Any failures are probably a bug, so please report them on the bitbucket tracker. Documentation for the new plugin system is available in the virtualenvwrapper docs.

I also took this opportunity to change the name of the shell script containing most of the virtualenvwrapper functionality from virtualenvwrapper_bashrc to virtualenvwrapper.sh. This reflects the fact that several shells other than bash are supported (bash, sh, ksh, and zsh are all reported to work). You'll want to update your shell startup file after upgrading to 2.0.

The work to create the plugin system was triggered by a couple of recent feature requests for environment templates and for a new command to create a sub-shell instead of simply changing the settings of the current shell. The new, more powerful, plugin capabilities will make it easier to develop these and similar features.

I'm looking forward to seeing what the community comes up with. I especially want someone to write a plugin to start a copy of a development server for a Django project if one is found in a virtualenv. You'll get bonus points if it opens the home page of the server in a web browser.

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.