<commit_before>[tox]
skip_missing_interpreters=true
envlist =
  cov-clean,
  lint,
  {py37,py38,py39,py310,py311}-{requests,httplib2,urllib3,tornado4,boto3,aiohttp,httpx},
  {pypy3}-{requests,httplib2,urllib3,tornado4,boto3},
  {py310}-httpx019,
  cov-report


[gh-actions]
python =
    3.7: py37
    3.8: py38
    3.9: py39
    3.10: py310, lint
    3.11: py311
    pypy-3: pypy3

# Coverage environment tasks: cov-clean and cov-report
# https://pytest-cov.readthedocs.io/en/latest/tox.html
[testenv:cov-clean]
deps = coverage
skip_install=true
commands = coverage erase

[testenv:cov-report]
deps = coverage
skip_install=true
commands =
  coverage html
  coverage report --fail-under=90

[testenv:lint]
skipsdist = True
commands =
    black --version
    black --check --diff .
    isort --version
    isort . --check --diff
    flake8 --version
    flake8 --exclude=./docs/conf.py,./.tox/
    pyflakes ./docs/conf.py
deps =
  flake8
  black
  isort
basepython = python3.10

[testenv:docs]
# Running sphinx from inside the "docs" directory
# ensures it will not pick up any stray files that might
# get into a virtual environment under the top-level directory
# or other artifacts under build/
changedir = docs
# The only dependency is sphinx
# If we were using extensions packaged separately,
# we would specify them here.
# A better practice is to specify a specific version of sphinx.
deps =
    sphinx
    sphinx_rtd_theme
# This is the sphinx command to generate HTML.
# In other circumstances, we might want to generate a PDF or an ebook
commands =
    sphinx-build -W -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
# We use Python 3.7. Tox sometimes tries to autodetect it based on the name of
# the testenv, but "docs" does not give useful clues so we have to be explicit.
basepython = python3.7

[testenv]
# Need to use develop install so that paths
# for aggregate code coverage combine
usedevelop=true
commands =
    ./runtests.sh --cov=./vcr --cov-branch --cov-report=xml --cov-append {posargs}
deps =
    Werkzeug==2.0.3
    pytest
    git+https://github.com/immerrr/pytest-httpbin@fix-redirect-location-scheme-for-secure-server
    pytest-cov
    PyYAML
    ipaddress
    requests: requests>=2.22.0
    httplib2: httplib2
    urllib3: urllib3
    boto3: boto3
    boto3: urllib3
    aiohttp: aiohttp
    aiohttp: pytest-asyncio
    aiohttp: pytest-aiohttp
    httpx: httpx
    {py37,py38,py39,py310}-{httpx}: httpx
    {py37,py38,py39,py310}-{httpx}: pytest-asyncio
    httpx: httpx>0.19
    # httpx==0.19 is the latest version that supports allow_redirects, newer versions use follow_redirects
    httpx019: httpx==0.19
    {py37,py38,py39,py310}-{httpx}: pytest-asyncio
depends =
  lint,{py37,py38,py39,py310,py311,pypy3}-{requests,httplib2,urllib3,tornado4,boto3},{py37,py38,py39,py310,py311}-{aiohttp},{py37,py38,py39,py310,py311}-{httpx}: cov-clean
  cov-report: lint,{py37,py38,py39,py310,py311,pypy3}-{requests,httplib2,urllib3,tornado4,boto3},{py37,py38,py39,py310,py311}-{aiohttp}
passenv =
    AWS_ACCESS_KEY_ID
    AWS_DEFAULT_REGION
    AWS_SECRET_ACCESS_KEY

[flake8]
max_line_length = 110<commit_msg>Restore the pytest-httpbin package in tox.ini<commit_after>[tox]
skip_missing_interpreters=true
envlist =
  cov-clean,
  lint,
  {py37,py38,py39,py310,py311}-{requests,httplib2,urllib3,tornado4,boto3,aiohttp,httpx},
  {pypy3}-{requests,httplib2,urllib3,tornado4,boto3},
  {py310}-httpx019,
  cov-report


[gh-actions]
python =
    3.7: py37
    3.8: py38
    3.9: py39
    3.10: py310, lint
    3.11: py311
    pypy-3: pypy3

# Coverage environment tasks: cov-clean and cov-report
# https://pytest-cov.readthedocs.io/en/latest/tox.html
[testenv:cov-clean]
deps = coverage
skip_install=true
commands = coverage erase

[testenv:cov-report]
deps = coverage
skip_install=true
commands =
  coverage html
  coverage report --fail-under=90

[testenv:lint]
skipsdist = True
commands =
    black --version
    black --check --diff .
    isort --version
    isort . --check --diff
    flake8 --version
    flake8 --exclude=./docs/conf.py,./.tox/
    pyflakes ./docs/conf.py
deps =
  flake8
  black
  isort
basepython = python3.10

[testenv:docs]
# Running sphinx from inside the "docs" directory
# ensures it will not pick up any stray files that might
# get into a virtual environment under the top-level directory
# or other artifacts under build/
changedir = docs
# The only dependency is sphinx
# If we were using extensions packaged separately,
# we would specify them here.
# A better practice is to specify a specific version of sphinx.
deps =
    sphinx
    sphinx_rtd_theme
# This is the sphinx command to generate HTML.
# In other circumstances, we might want to generate a PDF or an ebook
commands =
    sphinx-build -W -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
# We use Python 3.7. Tox sometimes tries to autodetect it based on the name of
# the testenv, but "docs" does not give useful clues so we have to be explicit.
basepython = python3.7

[testenv]
# Need to use develop install so that paths
# for aggregate code coverage combine
usedevelop=true
commands =
    ./runtests.sh --cov=./vcr --cov-branch --cov-report=xml --cov-append {posargs}
deps =
    Werkzeug==2.0.3
    pytest
    pytest-httpbin>=1.0.1
    pytest-cov
    PyYAML
    ipaddress
    requests: requests>=2.22.0
    httplib2: httplib2
    urllib3: urllib3
    boto3: boto3
    boto3: urllib3
    aiohttp: aiohttp
    aiohttp: pytest-asyncio
    aiohttp: pytest-aiohttp
    httpx: httpx
    {py37,py38,py39,py310}-{httpx}: httpx
    {py37,py38,py39,py310}-{httpx}: pytest-asyncio
    httpx: httpx>0.19
    # httpx==0.19 is the latest version that supports allow_redirects, newer versions use follow_redirects
    httpx019: httpx==0.19
    {py37,py38,py39,py310}-{httpx}: pytest-asyncio
depends =
  lint,{py37,py38,py39,py310,py311,pypy3}-{requests,httplib2,urllib3,tornado4,boto3},{py37,py38,py39,py310,py311}-{aiohttp},{py37,py38,py39,py310,py311}-{httpx}: cov-clean
  cov-report: lint,{py37,py38,py39,py310,py311,pypy3}-{requests,httplib2,urllib3,tornado4,boto3},{py37,py38,py39,py310,py311}-{aiohttp}
passenv =
    AWS_ACCESS_KEY_ID
    AWS_DEFAULT_REGION
    AWS_SECRET_ACCESS_KEY

[flake8]
max_line_length = 110
{'fraction_non_alphanumeric': 0.11077219457376786, 'fraction_numerical': 0.06244983143361695, 'mean_word_length': 3.848249027237354, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 8, 'https://': 3, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1573978', 'n_tokens_mistral': 2562, 'n_tokens_neox': 2384, 'n_words': 568}