[Distutils] library development patterns

Barry Warsaw barry at python.org
Thu Jan 18 14:12:32 EST 2018


Nick Coghlan wrote:
> The tox model is the one we decided to natively support in Fedora as
> well - while there's only ever one "full" Python 3 stack in the main
> repos (with all the distro API bindings, etc), there are also
> interpreter-only packages for other still supported and/or still
> popular Python X.Y branches, and "dnf install tox" will bring in all
> of them as weak dependencies.
> 
> Hence my preference for where I think it would make sense to take
> pipenv in this regard: better *enable* the tox model, without
> *duplicating* the tox model.

I'm a big fan of the tox model.  It works great on Debian/Ubuntu where
you can have multiple Python 3 interpreters (with some shared
infrastructure) during transitions, and macOS development where you
might have multiple versions of Python installed from brew/fink/macports
and from-source installations, including the current Python development
versions.  It also works well for things like
https://gitlab.com/python-devs/ci-images/tree/master

tox provides a nice, easy to invoke and remember CLI, good separation of
concerns (e.g. runtime deps in setup.py, test deps in tox.ini), and
convenient management of venvs.

Cheers,
-Barry




More information about the Distutils-SIG mailing list