Skip to content

CI exploration #41

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 41 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
7b7a61e
consistently use `doc` for the tox env
altendky Jan 21, 2020
b879e65
add 3.8 and separate doc/check runs
altendky Jan 21, 2020
e9f96d0
cleanup python version spec in tox.ini
altendky Jan 21, 2020
bdabe05
pypy3 on travis
altendky Jan 21, 2020
456fca7
list 3.8 in setup.py classifiers
altendky Jan 21, 2020
7c0b33b
python_requires=['>=3.6']
altendky Jan 21, 2020
0bd2e09
correct python_requires
altendky Jan 21, 2020
774ccd8
stop setting PYTHONPATH in tox.ini
altendky Jan 21, 2020
dc6111a
use envpython and envbindir in tox.ini
altendky Jan 21, 2020
64875f8
Merge branch 'master' into doc_docs
altendky Jan 22, 2020
ea787ee
introduce test-requirements.in/txt
altendky Jan 22, 2020
79168b9
black
altendky Jan 22, 2020
d0b83e9
skip test_forward_reference_module_scope on 'old' pypy
altendky Jan 22, 2020
4ca31d8
refine should-not-be-needed importlib-metadata direct dependency
altendky Jan 22, 2020
b041259
try to get more recent pypy on travis
altendky Jan 23, 2020
2376b8d
Merge branch 'master' into doc_docs
altendky Jan 25, 2020
f86f0fe
Merge branch 'master' into doc_docs
altendky Jan 26, 2020
89f0672
align with master better
altendky Jan 26, 2020
b246e9f
Remove custom PyPy installation on Travis
altendky Jan 26, 2020
46c9352
Just pypy3 for Travis
altendky Jan 26, 2020
9b4f33b
Merge branch 'master' into doc_docs
altendky Jan 27, 2020
156bdf3
fixup tox.ini after merge
altendky Jan 27, 2020
4ad4324
remove duplicate python_requires
altendky Jan 27, 2020
7678ed9
Merge branch 'master' into doc_docs
altendky Jan 27, 2020
8106664
pyenv and TOXTOOLPYTHON
altendky Jan 27, 2020
56509f0
use custom PYENV_ROOT
altendky Jan 27, 2020
e63b531
use $PYENV_ROOT
altendky Jan 27, 2020
b05293e
do not leave PYENV_ROOT set
altendky Jan 27, 2020
299aa70
with unset...
altendky Jan 27, 2020
1439153
fix quoting in .travis.yml
altendky Jan 27, 2020
36bd9a3
subshell again for pyenv
altendky Jan 27, 2020
36f4b38
add a | for good measure
altendky Jan 27, 2020
1e10152
remove no longer needed 's
altendky Jan 27, 2020
e735c87
cache pyenv and more
altendky Jan 27, 2020
83435dc
remove PYENV_ROOT before reinstalling
altendky Jan 27, 2020
1fa764a
correct to TOXTOOLPYTHONVERSION
altendky Jan 27, 2020
e935eb0
diagnostics
altendky Jan 27, 2020
c7d7685
Revert "diagnostics"
altendky Jan 27, 2020
76b1379
have black ignore .pyenv
altendky Jan 27, 2020
e30d44c
remove redundant pypy3 basepython spec in tox.ini
altendky Jan 27, 2020
568e83b
Merge branch 'master' into doc_docs
altendky Jan 28, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,9 @@ jobs:
- python: '3.8'
env:
- TOXENV=py38,report,codecov
- python: 'pypy3'
env:
- TOXENV=pypy3,report,codecov
- python: '3.8'
env:
- TOXENV=doc
Expand Down
5 changes: 5 additions & 0 deletions tests/test_make.py
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,11 @@ class B:
assert_dump_load(schema=schema, loaded=loaded, dumped=dumped)


# 3.6.9 is known to work, 3.6.1 is known to fail, not sure attrs vs. dataclasses
@pytest.mark.skipif(
condition=sys.implementation.name == "pypy" and sys.version_info < (3, 6, 9),
reason="Forward references and string annotations are broken.",
)
def test_forward_reference_module_scope():
"""Run the forward reference test at global scope."""

Expand Down
35 changes: 17 additions & 18 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -16,69 +16,68 @@ basepython =
py38: {env:TOXPYTHON:python3.8}
{doc,spell,bootstrap,clean,check,report,codecov}: {env:TOXTOOLPYTHON:python3.8}
setenv =
PYTHONPATH={toxinidir}/tests
PYTHONUNBUFFERED=yes
passenv =
*
deps =
-r {toxinidir}/test-requirements.txt
commands =
pytest {posargs:--cov --cov-report=term-missing -vv --doctest-modules tests}
{envbindir}/pytest {posargs:--cov --cov-report=term-missing -vv --doctest-modules tests}

[testenv:bootstrap]
deps =
jinja2
matrix
skip_install = true
commands =
python ci/bootstrap.py
{envpython} ci/bootstrap.py

[testenv:check]
deps =
-r {toxinidir}/dev-requirements.txt
skip_install = true
commands =
python setup.py check --strict --metadata --restructuredtext
check-manifest {toxinidir}
black --check {toxinidir}
isort --verbose --check-only --diff --recursive src tests setup.py
{envpython} setup.py check --strict --metadata --restructuredtext
{envbindir}/check-manifest {toxinidir}
{envbindir}/black --check {toxinidir}
{envbindir}/isort --verbose --check-only --diff --recursive src tests setup.py

[testenv:spell]
setenv =
SPELLCHECK=1
commands =
sphinx-build -b spelling docs dist/docs
{envbindir}/sphinx-build -b spelling docs dist/docs
skip_install = true
deps =
-r{toxinidir}/docs/requirements.txt
sphinxcontrib-spelling
pyenchant
{envbindir}/sphinxcontrib-spelling
{envbindir}/pyenchant

[testenv:doc]
deps =
-r{toxinidir}/docs/requirements.txt

commands =
sphinx-apidoc -o docs/reference src/desert
pytest --doctest-modules --doctest-glob=*.rst src docs
sphinx-build {posargs:-E} -b html docs dist/docs
sphinx-build -b linkcheck docs dist/docs
{envbindir}/sphinx-apidoc -o docs/reference src/desert
{envbindir}/pytest --doctest-modules --doctest-glob=*.rst src docs
{envbindir}/sphinx-build {posargs:-E} -b html docs dist/docs
{envbindir}/sphinx-build -b linkcheck docs dist/docs

[testenv:codecov]
deps =
codecov
skip_install = true
commands =
coverage xml --ignore-errors
codecov []
{envbindir}/coverage xml --ignore-errors
{envbindir}/codecov []

[testenv:report]
deps = coverage
cuvner
skip_install = true
commands =
coverage report
coverage html
{envbindir}/coverage report
{envbindir}/coverage html


[testenv:clean]
Expand Down