Hello mesos devs, I'd like to propose that we replace some of our bash scripts for building ad hoc virtualenvs with tox <https://tox.readthedocs.io/en/latest/>, a tool for automating lifecycle management of virtualenvs using declarative configuration files.
Specifically, virtualenvs created for the purpose of linting (support/.virtaulenv) and unit testing (in src/python) can be managed by tox, which provide the following benefits: 1. Eliminate the need for maintaining shell scripts for managing virtualenvs 2. We will no longer need to install *ALL* dependencies into the same virtualenv for the purpose of linting -- we can have distributed tox.ini files in wherever python linting is required, and just run tox there. 3. Easily run tests for multiple environments, e.g. python3 vs python2. This will make migration to python3 much easier, which we are facing increasing pressure to address. The biggest concern here would probably the change in dependencies, since it may seem like we're adding an additional dependency to mesos. However since virtualenv is a dependency of tox, we will not break any existing dependencies, as requiring tox will automatically require virtualenv. Otherwise I don't really see any downside in making the switch. Please let me know what you think! Eric