conda-lock vs tox
conda-lock
conda.github.iotox
tox.wikiSide by side
| Figure | conda-lock | tox |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Python Package Managers | 8.0 (#9) | 7.2 (#26) |
| Purpose | conda-lock is a lightweight library for generating fully reproducible lockfiles for conda environments. | tox manages virtual environments, checks package builds and installations across different environments, and runs tests in those environments. |
Plans
In their own words
conda-lock
conda-lock is a lightweight library for producing reproducible lockfiles for conda environments. It solves dependencies separately for each target platform, allowing installations from generated lockfiles to avoid running the conda solver. Inputs can come from environment.yml, conda-build meta.yaml, or pyproject.toml dependency specifications. Its default unified lockfile covers multiple platforms and can be rendered into other lockfile formats. Documented target examples include Linux, macOS, Windows, and additional Linux architectures. The project describes use alongside conda, mamba, pip, Docker, and pixi, and provides installation routes through pip, conda, and mamba; pipx or condax are recommended for isolated installation. Mixed conda-and-pip locking is experimental. Channel access supports token or basic authentication, with environment-variable substitution for credentials. The unified lockfile can omit raw credential-bearing channel URLs when it matches credential portions to environment variables, although rendered explicit lockfiles may contain substituted variables. Private pip repository support is limited to legacy PyPI repositories using basic authentication. The software is MIT-licensed and free.
tox
tox is a free, open-source command-line tool for creating virtual environments, checking package builds and installations across different environments, and running tests in them. It can orchestrate test runners, linters, formatters, documentation generators, and build or publishing tools. As a continuous-integration frontend, tox combines CI workflows with shell-based testing and reduces boilerplate. Configuration can be stored in tox.toml, tox.ini, pyproject.toml, or toxfile.py. By default, it removes host environment variables unless allowed through pass_env and adjusts PATH so commands use the active environment. The command-line tool requires Python 3.10 or higher. Installation guidance covers pipx, uv, and pip, with apt and brew package-manager routes also documented. Plugins include tox-gh-actions for GitHub Actions, tox-uv for faster package installation, and tox-gh for enhanced GitHub integration. It runs on Linux, macOS, and Windows and is maintained as a volunteer open-source project.