# The flake8 and pep8 sections just contain configuration for corresponding tools.
# Checkers are not run implicitly.
[flake8]
exclude = *.egg*,.env,.git,.hg,.tox,_*,build*,dist*,venv*,mock.py,eventlet/green/http/*
ignore = E261,E402,E731,W503
max-line-length = 123

[pep8]
count = 1
exclude = *.egg*,.env,.git,.hg,.tox,_*,build*,dist*,venv*,mock.py,eventlet/green/http/*
ignore = E261,E402,E731,W503
max-line-length = 123
show-source = 1
statistics = 1

[tox]
minversion=2.5
envlist =
    ipv6, pep8, py{27,35,36,37,38,39,py2,py3}-{selects,poll,epolls}, py38-openssl, py27-dnspython1, py39-dnspython1
skipsdist = True

[testenv:ipv6]
basepython = python
setenv =
    {[testenv]setenv}
    eventlet_test_ipv6 = 1
deps =
    coverage==4.5.1
    nose==1.3.7
    setuptools==38.5.1
commands =
    nosetests --verbose {env:tox_cover_args} \
        tests.backdoor_test:BackdoorTest.test_server_on_ipv6_socket \
        tests.wsgi_test:TestHttpd.test_ipv6
    coverage xml -i

[testenv:pep8]
basepython = python2.7
setenv =
    {[testenv]setenv}
deps =
    pep8==1.7.1
usedevelop = False
commands =
    pep8 benchmarks/ eventlet/ tests/

[testenv]
passenv = CI EVENTLET_DB_TEST_AUTH
setenv =
    PYTHONDONTWRITEBYTECODE = 1
    selects: EVENTLET_HUB = selects
    poll: EVENTLET_HUB = poll
    epolls: EVENTLET_HUB = epolls
    tox_cover_args = --with-coverage --cover-erase --cover-package=eventlet
deps =
    coverage==4.5.1
    nose==1.3.7
    py27-{selects,poll,epolls}: pyopenssl==19.1.0
    py27: mysqlclient==1.4.6
    py27: subprocess32==3.2.7
    py38-openssl: pyopenssl==20.0.0
    pypy{2,3}: psycopg2cffi-compat==1.1
    py{27,35,36,37}: psycopg2-binary==2.7.4
    py{35,36,37,38,39}: mysqlclient==2.0.3
    py{38,39}: psycopg2-binary==2.8.4
    setuptools==38.5.1
    {selects,poll,epolls}: pyzmq==19.0.2
    dnspython1: dnspython<2
usedevelop = True
commands =
    nosetests --verbose {env:tox_cover_args} {posargs:tests/}
    coverage xml -i
