diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 019eba65b90..a05a5e791a2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -96,6 +96,7 @@ jobs: - 3.7 - 3.8 - 3.9 + - "3.10.0-alpha - 3.10" steps: - uses: actions/checkout@v2 @@ -137,6 +138,7 @@ jobs: # - 3.7 # - 3.8 - 3.9 + - "3.10.0-alpha - 3.10" group: [1, 2] steps: diff --git a/docs/html/installation.md b/docs/html/installation.md index ecb71a4aa16..17cb0fc4b42 100644 --- a/docs/html/installation.md +++ b/docs/html/installation.md @@ -67,7 +67,7 @@ distro community, cloud provider support channels, etc). The current version of pip works on: - Windows, Linux and MacOS. -- CPython 3.6, 3.7, 3.8, 3.9 and latest PyPy3. +- CPython 3.6, 3.7, 3.8, 3.9, 3.10 and latest PyPy3. pip is tested to work on the latest patch version of the Python interpreter, for each of the minor versions listed above. Previous patch versions are diff --git a/noxfile.py b/noxfile.py index dae585738e3..0067c7071fc 100644 --- a/noxfile.py +++ b/noxfile.py @@ -70,7 +70,7 @@ def should_update_common_wheels() -> bool: # completely to nox for all our automation. Contributors should prefer using # `tox -e ...` until this note is removed. # ----------------------------------------------------------------------------- -@nox.session(python=["3.6", "3.7", "3.8", "3.9", "pypy3"]) +@nox.session(python=["3.6", "3.7", "3.8", "3.9", "3.10", "pypy3"]) def test(session: nox.Session) -> None: # Get the common wheels. if should_update_common_wheels(): diff --git a/setup.py b/setup.py index a233bd2532f..75f5195cf0b 100644 --- a/setup.py +++ b/setup.py @@ -41,6 +41,7 @@ def get_version(rel_path: str) -> str: "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", ], diff --git a/tests/functional/test_warning.py b/tests/functional/test_warning.py index 5c5b1a201ce..9272abb92b2 100644 --- a/tests/functional/test_warning.py +++ b/tests/functional/test_warning.py @@ -1,3 +1,4 @@ +import sys import textwrap import pytest @@ -44,6 +45,10 @@ def test_flag_does_nothing_if_python_version_is_not_2(script): script.pip("list", "--no-python-version-warning") +@pytest.mark.skipif( + sys.version_info >= (3, 10), + reason="distutils is deprecated in 3.10+" +) def test_pip_works_with_warnings_as_errors(script): script.environ['PYTHONWARNINGS'] = 'error' script.pip("--version") diff --git a/tests/lib/test_lib.py b/tests/lib/test_lib.py index 29b76f58c32..0e26389c1d1 100644 --- a/tests/lib/test_lib.py +++ b/tests/lib/test_lib.py @@ -45,7 +45,7 @@ def test_correct_pip_version(script): # distribution pip_folder_outputed = re.match( r"pip \d+(\.[\d]+)+(\.?(b|rc|dev|pre|post)\d+)? from (.*) " - r"\(python \d(.[\d])+\)$", + r"\(python \d+(\.[\d]+)+\)$", result.stdout, ).group(4) pip_folder = join(SRC_DIR, "src", "pip") diff --git a/tox.ini b/tox.ini index 5000f115ebd..a46ad04b7b3 100644 --- a/tox.ini +++ b/tox.ini @@ -2,7 +2,7 @@ minversion = 3.4.0 envlist = docs, packaging, lint, vendoring, - py36, py37, py38, py39, pypy3 + py36, py37, py38, py39, py310, pypy3 [helpers] # Wrapper for calls to pip that make sure the version being used is the