borgbackup/borg

View on GitHub
tox.ini

Summary

Maintainability
Test Coverage
# tox configuration - if you change anything here, run this to verify:
# fakeroot -u tox --recreate

[tox]
envlist = py{39,310,311,312,313}-{none,fuse2,fuse3},docs
minversion = 3.2
requires =
    pkgconfig
    cython
    wheel
    setuptools_scm

[testenv]
package = editable-legacy  # without this it does not find setup_docs when running under fakeroot
setenv =
   fuse2: BORG_FUSE_IMPL=llfuse
   fuse3: BORG_FUSE_IMPL=pyfuse3
deps =
    fuse2: llfuse
    fuse3: pyfuse3
    -rrequirements.d/development.txt
commands = py.test -v -n {env:XDISTN:1} -rs --cov=borg --cov-config=.coveragerc --benchmark-skip --pyargs {posargs:borg.testsuite}
# fakeroot -u needs some env vars:
passenv = *


[testenv:.pkg]
passenv = *  # needed by tox4, so env vars are visible for building borg


[testenv:ruff]
skip_sdist=true
skip_install=true
changedir =
deps =
    ruff
commands = ruff check .

[testenv:mypy]
changedir =
deps =
    pytest
    mypy
    pkgconfig
commands = mypy --ignore-missing-imports

[testenv:docs]
changedir = docs
deps =
    sphinx
    guzzle_sphinx_theme
commands =
    sphinx-build -n -v -W --keep-going -b html -d {envtmpdir}/doctrees . {envtmpdir}/html