tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

tox.ini (3097B)


      1 [tox]
      2 min_version = 4
      3 env_list =
      4    pre-commit,
      5    py3{7,8,9,10,11,12}-tests,
      6    py3{8,9,10,11,12}-mypy,
      7    pypy3,
      8    pyright,
      9    docs,
     10    changelog,
     11    coverage-report
     12 
     13 
     14 [testenv:.pkg]
     15 pass_env = SETUPTOOLS_SCM_PRETEND_VERSION
     16 
     17 
     18 [testenv]
     19 package = wheel
     20 wheel_build_env = .pkg
     21 pass_env =
     22    FORCE_COLOR
     23    NO_COLOR
     24 extras =
     25    tests: tests
     26    mypy: tests-mypy
     27 commands =
     28    tests: pytest {posargs:-n auto}
     29    mypy: mypy tests/typing_example.py
     30    mypy: mypy src/attrs/__init__.pyi src/attr/__init__.pyi src/attr/_typing_compat.pyi src/attr/_version_info.pyi src/attr/converters.pyi src/attr/exceptions.pyi src/attr/filters.pyi src/attr/setters.pyi src/attr/validators.pyi
     31 
     32 [testenv:py3{7,10,12}-tests]
     33 extras = cov
     34 # Python 3.6+ has a number of compile-time warnings on invalid string escapes.
     35 # PYTHONWARNINGS=d and --no-compile below make them visible during the tox run.
     36 set_env =
     37    COVERAGE_PROCESS_START={toxinidir}/pyproject.toml
     38    PYTHONWARNINGS=d
     39 install_command = python -Im pip install --no-compile {opts} {packages}
     40 commands_pre = python -c 'import pathlib; pathlib.Path("{env_site_packages_dir}/cov.pth").write_text("import coverage; coverage.process_startup()")'
     41 commands = coverage run -m pytest {posargs:-n auto}
     42 
     43 
     44 [testenv:coverage-report]
     45 # Keep base_python in-sync with .python-version-default
     46 base_python = py312
     47 depends = py3{7,10,11}
     48 skip_install = true
     49 deps = coverage[toml]>=5.3
     50 commands =
     51    coverage combine
     52    coverage report
     53 
     54 
     55 [testenv:docs]
     56 # Keep base_python in-sync with ci.yml/docs and .readthedocs.yaml.
     57 base_python = py312
     58 extras = docs
     59 commands =
     60    sphinx-build -n -T -W -b html -d {envtmpdir}/doctrees docs docs/_build/html
     61    sphinx-build -n -T -W -b doctest -d {envtmpdir}/doctrees docs docs/_build/html
     62 
     63 
     64 [testenv:docs-watch]
     65 package = editable
     66 base_python = {[testenv:docs]base_python}
     67 extras = {[testenv:docs]extras}
     68 deps = watchfiles
     69 commands =
     70    watchfiles \
     71        --ignore-paths docs/_build/ \
     72        'sphinx-build -W -n --jobs auto -b html -d {envtmpdir}/doctrees docs docs/_build/html' \
     73        src \
     74        docs
     75 
     76 
     77 [testenv:docs-linkcheck]
     78 package = editable
     79 base_python = {[testenv:docs]base_python}
     80 extras = {[testenv:docs]extras}
     81 commands = sphinx-build -W -b linkcheck -d {envtmpdir}/doctrees docs docs/_build/html
     82 
     83 
     84 [testenv:pre-commit]
     85 skip_install = true
     86 deps = pre-commit
     87 commands = pre-commit run --all-files
     88 
     89 
     90 [testenv:changelog]
     91 deps = towncrier
     92 skip_install = true
     93 commands = towncrier build --version main --draft
     94 
     95 
     96 [testenv:pyright]
     97 extras = tests
     98 deps = pyright
     99 commands = pytest tests/test_pyright.py -vv
    100 
    101 
    102 [testenv:docset]
    103 deps = doc2dash
    104 extras = docs
    105 allowlist_externals =
    106    rm
    107    cp
    108    tar
    109 commands =
    110    rm -rf attrs.docset attrs.tgz docs/_build
    111    sphinx-build -n -T -W -b html -d {envtmpdir}/doctrees docs docs/_build/html
    112    doc2dash --index-page index.html --icon docs/_static/docset-icon.png --online-redirect-url https://www.attrs.org/en/latest/ docs/_build/html
    113    cp docs/_static/docset-icon@2x.png attrs.docset/icon@2x.png
    114    tar --exclude='.DS_Store' -cvzf attrs.tgz attrs.docset