Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop python 3.6 #2343

Merged
merged 3 commits into from
Feb 11, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
231 changes: 2 additions & 229 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,44 +57,6 @@ docs_steps: &docs_steps
- ~/.py-geth
key: cache-docs-{{ .Environment.CIRCLE_JOB }}-{{ checksum "setup.py" }}-{{ checksum "tox.ini" }}

# parity_steps: &parity_steps
# working_directory: ~/repo
# steps:
# - checkout
# - restore_cache:
# keys:
# - cache-{{ .Environment.CIRCLE_JOB }}-{{ checksum "setup.py" }}-{{ checksum "tox.ini" }}
# - run:
# name: install dependencies
# command: pip install --user tox
# - run:
# name: install parity if needed
# command: |
# pip install --user requests eth_utils tqdm eth-hash[pycryptodome]
# echo "Job specifies Parity version $PARITY_VERSION"
# python tests/integration/parity/install_parity.py $PARITY_VERSION
# - run:
# name: update parity deps from testing repo if needed
# command: |
# [ "`cat /etc/*release | grep jessie`" != "" ] && echo "On Jessie - installing missing deps..." || echo "Not on Jessie - doing nothing."
# [ "`cat /etc/*release | grep jessie`" != "" ] || exit 0
# echo "deb http://ftp.debian.org/debian testing main" > testing.list && sudo mv testing.list /etc/apt/sources.list.d/
# sudo apt update
# sudo apt-get -t testing install libstdc++6
# - run:
# name: run tox
# command: ~/.local/bin/tox -r
# - save_cache:
# paths:
# - .tox
# - ~/.cache/pip
# - ~/.local
# - ./eggs
# - ~/.ethash
# - ~/.py-geth
# - ~/.parity-bin
# key: cache-{{ .Environment.CIRCLE_JOB }}-{{ checksum "setup.py" }}-{{ checksum "tox.ini" }}

geth_steps: &geth_steps
working_directory: ~/repo
steps:
Expand Down Expand Up @@ -247,105 +209,17 @@ jobs:
lint:
<<: *common
docker:
- image: circleci/python:3.6
- image: circleci/python:3.9
environment:
TOXENV: lint

docs:
<<: *docs_steps
docker:
- image: circleci/python:3.6
- image: circleci/python:3.9
environment:
TOXENV: docs

py36-core:
<<: *common
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-core

py36-ens:
<<: *common
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-ens

py36-ethpm:
<<: *ethpm_steps
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-ethpm
# Please don't use this key for any shenanigans
WEB3_INFURA_PROJECT_ID: 7707850c2fb7465ebe6f150d67182e22

py36-integration-goethereum-ipc:
<<: *geth_steps
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-integration-goethereum-ipc
GETH_VERSION: v1.10.13

py36-integration-goethereum-http:
<<: *geth_steps
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-integration-goethereum-http
GETH_VERSION: v1.10.13

py36-integration-goethereum-ws:
<<: *geth_steps
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-integration-goethereum-ws
GETH_VERSION: v1.10.13

# py36-integration-parity-ipc:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.6-stretch
# environment:
# TOXENV: py36-integration-parity-ipc
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py36-integration-parity-http:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.6-stretch
# environment:
# TOXENV: py36-integration-parity-http
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py36-integration-parity-ws:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.6-stretch
# environment:
# TOXENV: py36-integration-parity-ws
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

py36-integration-ethtester-pyevm:
<<: *common
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-integration-ethtester
ETHEREUM_TESTER_CHAIN_BACKEND: eth_tester.backends.PyEVMBackend

py36-wheel-cli:
<<: *common
docker:
- image: circleci/python:3.6
environment:
TOXENV: py36-wheel-cli

#
# Python 3.7
Expand Down Expand Up @@ -397,33 +271,6 @@ jobs:
TOXENV: py37-integration-goethereum-ws
GETH_VERSION: v1.10.13

# py37-integration-parity-ipc:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.7-stretch
# environment:
# TOXENV: py37-integration-parity-ipc
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py37-integration-parity-http:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.7-stretch
# environment:
# TOXENV: py37-integration-parity-http
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py37-integration-parity-ws:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.7-stretch
# environment:
# TOXENV: py37-integration-parity-ws
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

py37-integration-ethtester-pyevm:
<<: *common
docker:
Expand Down Expand Up @@ -494,33 +341,6 @@ jobs:
TOXENV: py38-integration-goethereum-ws
GETH_VERSION: v1.10.13

# py38-integration-parity-ipc:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.8
# environment:
# TOXENV: py38-integration-parity-ipc
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py38-integration-parity-http:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.8
# environment:
# TOXENV: py38-integration-parity-http
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py38-integration-parity-ws:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.8
# environment:
# TOXENV: py38-integration-parity-ws
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

py38-integration-ethtester-pyevm:
<<: *common
docker:
Expand Down Expand Up @@ -586,33 +406,6 @@ jobs:
TOXENV: py39-integration-goethereum-ws
GETH_VERSION: v1.10.13

# py39-integration-parity-ipc:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.9
# environment:
# TOXENV: py39-integration-parity-ipc
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py39-integration-parity-http:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.9
# environment:
# TOXENV: py39-integration-parity-http
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

# py39-integration-parity-ws:
# <<: *parity_steps
# docker:
# - image: circleci/python:3.9
# environment:
# TOXENV: py39-integration-parity-ws
# PARITY_VERSION: v2.3.5
# PARITY_OS: linux

py39-integration-ethtester-pyevm:
<<: *common
docker:
Expand Down Expand Up @@ -641,31 +434,17 @@ workflows:
test:
jobs:
# These are the longest running tests, start them first
- py36-core
- py37-core
- py38-core
- py39-core
- lint
- docs
- benchmark
- py36-ens
- py36-ethpm
- py36-integration-goethereum-ipc
- py36-integration-goethereum-http
- py36-integration-goethereum-ws
# - py36-integration-parity-ipc
# - py36-integration-parity-http
# - py36-integration-parity-ws
- py36-integration-ethtester-pyevm
- py36-wheel-cli
- py37-ens
- py37-ethpm
- py37-integration-goethereum-ipc
- py37-integration-goethereum-http
- py37-integration-goethereum-ws
# - py37-integration-parity-ipc
# - py37-integration-parity-http
# - py37-integration-parity-ws
- py37-integration-ethtester-pyevm
- py37-wheel-cli
- py37-wheel-cli-windows
Expand All @@ -674,18 +453,12 @@ workflows:
- py38-integration-goethereum-ipc
- py38-integration-goethereum-http
- py38-integration-goethereum-ws
# - py38-integration-parity-ipc
# - py38-integration-parity-http
# - py38-integration-parity-ws
- py38-integration-ethtester-pyevm
- py38-wheel-cli
- py39-ens
- py39-ethpm
- py39-integration-goethereum-ipc
- py39-integration-goethereum-http
- py39-integration-goethereum-ws
# - py39-integration-parity-ipc
# - py39-integration-parity-http
# - py39-integration-parity-ws
- py39-integration-ethtester-pyevm
- py39-wheel-cli
2 changes: 2 additions & 0 deletions newsfragments/2343.breaking-change.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Remove support for the unsupported Python 3.6
Also removes outdated Parity tests
3 changes: 1 addition & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@
"typing-extensions>=3.7.4.1,<5;python_version<'3.8'",
"websockets>=9.1,<10",
],
python_requires='>=3.6,<4',
python_requires='>=3.7,<3.10',
extras_require=extras_require,
py_modules=['web3', 'ens', 'ethpm'],
entry_points={"pytest11": ["pytest_ethereum = web3.tools.pytest_ethereum.plugins"]},
Expand All @@ -107,7 +107,6 @@
'License :: OSI Approved :: MIT License',
'Natural Language :: English',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
Expand Down
19 changes: 6 additions & 13 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
[tox]
envlist=
py{36,37,38,39}-ens
py{36,37,38,39}-ethpm
py{36,37,38,39}-core
py{36,37,38,39}-integration-{goethereum,ethtester}
py{37,38,39}-ens
py{37,38,39}-ethpm
py{37,38,39}-core
py{37,38,39}-integration-{goethereum,ethtester}
lint
docs
benchmark
py{36,37,38,39}-wheel-cli
py{37,38,39}-wheel-cli

[isort]
combine_as_imports=True
Expand Down Expand Up @@ -48,8 +48,7 @@ passenv =
WEB3_INFURA_PROJECT_ID
WEB3_INFURA_API_SECRET
basepython =
docs: python3.6
py36: python3.6
docs: python3.9
py37: python3.7
py38: python3.8
py39: python3.9
Expand Down Expand Up @@ -80,12 +79,6 @@ commands=
/bin/bash -c 'pip install --upgrade "$(ls dist/web3-*-py3-none-any.whl)" --progress-bar off'
python -c "from web3.auto import w3"

[testenv:py36-wheel-cli]
deps={[common-wheel-cli]deps}
whitelist_externals={[common-wheel-cli]whitelist_externals}
commands={[common-wheel-cli]commands}
skip_install=true

[testenv:py37-wheel-cli]
deps={[common-wheel-cli]deps}
whitelist_externals={[common-wheel-cli]whitelist_externals}
Expand Down