Following list contains the most notable changes by version. For a full list, consult the git history of the project.


  • Support new style shebangs generated by recent pip (#226) [@nailor]
  • Add --extras option (#243) [@jhermann]
  • Python 3.4 and 3.5 added to test environments (#238) [@jhermann]
  • New build dependendcies (dh-exec + python-sphinx-rtd-theme) (#231) [@labeneator]
  • Disallow building a package whilst within an activated virtualenv (#224) [@lamby]
  • Use python -m pip instead of direct pip calls (#219) [@moritz]
  • Ignore --extra-pip-arg in call for --upgrade-pip (#197) [@jhermann]
  • buildsystem: Allow to specify a virtualenv name (#180) [@dzen]
  • docs: Improved structure, new chapters [@jhermann]
  • docs: Fix reference to pbuilder’s USENETWORK option (#246) [@mkohler]
  • Fix setuptools and pip setup when using built-in virtualenv with --system-site-packages (#247) [@lucasrangit]



  • Allow passing explicit filename for requirements.txt using --requirements option. Thanks to Eric Larson for implementing!
  • Ensure that venv is configured before starting any daemons. Thanks to Chris Lamb for fixing this!
  • Make sure fix_activate_path updates all activate scripts. Thanks to walrusVision for fixing this!


  • Backwards incompatible Fix installation using the built-in virtual environment on 3.4. This might break installation on Python versions prior to 3.4 when using --builtin-venv flag. Thanks to Elonen for fixing!
  • Honor DH_VIRTUALENV_INSTALL_ROOT in build system. Thanks to Ludwig Hähne for implementing!
  • Allow overriding virtualenv arguments by using the DH_VIRTUALENV_ARGUMENTS environment variable when using the build system. Thanks to Ludwig Hähne for implementing!
  • Add option to skip installation of the actual project. In other words using --skip-install installs only the dependencies of the project found in requirements.txt. Thanks to Phillip O’Donnell for implementing!
  • Support custom installation suffix instead of the package name via --install-suffix. Thanks to Phillip O’Donnell for implementing!


  • Support using system packages via a command line flag --use-system-packages. Thanks to Wes Mason for implementing this feature!
  • Introduce a new, experimental, more modular build system. See the Packaging Guide for documentation.
  • Respect the DEB_NO_CHECK environment variable.


  • Support for running triggers upon host interpreter update. This new feature makes it possible to upgrade the host Python interpreter and avoid breakage of all the virtualenvs installed with dh-virtualenv. For usage, see the the Getting Started. Huge thanks to Jürgen Hermann for implementing this long wanted feature!
  • Add support for the built-in venv module. Thanks to Petri Lehtinen!
  • Allow custom pip flags to be passed via the --extra-pip-arg flag. Thanks to @labeneator for the feature.


  • Backwards incompatible Support running tests. This change breaks builds that use distutils. For those cases a flag --no-test needs to be passed.
  • Add tutorial to documentation
  • Don’t crash on debbuild parameters -i and -a
  • Support custom source directory (debhelper’s flag -D)


First public release of dh-virtualenv