diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a346d6533..2b779279f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -165,7 +165,10 @@ jobs: with: path: ~/.cache/pre-commit key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }} - - run: pip install tox + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install tox - run: tox -e linting deploy: diff --git a/setup.cfg b/setup.cfg index 08d5853f2..09c07d5bb 100644 --- a/setup.cfg +++ b/setup.cfg @@ -42,7 +42,7 @@ install_requires = attrs>=19.2.0 iniconfig packaging - pluggy>=0.12,<1.0 + pluggy>=0.12,<1.0.0a1 py>=1.8.2 toml atomicwrites>=1.0;sys_platform=="win32" @@ -52,8 +52,8 @@ python_requires = >=3.6 package_dir = =src setup_requires = - setuptools>=40.0 - setuptools-scm + setuptools>=>=42.0 + setuptools-scm>=3.4 zip_safe = no [options.entry_points] diff --git a/tox.ini b/tox.ini index 6c8b8b0ad..53d4fe1b2 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,6 @@ [tox] isolated_build = True -minversion = 3.5.3 +minversion = 3.20.0 distshare = {homedir}/.tox/distshare # make sure to update environment list in travis.yml and appveyor.yml envlist = @@ -16,6 +16,7 @@ envlist = py37-freeze docs docs-checklinks +requires = pip >= 20.3.1 [testenv] commands = @@ -44,19 +45,20 @@ setenv = extras = testing deps = doctesting: PyYAML - numpy: numpy - pexpect: pexpect + numpy: numpy>=1.19.4 + pexpect: pexpect>=4.8.0 pluggymaster: git+https://github.com/pytest-dev/pluggy.git@master - pygments + pygments>=2.7.2 unittestextras: twisted unittestextras: asynctest - xdist: pytest-xdist>=1.13 + xdist: pytest-xdist>=2.1.0 + xdist: -e . {env:_PYTEST_TOX_EXTRA_DEP:} [testenv:linting] skip_install = True basepython = python3 -deps = pre-commit>=1.11.0 +deps = pre-commit>=2.9.3 commands = pre-commit run --all-files --show-diff-on-failure {posargs:} [testenv:docs] @@ -141,7 +143,7 @@ passenv = * deps = colorama github3.py - pre-commit>=1.11.0 + pre-commit>=2.9.3 wheel towncrier commands = python scripts/release.py {posargs}