Skip to content

Commit 5cd37d3

Browse files
author
Feanil Patel
authored
Merge pull request #169 from openedx/python-support
feat: adding python3.11 and 3.12 support.
2 parents 6d27e6f + fb90d89 commit 5cd37d3

File tree

18 files changed

+406
-200
lines changed

18 files changed

+406
-200
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,9 @@ jobs:
1414
strategy:
1515
matrix:
1616
os: [ubuntu-20.04]
17-
python-version: ["3.8"]
17+
python-version: ["3.8", "3.11", "3.12"]
1818
toxenv:
1919
[
20-
django32-celery53-drflatest,
2120
django42-celery53-drflatest,
2221
quality,
2322
docs,
@@ -32,7 +31,8 @@ jobs:
3231
python-version: ${{ matrix.python-version }}
3332

3433
- name: Install pip
35-
run: pip install -r requirements/pip.txt
34+
run:
35+
pip install -r requirements/pip.txt
3636

3737
- name: Install Dependencies
3838
run: pip install -r requirements/ci.txt

CHANGELOG.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ Change Log
1313
1414
Unreleased
1515
----------
16+
[3.2.0] - 2023-07-31
17+
~~~~~~~~~~~~~~~~~~~~
18+
19+
* Added support of python 3.11 and 3.12
20+
* Dropped django32 support.
21+
1622

1723
[3.1.0] - 2023-07-31
1824
~~~~~~~~~~~~~~~~~~~~

requirements/base.txt

Lines changed: 50 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,39 @@
44
#
55
# make upgrade
66
#
7-
amqp==2.6.1
7+
amqp==5.2.0
88
# via kombu
9-
asgiref==3.7.2
9+
asgiref==3.8.1
1010
# via django
11-
billiard==3.6.4.0
11+
backports-zoneinfo[tzdata]==0.2.1 ; python_version < "3.9"
12+
# via
13+
# -c requirements/constraints.txt
14+
# celery
15+
# django
16+
# djangorestframework
17+
# kombu
18+
billiard==4.2.0
1219
# via celery
13-
celery==4.4.7
20+
celery==5.3.6
1421
# via
1522
# -c requirements/constraints.txt
1623
# edx-celeryutils
1724
cffi==1.16.0
1825
# via pynacl
1926
click==8.1.7
20-
# via edx-django-utils
21-
django==3.2.24
27+
# via
28+
# celery
29+
# click-didyoumean
30+
# click-plugins
31+
# click-repl
32+
# edx-django-utils
33+
click-didyoumean==0.3.1
34+
# via celery
35+
click-plugins==1.1.1
36+
# via celery
37+
click-repl==0.3.0
38+
# via celery
39+
django==4.2.11
2240
# via
2341
# -c requirements/common_constraints.txt
2442
# -r requirements/base.in
@@ -33,46 +51,56 @@ django-crum==0.7.9
3351
# via
3452
# -r requirements/base.in
3553
# edx-django-utils
36-
django-model-utils==4.4.0
54+
django-model-utils==4.5.0
3755
# via
3856
# -r requirements/base.in
3957
# edx-celeryutils
4058
django-waffle==4.1.0
4159
# via edx-django-utils
42-
djangorestframework==3.14.0
60+
djangorestframework==3.15.1
4361
# via -r requirements/base.in
44-
edx-celeryutils==1.2.5
62+
edx-celeryutils==1.3.0
4563
# via -r requirements/base.in
46-
edx-django-utils==5.10.1
64+
edx-django-utils==5.12.0
4765
# via -r requirements/base.in
4866
jsonfield==3.1.0
4967
# via edx-celeryutils
50-
kombu==4.6.11
68+
kombu==5.3.6
5169
# via celery
52-
newrelic==9.6.0
70+
newrelic==9.8.0
5371
# via edx-django-utils
5472
pbr==6.0.0
5573
# via stevedore
74+
prompt-toolkit==3.0.43
75+
# via click-repl
5676
psutil==5.9.8
5777
# via edx-django-utils
58-
pycparser==2.21
78+
pycparser==2.22
5979
# via cffi
6080
pynacl==1.5.0
6181
# via edx-django-utils
62-
pytz==2024.1
63-
# via
64-
# celery
65-
# django
66-
# djangorestframework
82+
python-dateutil==2.9.0.post0
83+
# via celery
6784
simplejson==3.19.2
6885
# via -r requirements/base.in
86+
six==1.16.0
87+
# via python-dateutil
6988
sqlparse==0.4.4
7089
# via django
71-
stevedore==5.1.0
90+
stevedore==5.2.0
7291
# via edx-django-utils
73-
typing-extensions==4.9.0
74-
# via asgiref
75-
vine==1.3.0
92+
typing-extensions==4.11.0
93+
# via
94+
# asgiref
95+
# kombu
96+
tzdata==2024.1
97+
# via
98+
# backports-zoneinfo
99+
# celery
100+
vine==5.1.0
76101
# via
77102
# amqp
78103
# celery
104+
# kombu
105+
wcwidth==0.2.13
106+
# via prompt-toolkit

requirements/celery44.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
amqp==2.6.1
2-
billiard==3.6.4.0
3-
celery==4.4.7
4-
click==8.1.3
5-
kombu==4.6.11
6-
vine==1.3.0
1+
amqp==5.2.0
2+
billiard==4.2.0
3+
celery==5.3.6
4+
click==8.1.6
5+
kombu==5.3.5
6+
vine==5.1.0

requirements/celery53.txt

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1-
amqp==2.6.1
2-
billiard==3.6.4.0
3-
celery==4.4.7
1+
amqp==5.2.0
2+
billiard==4.2.0
3+
celery==5.3.6
44
click==8.1.7
5-
kombu==4.6.11
6-
vine==1.3.0
5+
click-didyoumean==0.3.1
6+
click-repl==0.3.0
7+
kombu==5.3.6
8+
prompt-toolkit==3.0.43
9+
vine==5.1.0

requirements/ci.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@
44
#
55
# make upgrade
66
#
7-
cachetools==5.3.2
7+
cachetools==5.3.3
88
# via tox
99
chardet==5.2.0
1010
# via tox
1111
colorama==0.4.6
1212
# via tox
1313
distlib==0.3.8
1414
# via virtualenv
15-
filelock==3.13.1
15+
filelock==3.13.3
1616
# via
1717
# tox
1818
# virtualenv
19-
packaging==23.2
19+
packaging==24.0
2020
# via
2121
# pyproject-api
2222
# tox
@@ -32,7 +32,7 @@ tomli==2.0.1
3232
# via
3333
# pyproject-api
3434
# tox
35-
tox==4.13.0
35+
tox==4.14.2
3636
# via -r requirements/ci.in
37-
virtualenv==20.25.0
37+
virtualenv==20.25.1
3838
# via tox

requirements/common_constraints.txt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,20 @@
1313

1414

1515
# using LTS django version
16-
Django<4.0
16+
Django<5.0
1717

1818
# elasticsearch>=7.14.0 includes breaking changes in it which caused issues in discovery upgrade process.
1919
# elastic search changelog: https://www.elastic.co/guide/en/enterprise-search/master/release-notes-7.14.0.html
2020
elasticsearch<7.14.0
2121

2222
# django-simple-history>3.0.0 adds indexing and causes a lot of migrations to be affected
2323
django-simple-history==3.0.0
24+
25+
# opentelemetry requires version 6.x at the moment:
26+
# https://github.com/open-telemetry/opentelemetry-python/issues/3570
27+
# Normally this could be added as a constraint in edx-django-utils, where we're
28+
# adding the opentelemetry dependency. However, when we compile pip-tools.txt,
29+
# that uses version 7.x, and then there's no undoing that when compiling base.txt.
30+
# So we need to pin it globally, for now.
31+
# Ticket for unpinning: https://github.com/openedx/edx-lint/issues/407
32+
importlib-metadata<7

requirements/constraints.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,9 @@
1111
# Common constraints for edx repos
1212
-c common_constraints.txt
1313

14-
celery<5.0 # we still want to support celery 4
14+
# As it is not clarified what exact breaking changes will be introduced as per
15+
# the next major release, ensure the installed version is within boundaries.
16+
celery>=5.2.2,<6.0.0
17+
18+
19+
backports.zoneinfo;python_version<"3.9"

0 commit comments

Comments
 (0)