Switch to Python 3.7 as minimal version.

This commit is contained in:
Itamar Turner-Trauring 2022-01-24 10:40:26 -05:00
parent 764e493c98
commit 8eb6ab4765
6 changed files with 17 additions and 20 deletions

View File

@ -49,8 +49,8 @@ workflows:
- "pypy27-buster":
{}
# Just one Python 3.6 configuration while the port is in-progress.
- "python36":
# Test against Python 3:
- "python37":
{}
# Other assorted tasks and configurations
@ -118,7 +118,7 @@ workflows:
<<: *DOCKERHUB_CONTEXT
- "build-image-pypy27-buster":
<<: *DOCKERHUB_CONTEXT
- "build-image-python36-ubuntu":
- "build-image-python37-ubuntu":
<<: *DOCKERHUB_CONTEXT
@ -379,7 +379,7 @@ jobs:
user: "nobody"
python36:
python37:
<<: *UBUNTU_18_04
docker:
- <<: *DOCKERHUB_AUTH
@ -392,7 +392,7 @@ jobs:
# this reporter on Python 3. So drop that and just specify the
# reporter.
TAHOE_LAFS_TRIAL_ARGS: "--reporter=subunitv2-file"
TAHOE_LAFS_TOX_ENVIRONMENT: "py36"
TAHOE_LAFS_TOX_ENVIRONMENT: "py37"
ubuntu-20-04:
@ -577,7 +577,7 @@ jobs:
PYTHON_VERSION: "2.7"
build-image-python36-ubuntu:
build-image-python37-ubuntu:
<<: *BUILD_IMAGE
environment:

View File

@ -39,12 +39,11 @@ jobs:
- ubuntu-latest
python-version:
- 2.7
- 3.6
- 3.7
- 3.8
- 3.9
include:
# On macOS don't bother with 3.6-3.8, just to get faster builds.
# On macOS don't bother with 3.7-3.8, just to get faster builds.
- os: macos-10.15
python-version: 2.7
- os: macos-latest
@ -181,10 +180,10 @@ jobs:
- ubuntu-latest
python-version:
- 2.7
- 3.6
- 3.7
- 3.9
include:
# On macOS don't bother with 3.6, just to get faster builds.
# On macOS don't bother with 3.7, just to get faster builds.
- os: macos-10.15
python-version: 2.7
- os: macos-latest

View File

@ -35,7 +35,7 @@ test: .tox/create-venvs.log
# Run codechecks first since it takes the least time to report issues early.
tox --develop -e codechecks
# Run all the test environments in parallel to reduce run-time
tox --develop -p auto -e 'py27,py36,pypy27'
tox --develop -p auto -e 'py27,py37,pypy27'
.PHONY: test-venv-coverage
## Run all tests with coverage collection and reporting.
test-venv-coverage:
@ -51,7 +51,7 @@ test-venv-coverage:
.PHONY: test-py3-all
## Run all tests under Python 3
test-py3-all: .tox/create-venvs.log
tox --develop -e py36 allmydata
tox --develop -e py37 allmydata
# This is necessary only if you want to automatically produce a new
# _version.py file from the current git history (without doing a build).

View File

@ -37,8 +37,8 @@ test-py3-all-diff: ../../.tox/make-test-py3-all.diff
# `$ make .tox/make-test-py3-all.diff`
$(foreach side,old new,../../.tox/make-test-py3-all-$(side).log):
cd "../../"
tox --develop --notest -e py36-coverage
(make VIRTUAL_ENV=./.tox/py36-coverage TEST_SUITE=allmydata \
tox --develop --notest -e py37-coverage
(make VIRTUAL_ENV=./.tox/py37-coverage TEST_SUITE=allmydata \
test-venv-coverage || true) | \
sed -E 's/\([0-9]+\.[0-9]{3} secs\)/(#.### secs)/' | \
tee "./misc/python3/$(@)"

View File

@ -376,9 +376,8 @@ setup(name="tahoe-lafs", # also set in __init__.py
package_dir = {'':'src'},
packages=find_packages('src') + ['allmydata.test.plugins'],
classifiers=trove_classifiers,
# We support Python 2.7, and we're working on support for 3.6 (the
# highest version that PyPy currently supports).
python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*",
# We support Python 2.7, and Python 3.7 or later.
python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*",
install_requires=install_requires,
extras_require={
# Duplicate the Twisted pywin32 dependency here. See

View File

@ -8,7 +8,6 @@
[gh-actions]
python =
2.7: py27-coverage,codechecks
3.6: py36-coverage
3.7: py37-coverage,typechecks,codechecks3
3.8: py38-coverage
3.9: py39-coverage
@ -18,7 +17,7 @@ python =
twisted = 1
[tox]
envlist = typechecks,codechecks,codechecks3,py{27,36,37,38,39}-{coverage},pypy27,pypy3,integration,integration3
envlist = typechecks,codechecks,codechecks3,py{27,37,38,39}-{coverage},pypy27,pypy3,integration,integration3
minversion = 2.4
[testenv]
@ -51,7 +50,7 @@ deps =
# suffering we're trying to avoid with the above pins.
certifi
# VCS hooks support
py36,!coverage: pre-commit
py37,!coverage: pre-commit
# We add usedevelop=False because testing against a true installation gives
# more useful results.