Use one Python virtual environment for all mach commands

Prior to this commit:

* Our Python dependency story was a bit of a mess. We had complete
 Python packages (wheels and directories) living in-tree, despite
 not having any changes from upstream. This is particularly bad because
 `setup.py` never gets run on these packages which could (sometimes
 silently) unintended breakage.
* Python virtual environments (virtualenv) were only utilized for
 testing web-platform tests

After this commit:

* A single virtualenv (`python/_virtualenv`) is activated upon *every*
 call to mach
* A requirements file (`python/requirements.txt`) is added to describe
 the dependencies needed by Python modules in `python/`. The child
 commit immediately following this will remove all the dependencies
 no longer needed in-tree (for the sake of keeping this commit
 readable).

Relevant to https://github.com/servo/servo/issues/861

Fixes https://github.com/servo/servo/issues/6999
This commit is contained in:
Corey Farwell 2015-08-08 18:27:03 -04:00
parent b91320cb05
commit 33f78314d9
5 changed files with 51 additions and 51 deletions

12
python/requirements.txt Normal file
View file

@ -0,0 +1,12 @@
# 'mach' is not listed here because a new version hasn't been published to PyPi in a while
blessings == 1.6
mozdebug == 0.1
mozinfo == 0.8
mozlog == 3.0
toml == 0.9.1
# For Python linting
flake8 == 2.4.1
pep8 == 1.5.7
pyflakes == 0.8.0