Skip to content

Commit 24e6492

Browse files
committed
➕ Add Python 3.10 support to CI
Signed-off-by: Harmouch101 <[email protected]>
1 parent df21609 commit 24e6492

File tree

3 files changed

+140
-18
lines changed

3 files changed

+140
-18
lines changed

.circleci/config.yml

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -636,6 +636,106 @@ jobs:
636636
TOXENV: benchmark
637637
GETH_VERSION: v1.10.8
638638

639+
#
640+
# Python 3.10
641+
#
642+
py310-core:
643+
<<: *common
644+
docker:
645+
- image: circleci/python:3.10
646+
environment:
647+
TOXENV: py310-core
648+
649+
py310-ens:
650+
<<: *common
651+
docker:
652+
- image: circleci/python:3.10
653+
environment:
654+
TOXENV: py310-ens
655+
656+
py310-ethpm:
657+
<<: *ethpm_steps
658+
docker:
659+
- image: circleci/python:3.10
660+
environment:
661+
TOXENV: py310-ethpm
662+
# Please don't use this key for any shenanigans
663+
WEB3_INFURA_PROJECT_ID: 7707850c2fb7465ebe6f150d67182e22
664+
665+
py310-integration-goethereum-ipc:
666+
<<: *geth_steps
667+
docker:
668+
- image: circleci/python:3.10
669+
environment:
670+
TOXENV: py310-integration-goethereum-ipc
671+
GETH_VERSION: v1.10.8
672+
673+
py310-integration-goethereum-http:
674+
<<: *geth_steps
675+
docker:
676+
- image: circleci/python:3.10
677+
environment:
678+
TOXENV: py310-integration-goethereum-http
679+
GETH_VERSION: v1.10.8
680+
681+
py310-integration-goethereum-ws:
682+
<<: *geth_steps
683+
docker:
684+
- image: circleci/python:3.10
685+
environment:
686+
TOXENV: py310-integration-goethereum-ws
687+
GETH_VERSION: v1.10.8
688+
689+
# py310-integration-parity-ipc:
690+
# <<: *parity_steps
691+
# docker:
692+
# - image: circleci/python:3.10
693+
# environment:
694+
# TOXENV: py310-integration-parity-ipc
695+
# PARITY_VERSION: v2.3.5
696+
# PARITY_OS: linux
697+
698+
# py310-integration-parity-http:
699+
# <<: *parity_steps
700+
# docker:
701+
# - image: circleci/python:3.10
702+
# environment:
703+
# TOXENV: py310-integration-parity-http
704+
# PARITY_VERSION: v2.3.5
705+
# PARITY_OS: linux
706+
707+
# py310-integration-parity-ws:
708+
# <<: *parity_steps
709+
# docker:
710+
# - image: circleci/python:3.10
711+
# environment:
712+
# TOXENV: py310-integration-parity-ws
713+
# PARITY_VERSION: v2.3.5
714+
# PARITY_OS: linux
715+
716+
py310-integration-ethtester-pyevm:
717+
<<: *common
718+
docker:
719+
- image: circleci/python:3.10
720+
environment:
721+
TOXENV: py310-integration-ethtester
722+
ETHEREUM_TESTER_CHAIN_BACKEND: eth_tester.backends.PyEVMBackend
723+
724+
py310-wheel-cli:
725+
<<: *common
726+
docker:
727+
- image: circleci/python:3.10
728+
environment:
729+
TOXENV: py310-wheel-cli
730+
731+
benchmark:
732+
<<: *geth_steps
733+
docker:
734+
- image: circleci/python:3.10
735+
environment:
736+
TOXENV: benchmark
737+
GETH_VERSION: v1.10.8
738+
639739
workflows:
640740
version: 2.1
641741
test:
@@ -645,6 +745,7 @@ workflows:
645745
- py37-core
646746
- py38-core
647747
- py39-core
748+
- py310-core
648749
- lint
649750
- docs
650751
- benchmark
@@ -689,3 +790,16 @@ workflows:
689790
# - py39-integration-parity-ws
690791
- py39-integration-ethtester-pyevm
691792
- py39-wheel-cli
793+
- py310-integration-ethtester-pyevm
794+
- py310-wheel-cli
795+
- py310-ens
796+
- py310-ethpm
797+
- py310-integration-goethereum-ipc
798+
- py310-integration-goethereum-http
799+
- py310-integration-goethereum-ws
800+
# - py310-integration-parity-ipc
801+
# - py310-integration-parity-http
802+
# - py310-integration-parity-ws
803+
- py310-integration-ethtester-pyevm
804+
- py310-wheel-cli
805+

setup.py

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,23 @@
1111
"py-geth>=3.5.0,<4",
1212
],
1313
'linter': [
14-
"flake8==3.8.3",
15-
"isort>=4.2.15,<4.3.5",
16-
"mypy==0.812",
14+
"flake8>=3.8.3,<=3.9.2",
15+
"isort>=4.2.15,<=5.9.3",
16+
"mypy>=0.812,<=0.910",
1717
],
1818
'docs': [
1919
"mock",
20-
"sphinx-better-theme>=0.1.4",
21-
"click>=5.1",
22-
"configparser==3.5.0",
23-
"contextlib2>=0.5.4",
20+
"sphinx-better-theme>=0.1.4,<=0.13",
21+
"click>=5.1,<=8.0.1",
22+
"configparser==3.5.0,<=5.0.2",
23+
"contextlib2>=0.5.4,<=0.6.0",
2424
"py-geth>=3.5.0,<4",
25-
"py-solc>=0.4.0",
26-
"pytest>=4.4.0,<5.0.0",
27-
"sphinx>=3.0,<4",
28-
"sphinx_rtd_theme>=0.1.9",
29-
"toposort>=1.4",
30-
"towncrier==18.5.0",
25+
"py-solc>=0.4.0,<4.0.0",
26+
"pytest>=4.4.0,<6.3.0",
27+
"sphinx>=3.0,<=4.2.0",
28+
"sphinx_rtd_theme>=0.1.9,<=1.0.0",
29+
"toposort>=1.4,<=2.0.2",
30+
"towncrier>=18.5.0,<=21.3.0",
3131
"urllib3",
3232
"wheel"
3333
],
@@ -108,5 +108,6 @@
108108
'Programming Language :: Python :: 3.7',
109109
'Programming Language :: Python :: 3.8',
110110
'Programming Language :: Python :: 3.9',
111+
'Programming Language :: Python :: 3.10',
111112
],
112113
)

tox.ini

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
[tox]
22
envlist=
3-
py{36,37,38,39}-ens
4-
py{36,37,38,39}-ethpm
5-
py{36,37,38,39}-core
6-
py{36,37,38,39}-integration-{goethereum,ethtester}
3+
py{36,37,38,39,310}-ens
4+
py{36,37,38,39,310}-ethpm
5+
py{36,37,38,39,310}-core
6+
py{36,37,38,39,310}-integration-{goethereum,ethtester}
77
lint
88
docs
99
benchmark
10-
py{36,37,38,39}-wheel-cli
10+
py{36,37,38,39,310}-wheel-cli
1111

1212
[isort]
1313
combine_as_imports=True
@@ -53,6 +53,7 @@ basepython =
5353
py37: python3.7
5454
py38: python3.8
5555
py39: python3.9
56+
py310: python3.10
5657

5758
[testenv:lint]
5859
basepython=python
@@ -104,6 +105,12 @@ whitelist_externals={[common-wheel-cli]whitelist_externals}
104105
commands={[common-wheel-cli]commands}
105106
skip_install=true
106107

108+
[testenv:py310-wheel-cli]
109+
deps={[common-wheel-cli]deps}
110+
whitelist_externals={[common-wheel-cli]whitelist_externals}
111+
commands={[common-wheel-cli]commands}
112+
skip_install=true
113+
107114
[common-wheel-cli-windows]
108115
deps=wheel
109116
whitelist_externals=

0 commit comments

Comments
 (0)