Skip to content

Commit c92129d

Browse files
authored
Add support for Python 3.13 (#828)
* Update tests pipeline and setup.py * Update tox coverage command * Add setuptools to the dev requirements file * Enforce coverage version in tox * Leave coveralls CI/CD job on Python 3.12 because coveralls 4.0.1 doesn't support Python 3.13 * Update changelog and publishing jobs
1 parent 3748690 commit c92129d

File tree

6 files changed

+16
-13
lines changed

6 files changed

+16
-13
lines changed

.github/workflows/publishing.yml

+7-7
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ jobs:
1515
- uses: actions/checkout@v3
1616
- uses: actions/setup-python@v4
1717
with:
18-
python-version: 3.12
18+
python-version: 3.13
1919
- run: pip install tox
2020
- run: tox
2121
env:
22-
TOXENV: 3.12
22+
TOXENV: 3.13
2323

2424
linters:
2525
name: Run linters
@@ -31,7 +31,7 @@ jobs:
3131
- uses: actions/checkout@v3
3232
- uses: actions/setup-python@v4
3333
with:
34-
python-version: 3.12
34+
python-version: 3.13
3535
- run: pip install tox
3636
- run: tox
3737
env:
@@ -45,7 +45,7 @@ jobs:
4545
- uses: actions/checkout@v3
4646
- uses: actions/setup-python@v4
4747
with:
48-
python-version: 3.12
48+
python-version: 3.13
4949
- run: |
5050
python -m pip install --upgrade pip setuptools
5151
python setup.py sdist
@@ -61,7 +61,7 @@ jobs:
6161
matrix:
6262
os: [ubuntu-22.04, windows-2019, macos-14]
6363
env:
64-
CIBW_SKIP: cp27-* cp313-*
64+
CIBW_SKIP: cp27-*
6565
steps:
6666
- uses: actions/checkout@v3
6767
- name: Build wheels
@@ -75,7 +75,7 @@ jobs:
7575
needs: [tests, linters]
7676
runs-on: ubuntu-22.04
7777
env:
78-
CIBW_SKIP: cp27-* cp313-*
78+
CIBW_SKIP: cp27-*
7979
steps:
8080
- uses: actions/checkout@v3
8181
- name: Set up QEMU
@@ -114,7 +114,7 @@ jobs:
114114
- uses: actions/checkout@v3
115115
- uses: actions/setup-python@v4
116116
with:
117-
python-version: 3.12
117+
python-version: 3.13
118118
- run: pip install awscli
119119
- run: pip install -r requirements-doc.txt
120120
- run: pip install -e .

.github/workflows/tests-and-linters.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
runs-on: ubuntu-latest
2626
strategy:
2727
matrix:
28-
python-version: [3.8, 3.9, "3.10", 3.11, 3.12]
28+
python-version: [3.8, 3.9, "3.10", 3.11, 3.12, 3.13]
2929
steps:
3030
- uses: actions/checkout@v3
3131
- uses: actions/setup-python@v4
@@ -65,7 +65,7 @@ jobs:
6565
- uses: actions/checkout@v3
6666
- uses: actions/setup-python@v4
6767
with:
68-
python-version: 3.12
68+
python-version: 3.13
6969
- run: pip install tox
7070
- run: tox
7171
env:

docs/main/changelog.rst

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ follows `Semantic versioning`_
99

1010
Develop
1111
--------
12+
- Add support for Python 3.13.
1213
- Migrate to Cython 3 (version 3.0.11). Many thanks to `ZipFile <https://github.com/ZipFile>`_ for
1314
this contribution `#813 <https://github.com/ets-labs/python-dependency-injector/pull/813>`_.
1415

requirements-dev.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
cython==3.0.11
2+
setuptools
23
pytest
34
pytest-asyncio
45
tox

setup.py

+1
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ def _open(filename):
111111
"Programming Language :: Python :: 3.10",
112112
"Programming Language :: Python :: 3.11",
113113
"Programming Language :: Python :: 3.12",
114+
"Programming Language :: Python :: 3.13",
114115
"Programming Language :: Python :: Implementation :: CPython",
115116
"Programming Language :: Python :: Implementation :: PyPy",
116117
"Framework :: AsyncIO",

tox.ini

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[tox]
22
parallel_show_output = true
33
envlist=
4-
coveralls, pylint, flake8, pydocstyle, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, pypy3.9, pypy3.10
4+
coveralls, pylint, flake8, pydocstyle, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, pypy3.9, pypy3.10
55

66
[testenv]
77
deps=
@@ -26,12 +26,12 @@ python_files = test_*_py3*.py
2626

2727
[testenv:coveralls]
2828
passenv = GITHUB_*, COVERALLS_*, DEPENDENCY_INJECTOR_*
29-
basepython=python3.12
29+
basepython=python3.12 # TODO: Upgrade to version 3.13 is blocked by coveralls 4.0.1 not supporting Python 3.13
3030
deps=
3131
{[testenv]deps}
3232
cython>=3,<4
33-
coverage
34-
coveralls
33+
coverage>=7
34+
coveralls>=4
3535
commands=
3636
coverage erase
3737
coverage run --rcfile=./.coveragerc -m pytest -c tests/.configs/pytest.ini

0 commit comments

Comments
 (0)