A plugin for tox that utilizes PDM as the package manager and installer
Project description
tox-pdm
A plugin for tox that utilizes PDM as the package manager and installer.
With this plugin, you can migrate your project to PDM while retaining the ability to test against multiple versions.
Installation
$ pip install tox-pdm
Or,
$ pdm add -d tox-pdm
Or if you installed tox
via pipx
, you can inject the plugin by:
$ pipx inject tox tox-pdm
Example tox.ini
The following simple example installs dev
and test
dependencies into the venv created by Tox and uses pytest to execute the tests, on both Python 3.7 and 3.8.
[tox]
envlist = py37,py38
isolated_build = True ; This is required for a pyproject.toml based project.
[testenv]
groups = ; Dependency groups in pyproject.toml
dev
test
deps = ; Additional dependencies, it will be installed into the library path via normal pip method
flake8
commands =
pytest test/
A real-world example can be found at this repository's tox.ini and GitHub Action workflow.
Some best practices:
pdm
executable must be exposed inPATH
, if it is not the case, give the absolute path to tox bytox --pdm <path_to_pdm>
.- Make sure you have generated
pdm.lock
before running the test, it will greatly accelerate the testing. - If you don't set
skip_install = true
, the current package will be built and installed into the testing environment together with thedependencies
frompyproject.toml
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
tox-pdm-0.4.0.tar.gz
(8.7 kB
view hashes)