42 lines
1.6 KiB
INI
42 lines
1.6 KiB
INI
[tox]
|
|
envlist =
|
|
py{39,310,311,312}{-sphinx6,-sphinx7,-sphinx8,-sphinx9,-devdeps,-docs,-linkcheck,-pydata-sphinx-theme}
|
|
|
|
[testenv]
|
|
allowlist_externals =
|
|
make
|
|
git
|
|
extras =
|
|
dev
|
|
commands =
|
|
# Have to do this here as myst-parser in the install step forces the version.
|
|
sphinx6: pip install -U "sphinx>=6.0,<7.0"
|
|
sphinx7: pip install -U "sphinx>=7.0,<8.0"
|
|
sphinx8: pip install -U "sphinx>=8.0,<9.0"
|
|
sphinx9: pip install -U "sphinx>=9.0,<10.0"
|
|
devdeps: pip install -U "docutils @ git+https://github.com/docutils/docutils.git\#\&subdirectory=docutils"
|
|
devdeps: pip install -U "git+https://github.com/sphinx-doc/sphinx"
|
|
pip freeze --all --no-input
|
|
pytest -vvv -r a --pyargs ablog
|
|
make tests
|
|
|
|
[testenv:docs]
|
|
changedir = docs
|
|
description = Invoke sphinx-build to build the HTML docs
|
|
commands =
|
|
sphinx-build -j auto --color -W --keep-going -b html -d _build/.doctrees . _build/html {posargs}
|
|
python -c 'import pathlib; print("Documentation available under file://\{0\}".format(pathlib.Path(r"{toxinidir}") / "docs" / "_build" / "index.html"))'
|
|
|
|
[testenv:pydata-sphinx-theme]
|
|
commands =
|
|
rm -rf pydata-sphinx-theme || true
|
|
git clone git@github.com:pydata/pydata-sphinx-theme.git --depth 1 pydata-sphinx-theme
|
|
pip install -e "pydata-sphinx-theme/.[dev]"
|
|
pip freeze --all --no-input
|
|
sphinx-build --color -W --keep-going -b html -d _build/.doctrees pydata-sphinx-theme/docs pydata-sphinx-theme/docs/_build/html {posargs}
|
|
|
|
[testenv:linkcheck]
|
|
changedir = docs
|
|
description = Invoke sphinx-build to check linkcheck works
|
|
commands =
|
|
sphinx-build --color -W --keep-going -b linkcheck . _build/html {posargs}
|