Skip to content

Commit d3b3881

Browse files
Merge pull request #220 from theMarix/update-python-versions
Verify support for Python 3.13
2 parents e70c354 + d3d3afb commit d3b3881

File tree

4 files changed

+54
-43
lines changed

4 files changed

+54
-43
lines changed

.github/workflows/tests.yml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ jobs:
1010
test:
1111
runs-on: ubuntu-latest
1212
strategy:
13+
fail-fast: false
1314
matrix:
14-
python-version: ['3.9', '3.10', '3.11', '3.12']
15+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
1516
steps:
1617
- uses: actions/checkout@v3
1718
- name: Set up Python ${{ matrix.python-version }}
@@ -23,14 +24,21 @@ jobs:
2324
python -m pip install --upgrade pip
2425
python -m pip install -r requirements.txt
2526
python -m pip install --no-deps -e .
26-
python -m pip install coveralls
27+
if [ "${{ matrix.python-version }}" != "3.13" ]; then # workaround for TheKevJames/coveralls-python#523
28+
python -m pip install coveralls
29+
fi
2730
python -m pip freeze
2831
python -m pip --version
2932
python -c 'import setuptools; print(f"setuptools=={setuptools.__version__}")'
3033
- name: Test with pytest
3134
run: |
32-
pytest
35+
if [ "${{ matrix.python-version }}" == "3.13" ]; then
36+
pytest --no-cov # workaround for TheKevJames/coveralls-python#523
37+
else
38+
pytest
39+
fi
3340
- name: Upload coverage data
41+
if: matrix.python-version != '3.13' # workaround for TheKevJames/coveralls-python#523
3442
run: |
3543
coveralls --service=github
3644
env:

CHANGELOG.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ UNRELEASED
1111
Added
1212
-----
1313

14-
* Support for Python 3.12
14+
* Support for Python 3.12 and 3.13.
1515
* Compatibility with junit-xml >= 2.0.
1616

1717
Removed

requirements.txt

Lines changed: 41 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -4,38 +4,41 @@
44
#
55
# pip-compile --no-emit-index-url --strip-extras
66
#
7-
anyio==4.6.0
7+
anyio==4.8.0
88
# via httpx
99
argon2-cffi==23.1.0
1010
# via
1111
# devpi-server
1212
# passlib
1313
argon2-cffi-bindings==21.2.0
1414
# via argon2-cffi
15-
attrs==24.2.0
15+
attrs==25.1.0
1616
# via
1717
# devpi-server
18+
# headerparser
1819
# wheel-inspect
1920
build==1.2.2.post1
2021
# via
2122
# check-manifest
2223
# devpi-client
23-
certifi==2024.8.30
24+
certifi==2025.1.31
2425
# via
2526
# httpcore
2627
# httpx
2728
# requests
2829
cffi==1.17.1
2930
# via argon2-cffi-bindings
30-
charset-normalizer==3.4.0
31+
charset-normalizer==3.4.1
3132
# via requests
3233
check-manifest==0.50
3334
# via devpi-client
34-
coverage==7.6.2
35+
coverage==7.6.12
3536
# via pytest-cov
3637
defusedxml==0.7.1
3738
# via devpi-server
38-
devpi-client==7.1.0
39+
deprecated==1.2.18
40+
# via headerparser
41+
devpi-client==7.2.0
3942
# via devpi-plumber
4043
devpi-common==4.0.4
4144
# via
@@ -45,23 +48,23 @@ devpi-plumber==0.7.0
4548
# via
4649
# -r core-requirements.txt
4750
# -r requirements.in
48-
devpi-server==6.13.0
51+
devpi-server==6.14.0
4952
# via devpi-plumber
5053
docutils==0.21.2
5154
# via readme-renderer
52-
entry-points-txt==0.1.0
55+
entry-points-txt==0.2.1
5356
# via wheel-inspect
5457
exceptiongroup==1.2.2
5558
# via
5659
# anyio
5760
# pytest
5861
h11==0.14.0
5962
# via httpcore
60-
headerparser==0.4.0
63+
headerparser==0.5.2
6164
# via wheel-inspect
62-
httpcore==1.0.6
65+
httpcore==1.0.7
6366
# via httpx
64-
httpx==0.27.2
67+
httpx==0.28.1
6568
# via devpi-server
6669
hupper==1.12.1
6770
# via pyramid
@@ -70,7 +73,7 @@ idna==3.10
7073
# anyio
7174
# httpx
7275
# requests
73-
importlib-metadata==8.5.0
76+
importlib-metadata==8.6.1
7477
# via build
7578
iniconfig==2.0.0
7679
# via
@@ -84,11 +87,11 @@ lazy==1.6
8487
# via
8588
# devpi-common
8689
# devpi-server
87-
mock==5.1.0
90+
mock==5.2.0
8891
# via -r requirements.in
89-
nh3==0.2.18
92+
nh3==0.2.21
9093
# via readme-renderer
91-
packaging==24.1
94+
packaging==24.2
9295
# via
9396
# build
9497
# packaging-legacy
@@ -104,7 +107,7 @@ pastedeploy==3.1.0
104107
# via plaster-pastedeploy
105108
pip-requirements-parser==32.0.1
106109
# via -r core-requirements.txt
107-
pkginfo==1.11.2
110+
pkginfo==1.12.1.2
108111
# via devpi-client
109112
plaster==1.1.2
110113
# via
@@ -125,20 +128,20 @@ py==1.11.0
125128
# via devpi-server
126129
pycparser==2.22
127130
# via cffi
128-
pygments==2.18.0
131+
pygments==2.19.1
129132
# via readme-renderer
130-
pyparsing==3.1.4
133+
pyparsing==3.2.1
131134
# via pip-requirements-parser
132135
pyproject-hooks==1.2.0
133136
# via build
134137
pyramid==2.0.2
135138
# via devpi-server
136-
pytest==8.3.3
139+
pytest==8.3.5
137140
# via
138141
# -r requirements.in
139142
# pytest-cov
140143
# pytest-mock
141-
pytest-cov==5.0.0
144+
pytest-cov==6.0.0
142145
# via -r requirements.in
143146
pytest-mock==3.14.0
144147
# via -r requirements.in
@@ -152,24 +155,21 @@ requests==2.32.3
152155
# via
153156
# devpi-common
154157
# devpi-plumber
155-
ruamel-yaml==0.18.6
158+
ruamel-yaml==0.18.10
156159
# via devpi-server
157-
ruamel-yaml-clib==0.2.8
160+
ruamel-yaml-clib==0.2.12
158161
# via ruamel-yaml
159-
setuptools-scm==8.1.0
162+
setuptools-scm==8.2.0
160163
# via -r requirements.in
161-
six==1.16.0
164+
six==1.17.0
162165
# via
163-
# headerparser
164166
# junit-xml
165167
# python-dateutil
166168
sniffio==1.3.1
167-
# via
168-
# anyio
169-
# httpx
169+
# via anyio
170170
strictyaml==1.7.3
171171
# via devpi-server
172-
tomli==2.0.2
172+
tomli==2.2.1
173173
# via
174174
# build
175175
# check-manifest
@@ -189,27 +189,29 @@ typing-extensions==4.12.2
189189
# via
190190
# anyio
191191
# setuptools-scm
192-
urllib3==2.2.3
192+
urllib3==2.3.0
193193
# via requests
194-
venusian==3.1.0
194+
venusian==3.1.1
195195
# via pyramid
196-
waitress==3.0.1
196+
waitress==3.0.2
197197
# via devpi-server
198-
webob==1.8.8
198+
webob==1.8.9
199199
# via pyramid
200-
wheel==0.44.0
200+
wheel==0.45.1
201201
# via -r core-requirements.txt
202-
wheel-filename==1.4.1
202+
wheel-filename==1.4.2
203203
# via
204204
# -r core-requirements.txt
205205
# wheel-inspect
206-
wheel-inspect==1.7.1
206+
wheel-inspect==1.7.2
207207
# via -r core-requirements.txt
208-
zipp==3.20.2
208+
wrapt==1.17.2
209+
# via deprecated
210+
zipp==3.21.0
209211
# via importlib-metadata
210-
zope-deprecation==5.0
212+
zope-deprecation==5.1
211213
# via pyramid
212-
zope-interface==7.1.0
214+
zope-interface==7.2
213215
# via pyramid
214216

215217
# The following packages are considered to be unsafe in a requirements file:

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
'Programming Language :: Python :: 3.10',
3333
'Programming Language :: Python :: 3.11',
3434
'Programming Language :: Python :: 3.12',
35+
'Programming Language :: Python :: 3.13',
3536
],
3637
entry_points={
3738
'console_scripts': [

0 commit comments

Comments
 (0)