Skip to content

Commit ce254d8

Browse files
committed
Drop python 3.8 support
1 parent 1d979b0 commit ce254d8

File tree

7 files changed

+20
-21
lines changed

7 files changed

+20
-21
lines changed

.github/workflows/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
strategy:
1414
fail-fast: false
1515
matrix:
16-
python-version: ["3.8", "3.9", "3.10", "3.11", "pypy-3.8"]
16+
python-version: ["3.9", "3.10", "3.11", "pypy-3.9"]
1717

1818
steps:
1919
- uses: actions/[email protected]

docs/contributing.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,11 @@ The test suite is pretty big and slow, but you can tell tox to only run specific
9696

9797
tox -e {pyNN}-{HTTP_LIBRARY} -- <pytest flags passed through>
9898

99-
tox -e py38-requests -- -v -k "'test_status_code or test_gzip'"
100-
tox -e py38-requests -- -v --last-failed
99+
tox -e py39-requests -- -v -k "'test_status_code or test_gzip'"
100+
tox -e py39-requests -- -v --last-failed
101101

102102
This will run only tests that look like ``test_status_code`` or
103-
``test_gzip`` in the test suite, and only in the python 3.8 environment
103+
``test_gzip`` in the test suite, and only in the python 3.9 environment
104104
that has ``requests`` installed.
105105

106106
Also, in order for the boto tests to run, you will need an AWS key.
@@ -130,17 +130,17 @@ in this example::
130130
pip3 install tox tox-pyenv
131131

132132
# Install supported versions (at time of writing), this does not activate them
133-
pyenv install 3.8.0 pypy3.8
133+
pyenv install 3.9.0 pypy3.8
134134

135135
# This activates them
136-
pyenv local 3.8.0 pypy3.8
136+
pyenv local 3.9.0 pypy3.8
137137

138138
# Run the whole test suite
139139
tox
140140

141141
# Run the whole test suite or just part of it
142142
tox -e lint
143-
tox -e py38-requests
143+
tox -e py39-requests
144144

145145

146146
Troubleshooting on MacOSX

docs/installation.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ with pip::
99
Compatibility
1010
-------------
1111

12-
VCR.py supports Python 3.8+, and `pypy <http://pypy.org>`__.
12+
VCR.py supports Python 3.9+, and `pypy <http://pypy.org>`__.
1313

1414
The following HTTP libraries are supported:
1515

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ select = [
2727
"W", # pycodestyle warning
2828
]
2929
line-length = 110
30-
target-version = "py38"
30+
target-version = "py39"
3131

3232
[tool.ruff.isort]
3333
known-first-party = [ "vcr" ]

setup.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ def run_tests(self):
8484
author_email="[email protected]",
8585
url="https://github.com/kevin1024/vcrpy",
8686
packages=find_packages(exclude=["tests*"]),
87-
python_requires=">=3.8",
87+
python_requires=">=3.9",
8888
install_requires=install_requires,
8989
license="MIT",
9090
tests_require=tests_require,
@@ -94,7 +94,6 @@ def run_tests(self):
9494
"Intended Audience :: Developers",
9595
"Programming Language :: Python",
9696
"Programming Language :: Python :: 3",
97-
"Programming Language :: Python :: 3.8",
9897
"Programming Language :: Python :: 3.9",
9998
"Programming Language :: Python :: 3.10",
10099
"Programming Language :: Python :: 3.11",

tox.ini

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ skip_missing_interpreters=true
33
envlist =
44
cov-clean,
55
lint,
6-
{py38,py39,py310,py311}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3,aiohttp,httpx},
6+
{py39,py310,py311}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3,aiohttp,httpx},
77
{py310,py311}-{requests-urllib3-2,urllib3-2},
88
{pypy3}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3},
99
{py310}-httpx019,
@@ -12,7 +12,6 @@ envlist =
1212

1313
[gh-actions]
1414
python =
15-
3.8: py38
1615
3.9: py39
1716
3.10: py310, lint
1817
3.11: py311
@@ -61,9 +60,9 @@ deps =
6160
# In other circumstances, we might want to generate a PDF or an ebook
6261
commands =
6362
sphinx-build -W -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
64-
# We use Python 3.8. Tox sometimes tries to autodetect it based on the name of
63+
# We use Python 3.9. Tox sometimes tries to autodetect it based on the name of
6564
# the testenv, but "docs" does not give useful clues so we have to be explicit.
66-
basepython = python3.8
65+
basepython = python3.9
6766

6867
[testenv]
6968
# Need to use develop install so that paths
@@ -89,14 +88,14 @@ deps =
8988
aiohttp: pytest-asyncio
9089
aiohttp: pytest-aiohttp
9190
httpx: httpx
92-
{py38,py39,py310}-{httpx}: httpx
93-
{py38,py39,py310}-{httpx}: pytest-asyncio
91+
{py39,py310}-{httpx}: httpx
92+
{py39,py310}-{httpx}: pytest-asyncio
9493
httpx: httpx>0.19
9594
httpx019: httpx==0.19
96-
{py38,py39,py310}-{httpx}: pytest-asyncio
95+
{py39,py310}-{httpx}: pytest-asyncio
9796
depends =
98-
lint,{py38,py39,py310,py311,pypy3}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3},{py310,py311}-{requests-urllib3-2,urllib3-2},{py38,py39,py310,py311}-{aiohttp},{py38,py39,py310,py311}-{httpx}: cov-clean
99-
cov-report: lint,{py38,py39,py310,py311,pypy3}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3},{py310,py311}-{requests-urllib3-2,urllib3-2},{py38,py39,py310,py311}-{aiohttp}
97+
lint,{py39,py310,py311,pypy3}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3},{py310,py311}-{requests-urllib3-2,urllib3-2},{py39,py310,py311}-{aiohttp},{py39,py310,py311}-{httpx}: cov-clean
98+
cov-report: lint,{py39,py310,py311,pypy3}-{requests-urllib3-1,httplib2,urllib3-1,tornado4,boto3},{py310,py311}-{requests-urllib3-2,urllib3-2},{py39,py310,py311}-{aiohttp}
10099
passenv =
101100
AWS_ACCESS_KEY_ID
102101
AWS_DEFAULT_REGION

vcr/stubs/aiohttp_stubs.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@
33
import functools
44
import json
55
import logging
6+
from collections.abc import Mapping
67
from http.cookies import CookieError, Morsel, SimpleCookie
7-
from typing import Mapping, Union
8+
from typing import Union
89

910
from aiohttp import ClientConnectionError, ClientResponse, CookieJar, RequestInfo, hdrs, streams
1011
from aiohttp.helpers import strip_auth_from_url

0 commit comments

Comments
 (0)