+armand, benno, kevin On Fri, Jan 5, 2018 at 12:04 PM, Eric Chung <ech...@uber.com> wrote:
> 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 >