1. Rui Pereira
  2. virtualenvwrapper


virtualenvwrapper / docs / en / history.rst

Release History


  • Switch to stevedore for plugin management
  • mkvirtualenv_help should use $VIRTUALENVWRAPPER_PYTHON instead of calling virtualenv directly (:bbissue:`148`).
  • Fix issue with lazy-loader code under zsh (:bbissue:`144`).




  • Clean up file permissions and remove shebangs from scripts not intended to be executed on the command line. (contributed by :bbuser:`ralphbean`)
  • Worked on some brittle tests.
  • Received updates to Japanese translation of the documentation from :bbuser:`t2y`.
  • Fix the test script and runner so the user's $WORKON_HOME is not erased if they do not have some test shells installed. (big thanks to :bbuser:`agriffis`).
  • If the hook loader is told to list plugins but is not given a hook name, it prints the list of core hooks.
  • Merge several fixes for path and variable handling for MSYS users from :bbuser:`bwanamarko`. Includes a fix for :bbissue:`138`.
  • Change :ref:`command-mkvirtualenv` so it catches both -h and --help.
  • Fix some issues with the way temporary files are used for hook scripts. (contributed by :bbuser:`agriffis`)
  • Allow relative path to requirements file with :ref:`command-mkvirtualenv` and -r option. (:bbuser:`barberj`)
  • Make whitespace consistent. (:bbuser:`agriffis`)


  • Make project_dir a local variable so that :ref:`command-cdproject` does not interfere with other variables the user might have set. (contributed by :bbuser:`slackorama`)
  • Fix typo in documentation reported by Nick Martin.
  • Change trove classifier for license "MIT" to reflect the license text presented in the documentation. This does not indicate a change in the license, just a correction to the expression of that intent. See :ref:`license` (contributed by :bbuser:`ralphbean` as fix for :bbissue:`134`)
  • Extend :ref:`command-rmvirtualenv` to allow removing more than one environment at a time. (contributed by :bbuser:`ciberglo`)
  • Change the definition of virtualenvwrapper_get_site_packages_dir to ask distutils for the site-packages directory instead of trying to build the path ourselves in the shell script. This should resolve :bbissue:`112` and improve support for Python interpreters other than C Python. Thanks to Carl Meyer and Dario Bertini for their contributions toward the fix.



  • Fix some packaging issues that made it more difficult to run the tests directly from the sdist package. (:bbissue:`126`)


  • Add Python 3 support, thanks in large part to the efforts of Daniel Kraus (:bbuser:`dakra`). Tested under Python 2.6, 2.7, and 3.2.


  • Remove the initialization shortcut because it breaks tab completion in sub-shell environments like screen and tmux. (:bbissue:`121`)


  • Add -a option to :ref:`command-mkvirtualenv` to associate a new virtualenv with an existing project directory. Contributed by Mike Fogel (:bbuser:`mfogel`).
  • Drops support for Python 2.4 and 2.5. The tools may still work, but I no longer have a development environment set up for testing them, so I do not officially support them.
  • Shortcut initialization if it has run before.
  • Set hook log file permissions to be group-writable. (:bbissue:`62` reported by :bbuser:`hedgeddown`)
  • Add VIRTUALENVWRAPPER_PROJECT_FILENAME variable so the .project file used to link a virtualenv to a project can be renamed to avoid conflicts with other tools. (:bbissue:`120` reported by :bbuser:`arthuralvim`)






  • Move setup code for tab completion later in the startup code so all of the needed variables are configured. (:bbissue:`97`)
  • Expand tab completion for zsh to work for all commands.


  • When testing for WORKON_HOME during startup, dereference any symlink to make sure it is a directory.
  • Set VIRTUALENVWRAPPER_HOOK_DIR and VIRTUALENV_WRAPPER_LOG DIR in virtualenvwrapper_initialize after WORKON_HOME is set (:bbissue:`94`).
  • Update the :ref:`install-basic` instructions to be more explicit about needing to install virtualenvwrapper globally (or at least outside of a virtualenv).



  • Hard-code the version information in the setup.py and conf.py scripts. This still doesn't work for http://readthedocs.org, since the doc build needs the sphinxcontrib.bitbucket extension, but will make it easier to transition the docs to another site later.





  • Point release uploaded to PyPI during outage on doughellmann.com.



  • Make :ref:`command-workon` list brief environment details when run without argument, instead of full details.




  • Added get_env_details hook.


  • Integrate Fred Palmer's patch to escape more shell commands to avoid aliases. Resolves :bbissue:`57`.
  • Fix a problem with egrep argument escaping (:bbissue:`55`).
  • Fix a problem with running mkvirtualenv without arguments (:bbissue:`56`).


  • Escape which calls to avoid aliases. Resolves :bbissue:`46`.
  • Integrate Manuel Kaufmann's patch to unset GREP_OPTIONS before calling grep. Resolves :bbissue:`51`.
  • Escape $ in regex to resolve :bbissue:`53`.
  • Escape rm to avoid issues with aliases and resolve :bbissue:`50`.


  • Switched hook loader execution to a form that works with Python 2.4 to resolve :bbissue:`43`.
  • Tested under Python 2.7b1. See :bbissue:`44`.
  • Incorporated performance improvements from David Wolever. See :bbissue:`38`.
  • Added some debug instrumentation for :bbissue:`35`.



  • Add support for ksh. Thanks to Doug Latornell for doing the research on what needed to be changed.
  • Test import of virtualenvwrapper.hook_loader on startup and report the error in a way that should help the user figure out how to fix it (:bbissue:`33`).
  • Update :ref:`command-mkvirtualenv` documentation to include the fact that a new environment is activated immediately after it is created (:bbissue:`30`).
  • Added hooks around :ref:`command-cpvirtualenv`.
  • Made deactivation more robust, especially under ksh.
  • Use Python's tempfile module for creating temporary filenames safely and portably.
  • Fix a problem with virtualenvwrapper_show_workon_options that caused it to show * as the name of a virtualenv when no environments had yet been created.
  • Change the hook loader so it can be told to run only a set of named hooks.
  • Add support for listing the available hooks, to be used in help output of commands like virtualenvwrapper.project's mkproject.
  • Fix mkvirtualenv -h option behavior.
  • Change logging so the $WORKON_HOME/hook.log file rotates after 10KiB.


  • Fixed :bbissue:`32`, making virtualenvwrapper.user_scripts compatible with Python 2.5 again.


  • Fixed :bbissue:`29`, to use a default value for TMPDIR if it is not set in the user's shell environment.


  • Rewrote hook management using Distribute entry points to make it easier to share extensions.


  • Added cpvirtualenv command [Thomas Desvenain]


  • Fix a problem with error messages showing up during init for users with the wrappers installed site-wide but who are not actually using them. See :bbissue:`26`.
  • Split up the tests into multiple files.
  • Run all tests with all supported shells.


  • Merged in changes to cdsitepackages from William McVey. It now takes an argument and supports tab-completion for directories within site-packages.



  • Add license text to the header of the script.


  • Resolve a bug with the preactivate hook not being run properly. Refer to :bbissue:`21` for complete details.


  • Resolve a bug with the postmkvirtualenv hook not being run properly. Refer to :bbissue:`19` and :bbissue:`20` for complete details.


  • Automatically create any missing hook scripts as stubs with comments to expose the feature in case users are not aware of it.


  • Better protection of $WORKON_HOME does not exist when the wrapper script is sourced.


  • Incorporate lssitepackages feature from Sander Smits.
  • Refactor some of the functions that were using copy-and-paste code to build path names.
  • Add a few tests.


  • Fix problem with add2virtualenv and relative paths. Thanks to Doug Latornell for the bug report James Bennett for the suggested fix.


  • Incorporate patch from Sascha Brossmann to fix a :bbissue:`15`. Directory normalization was causing WORKON_HOME to appear to be a missing directory if there were control characters in the output of pwd.


  • Remove warning during installation if sphinxcontrib.paverutils is not installed. (:bbissue:`10`)
  • Added some basic developer information to the documentation.
  • Added documentation for deactivate command.


  • Added documentation updates provided by Steve Steiner.


  • Merged in changes to cdvirtualenv from wam and added tests and docs.
  • Merged in changes to make error messages go to stderr, also provided by wam.
  • Better error handling in mkvirtualenv.
  • Remove bogus VIRTUALENV_WRAPPER_BIN variable.
  • Wrap the virtualenv version of deactivate() with one that lets us invoke the predeactivate hooks.
  • Fix virtualenvwrapper_show_workon_options for colorized versions of ls and write myself a note so I don't break it again later.
  • Convert test.sh to use true tests with shunit2


  • Fix :bbissue:`5` by correctly handling symlinks and limiting the list of envs to things that look like they can be activated.


  • Check return value of virtualenvwrapper_verify_workon_home everywhere, thanks to Jeff Forcier for pointing out the errors.
  • Fix instructions at top of README, pointed out by Matthew Scott.
  • Add cdvirtualenv and cdsitepackages, contributed by James Bennett.
  • Enhance test.sh.


  • Optimize virtualenvwrapper_show_workon_options.
  • Add global postactivate hook.



  • Add more hooks for operations to run before and after creating or deleting environments based on changes from Chris Hasenpflug.


  • Corrected a problem with change to mkvirtualenv that lead to release 1.8 by using an alternate fix proposed by James in comments on release 1.4.


  • Fix for processing the argument list in mkvirtualenv from jorgevargas (:bbissue:`1`)


  • Move to bitbucket.org for hosting
  • clean up TODO list and svn keywords
  • add license section below


  • More zsh support (fixes to rmvirtualenv) from Byron Clark.


  • Add completion support for zsh, courtesy of Ted Leung.


  • Fix some issues with spaces in directory or env names. They still don't really work with virtualenv, though.
  • Added documentation for the postactivate and predeactivate scripts.


  • Includes a new .pth management function based on work contributed by James Bennett and Jannis Leidel.


  • Includes a fix for a nasty bug in rmvirtualenv identified by John Shimek.