After writing about ‘what is virtualenv‘ and pyenv I have been feeling a compulsion to write about the one remaining tool in the family i.e. virtualenvwrapper.
As it is in the name, virtualenvwrapper is just a wrapper (an extension) around the virtualenv. The sole motive behind writing it, is covering the discrepancies or features virtualenv lacks, and biggest issue is managing these virtualenvs. As stated in the official docs, the main value-adding features of virtualenvwrapper are:
- Organizes all of the virtual environments at a single location.
- Provides better management of virtualenvs – intuitive commands for creating, deleting, copying virtualenvs.
- A single command to switch between environments i.e. workon (demonstrated later in the post)
- User-configurable hooks for all operations (see Per-User Customization).
- Plugin system for more creating shareable extensions (see Extending Virtualenvwrapper).