Skip to content

Commit 534f21e

Browse files
committed
feat!: Python 3.12 Upgrade
1 parent b38870a commit 534f21e

16 files changed

+104
-126
lines changed

.github/workflows/ci.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ jobs:
1515
strategy:
1616
matrix:
1717
os:
18-
- ubuntu-20.04
18+
- ubuntu-22.04
1919
python-version:
20-
- 3.11
20+
- 3.12
2121
targets: [ 'quality','main.test','docs' ]
2222

2323
steps:
@@ -40,7 +40,7 @@ jobs:
4040
&& export TOXENV=django42 && make test.requirements tox.requirements ${{ matrix.targets }}"
4141

4242
- name: Run Coverage
43-
if: matrix.python-version == '3.11' && matrix.targets=='main.test'
43+
if: matrix.python-version == '3.12' && matrix.targets=='main.test'
4444
uses: codecov/codecov-action@v1
4545
with:
4646
fail_ci_if_error: true

.github/workflows/mysql8-migrations.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ jobs:
1313
runs-on: ${{ matrix.os }}
1414
strategy:
1515
matrix:
16-
os: [ ubuntu-20.04 ]
17-
python-version: [ 3.11 ]
16+
os: [ ubuntu-22.04 ]
17+
python-version: [ 3.12 ]
1818

1919
steps:
2020
- name: Checkout repo

.github/workflows/upgrade-python-requirements.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
uses: openedx/.github/.github/workflows/upgrade-python-requirements.yml@master
1616
with:
1717
branch: ${{ github.event.inputs.branch || 'master' }}
18-
python_version: "3.11"
18+
python_version: "3.12"
1919
# optional parameters below; fill in if you'd like github or email notifications
2020
# user_reviewers: ""
2121
# team_reviewers: ""

.readthedocs.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
version: 2
77

88
build:
9-
os: "ubuntu-20.04"
9+
os: "ubuntu-22.04"
1010
tools:
11-
python: "3.8"
11+
python: "3.12"
1212

1313
# Build documentation in the docs/ directory with Sphinx
1414
sphinx:

Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ FROM ubuntu:focal as base
22

33
# System requirements.
44

5-
# ENV variables for Python 3.11 support
6-
ARG PYTHON_VERSION=3.11
5+
# ENV variables for Python 3.12 support
6+
ARG PYTHON_VERSION=3.12
77
ENV TZ=UTC
88
ENV TERM=xterm-256color
99
ENV DEBIAN_FRONTEND=noninteractive

requirements/base.txt

+16-19
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# This file is autogenerated by pip-compile with Python 3.11
2+
# This file is autogenerated by pip-compile with Python 3.12
33
# by the following command:
44
#
55
# make upgrade
@@ -11,9 +11,9 @@ asgiref==3.8.1
1111
# django-countries
1212
boto==2.49.0
1313
# via -r requirements/base.in
14-
boto3==1.35.41
14+
boto3==1.35.48
1515
# via -r requirements/base.in
16-
botocore==1.35.41
16+
botocore==1.35.48
1717
# via
1818
# boto3
1919
# s3transfer
@@ -31,7 +31,7 @@ coreapi==2.3.3
3131
# via -r requirements/base.in
3232
coreschema==0.0.4
3333
# via coreapi
34-
cryptography==43.0.1
34+
cryptography==43.0.3
3535
# via
3636
# django-fernet-fields-v2
3737
# pyjwt
@@ -91,32 +91,30 @@ djangorestframework-csv==3.0.2
9191
# via
9292
# -r requirements/base.in
9393
# edx-enterprise-data
94-
dnspython==2.6.1
95-
# via
96-
# -c requirements/constraints.txt
97-
# pymongo
94+
dnspython==2.7.0
95+
# via pymongo
9896
drf-jwt==1.19.2
9997
# via edx-drf-extensions
100-
drf-yasg==1.21.7
98+
drf-yasg==1.21.8
10199
# via edx-api-doc-tools
102100
edx-api-doc-tools==2.0.0
103101
# via -r requirements/base.in
104102
edx-ccx-keys==1.3.0
105103
# via -r requirements/base.in
106104
edx-django-release-util==1.4.0
107105
# via -r requirements/base.in
108-
edx-django-utils==6.1.0
106+
edx-django-utils==7.0.0
109107
# via
110108
# -r requirements/base.in
111109
# edx-drf-extensions
112110
# edx-enterprise-data
113111
# edx-rest-api-client
114-
edx-drf-extensions==10.4.0
112+
edx-drf-extensions==10.5.0
115113
# via
116114
# -r requirements/base.in
117115
# edx-enterprise-data
118116
# edx-rbac
119-
edx-enterprise-data==9.6.0
117+
edx-enterprise-data==10.0.1
120118
# via -r requirements/base.in
121119
edx-opaque-keys==2.11.0
122120
# via
@@ -132,7 +130,7 @@ edx-rest-api-client==6.0.0
132130
# edx-enterprise-data
133131
factory-boy==3.3.1
134132
# via edx-enterprise-data
135-
faker==30.4.0
133+
faker==30.8.1
136134
# via factory-boy
137135
html5lib==1.1
138136
# via -r requirements/base.in
@@ -150,25 +148,25 @@ jmespath==1.0.1
150148
# botocore
151149
markdown==3.7
152150
# via -r requirements/base.in
153-
markupsafe==3.0.1
151+
markupsafe==3.0.2
154152
# via jinja2
155153
mysql-connector-python==9.1.0
156154
# via edx-enterprise-data
157155
newrelic==10.2.0
158156
# via edx-django-utils
159-
numpy==1.24.4
157+
numpy==2.1.2
160158
# via
161159
# edx-enterprise-data
162160
# pandas
163161
ordered-set==4.1.0
164162
# via -r requirements/base.in
165163
packaging==24.1
166164
# via drf-yasg
167-
pandas==2.0.3
165+
pandas==2.2.3
168166
# via edx-enterprise-data
169167
pbr==6.1.0
170168
# via stevedore
171-
psutil==6.0.0
169+
psutil==6.1.0
172170
# via edx-django-utils
173171
pycparser==2.22
174172
# via cffi
@@ -236,9 +234,8 @@ uritemplate==4.1.1
236234
# via
237235
# coreapi
238236
# drf-yasg
239-
urllib3==1.26.20
237+
urllib3==2.2.3
240238
# via
241-
# -c requirements/constraints.txt
242239
# -r requirements/base.in
243240
# botocore
244241
# requests

requirements/ci.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# This file is autogenerated by pip-compile with Python 3.11
2+
# This file is autogenerated by pip-compile with Python 3.12
33
# by the following command:
44
#
55
# make upgrade

requirements/constraints.txt

-6
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,5 @@ elasticsearch < 7.14.0
2121
# elasticsearch-dsl depends on elasticsearch >=7.8.0,<8.0.0
2222
elasticsearch-dsl>=7.2.1,<8.0.0
2323

24-
# botocore 1.35.14 has requirement urllib3<1.27,>=1.25.4; python_version < "3.10"
25-
urllib3<2.0.0
26-
2724
# path>16.14.0 has removed the deprecated abspath function, which is breaking the docs build
2825
path<16.15.0
29-
30-
# dnspython 2.7.0 Requires-Python >=3.9
31-
dnspython<2.7.0

requirements/dev.txt

+17-20
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# This file is autogenerated by pip-compile with Python 3.11
2+
# This file is autogenerated by pip-compile with Python 3.12
33
# by the following command:
44
#
55
# make upgrade
@@ -11,9 +11,9 @@ asgiref==3.8.1
1111
# django-countries
1212
boto==2.49.0
1313
# via -r requirements/base.in
14-
boto3==1.35.41
14+
boto3==1.35.48
1515
# via -r requirements/base.in
16-
botocore==1.35.41
16+
botocore==1.35.48
1717
# via
1818
# boto3
1919
# s3transfer
@@ -31,7 +31,7 @@ coreapi==2.3.3
3131
# via -r requirements/base.in
3232
coreschema==0.0.4
3333
# via coreapi
34-
cryptography==43.0.1
34+
cryptography==43.0.3
3535
# via
3636
# django-fernet-fields-v2
3737
# pyjwt
@@ -91,32 +91,30 @@ djangorestframework-csv==3.0.2
9191
# via
9292
# -r requirements/base.in
9393
# edx-enterprise-data
94-
dnspython==2.6.1
95-
# via
96-
# -c requirements/constraints.txt
97-
# pymongo
94+
dnspython==2.7.0
95+
# via pymongo
9896
drf-jwt==1.19.2
9997
# via edx-drf-extensions
100-
drf-yasg==1.21.7
98+
drf-yasg==1.21.8
10199
# via edx-api-doc-tools
102100
edx-api-doc-tools==2.0.0
103101
# via -r requirements/base.in
104102
edx-ccx-keys==1.3.0
105103
# via -r requirements/base.in
106104
edx-django-release-util==1.4.0
107105
# via -r requirements/base.in
108-
edx-django-utils==6.1.0
106+
edx-django-utils==7.0.0
109107
# via
110108
# -r requirements/base.in
111109
# edx-drf-extensions
112110
# edx-enterprise-data
113111
# edx-rest-api-client
114-
edx-drf-extensions==10.4.0
112+
edx-drf-extensions==10.5.0
115113
# via
116114
# -r requirements/base.in
117115
# edx-enterprise-data
118116
# edx-rbac
119-
edx-enterprise-data==9.6.0
117+
edx-enterprise-data==10.0.1
120118
# via -r requirements/base.in
121119
edx-opaque-keys==2.11.0
122120
# via
@@ -132,7 +130,7 @@ edx-rest-api-client==6.0.0
132130
# edx-enterprise-data
133131
factory-boy==3.3.1
134132
# via edx-enterprise-data
135-
faker==30.4.0
133+
faker==30.8.1
136134
# via factory-boy
137135
html5lib==1.1
138136
# via -r requirements/base.in
@@ -150,27 +148,27 @@ jmespath==1.0.1
150148
# botocore
151149
markdown==3.7
152150
# via -r requirements/base.in
153-
markupsafe==3.0.1
151+
markupsafe==3.0.2
154152
# via jinja2
155153
mysql-connector-python==9.1.0
156154
# via edx-enterprise-data
157-
mysqlclient==2.2.4
155+
mysqlclient==2.2.5
158156
# via -r requirements/dev.in
159157
newrelic==10.2.0
160158
# via edx-django-utils
161-
numpy==1.24.4
159+
numpy==2.1.2
162160
# via
163161
# edx-enterprise-data
164162
# pandas
165163
ordered-set==4.1.0
166164
# via -r requirements/base.in
167165
packaging==24.1
168166
# via drf-yasg
169-
pandas==2.0.3
167+
pandas==2.2.3
170168
# via edx-enterprise-data
171169
pbr==6.1.0
172170
# via stevedore
173-
psutil==6.0.0
171+
psutil==6.1.0
174172
# via edx-django-utils
175173
pycparser==2.22
176174
# via cffi
@@ -238,9 +236,8 @@ uritemplate==4.1.1
238236
# via
239237
# coreapi
240238
# drf-yasg
241-
urllib3==1.26.20
239+
urllib3==2.2.3
242240
# via
243-
# -c requirements/constraints.txt
244241
# -r requirements/base.in
245242
# botocore
246243
# requests

0 commit comments

Comments
 (0)