Skip to content

Commit 720333f

Browse files
authored
Merge pull request #975 from irtazaakram/django52
Add django52 support
2 parents b23883f + c4044ec commit 720333f

19 files changed

+164
-232
lines changed

.github/docker-compose-ci.yml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
version: "2.1"
22

33
services:
4-
mysql57:
5-
image: mysql:5.7
6-
container_name: mysql57
7-
command: mysqld --character-set-server=utf8 --collation-server=utf8_general_ci
8-
environment:
9-
MYSQL_ROOT_PASSWORD: ""
10-
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
11-
124
mysql80:
135
image: mysql:8.0
146
container_name: mysql80
@@ -24,7 +16,6 @@ services:
2416
volumes:
2517
- ..:/edx/app/xqueue/xqueue
2618
depends_on:
27-
- mysql57
2819
- mysql80
2920
environment:
3021
RABBIT_HOST: "rabbit"

.github/workflows/ci.yml

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,34 @@ jobs:
1313
strategy:
1414
fail-fast: false
1515
matrix:
16-
python-version: ['py38', 'py312']
17-
env-name: ['django42', 'quality']
16+
python-version: ['py311', 'py312']
17+
env-name: ['django42','django52', 'quality']
1818
db-version: ['mysql80']
1919

2020
steps:
21-
- uses: actions/checkout@v2
21+
- uses: actions/checkout@v4
2222

2323
- name: Start container
2424
run: |
2525
docker compose -f .github/docker-compose-ci.yml up -d
2626
27-
- name: setup python
28-
if: ${{ matrix.python-version == 'py312' }}
27+
- name: Setup Python ${{ matrix.python-version }} inside container
2928
run: |
30-
docker exec -e TOXENV=${{ matrix.python-version }}-${{ matrix.env-name }} -e DB_HOST=${{ matrix.db-version }} xqueue bash -c \
31-
"apt update && apt install -y software-properties-common && add-apt-repository ppa:deadsnakes/ppa -y && apt install python3.12 python3.12-dev -y"
29+
PY_VER=$(if [ "${{ matrix.python-version }}" = "py312" ]; then echo "3.12"; else echo "3.11"; fi)
30+
31+
docker exec xqueue bash -c "
32+
apt update &&
33+
apt install -y software-properties-common curl &&
34+
add-apt-repository ppa:deadsnakes/ppa -y &&
35+
apt install -y python$PY_VER python$PY_VER-dev python$PY_VER-venv &&
36+
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python$PY_VER 1 &&
37+
python$PY_VER -m venv /tmp/venv &&
38+
/tmp/venv/bin/pip install --upgrade pip
39+
"
3240
3341
- name: Install test dependencies and run tests
3442
env:
3543
TOXENV: ${{ matrix.python-version }}-${{ matrix.env-name }}
3644
run: |
37-
docker exec xqueue bash -c "cd /edx/app/xqueue/xqueue/; pip3 install -r requirements/ci.txt"
45+
docker exec xqueue bash -c "cd /edx/app/xqueue/xqueue/; /tmp/venv/bin/pip install -r requirements/ci.txt"
3846
docker exec xqueue bash -c "cd /edx/app/xqueue/xqueue/ && DB_HOST=${{ matrix.db-version }} tox -e ${TOXENV}"

.github/workflows/mysql8-migrations-check.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ jobs:
1919

2020
steps:
2121
- name: Checkout repo
22-
uses: actions/checkout@v2
22+
uses: actions/checkout@v4
2323

2424
- name: Setup Python ${{ matrix.python-version }}
25-
uses: actions/setup-python@v2
25+
uses: actions/setup-python@v5
2626
with:
2727
python-version: ${{ matrix.python-version }}
2828

requirements.txt

Lines changed: 20 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# This file is autogenerated by pip-compile with Python 3.8
2+
# This file is autogenerated by pip-compile with Python 3.11
33
# by the following command:
44
#
55
# make upgrade
@@ -8,25 +8,21 @@ asgiref==3.8.1
88
# via django
99
backoff==2.2.1
1010
# via -r requirements/base.in
11-
backports-zoneinfo==0.2.1 ; python_version < "3.9"
12-
# via
13-
# -c requirements/constraints.txt
14-
# django
15-
boto3==1.36.21
11+
boto3==1.38.43
1612
# via -r requirements/base.in
17-
botocore==1.36.21
13+
botocore==1.38.43
1814
# via
1915
# boto3
2016
# s3transfer
21-
certifi==2025.1.31
17+
certifi==2025.6.15
2218
# via requests
2319
cffi==1.17.1
2420
# via pynacl
25-
charset-normalizer==3.4.1
21+
charset-normalizer==3.4.2
2622
# via requests
27-
click==8.1.8
23+
click==8.2.1
2824
# via edx-django-utils
29-
django==4.2.19
25+
django==4.2.23
3026
# via
3127
# -c requirements/common_constraints.txt
3228
# -r requirements/base.in
@@ -37,33 +33,31 @@ django==4.2.19
3733
# edx-django-utils
3834
django-crum==0.7.9
3935
# via edx-django-utils
40-
django-storages==1.14.4
36+
django-storages==1.14.6
4137
# via -r requirements/base.in
42-
django-waffle==4.2.0
38+
django-waffle==5.0.0
4339
# via edx-django-utils
44-
edx-django-release-util==1.4.0
40+
edx-django-release-util==1.5.0
4541
# via -r requirements/base.in
46-
edx-django-utils==7.1.0
42+
edx-django-utils==8.0.0
4743
# via -r requirements/base.in
4844
gunicorn==23.0.0
4945
# via -r requirements/base.in
5046
idna==3.10
5147
# via requests
52-
isort==5.13.2
48+
isort==6.0.1
5349
# via -r requirements/base.in
5450
jmespath==1.0.1
5551
# via
5652
# boto3
5753
# botocore
5854
mysqlclient==2.2.7
5955
# via -r requirements/base.in
60-
newrelic==10.6.0
61-
# via
62-
# -r requirements/base.in
63-
# edx-django-utils
64-
packaging==24.2
56+
newrelic==10.14.0
57+
# via -r requirements/base.in
58+
packaging==25.0
6559
# via gunicorn
66-
path-py==11.0.1
60+
path==17.1.0
6761
# via -r requirements/base.in
6862
pbr==6.1.1
6963
# via stevedore
@@ -77,32 +71,25 @@ python-dateutil==2.9.0.post0
7771
# via botocore
7872
python-memcached==1.62
7973
# via -r requirements/base.in
80-
python-termstyle==0.1.10
81-
# via -r requirements/base.in
82-
pytz==2025.1
83-
# via -r requirements/base.in
8474
pyyaml==6.0.2
8575
# via edx-django-release-util
86-
requests==2.32.3
76+
requests==2.32.4
8777
# via -r requirements/base.in
88-
s3transfer==0.11.2
78+
s3transfer==0.13.0
8979
# via boto3
9080
six==1.17.0
9181
# via
9282
# edx-django-release-util
9383
# python-dateutil
9484
sqlparse==0.5.3
9585
# via django
96-
stevedore==5.3.0
86+
stevedore==5.4.1
9787
# via edx-django-utils
98-
typing-extensions==4.12.2
99-
# via asgiref
100-
urllib3==1.26.20
88+
urllib3==2.2.3
10189
# via
10290
# -c requirements/common_constraints.txt
10391
# botocore
10492
# requests
10593

10694
# The following packages are considered to be unsafe in a requirements file:
107-
# pip
10895
# setuptools

requirements/base.in

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ edx-django-utils
1111
gunicorn
1212
isort
1313
newrelic
14-
path.py==11.0.1
14+
path
1515
python-memcached
16-
python-termstyle==0.1.10
17-
pytz
1816
requests
19-
# Pin pip to 18.1 since newer versions break tox and prevent merging
20-
pip==18.1

requirements/ci.txt

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,34 @@
11
#
2-
# This file is autogenerated by pip-compile with Python 3.8
2+
# This file is autogenerated by pip-compile with Python 3.11
33
# by the following command:
44
#
55
# make upgrade
66
#
7-
cachetools==5.5.1
7+
cachetools==6.1.0
88
# via tox
99
chardet==5.2.0
1010
# via tox
1111
colorama==0.4.6
1212
# via tox
1313
distlib==0.3.9
1414
# via virtualenv
15-
filelock==3.16.1
15+
filelock==3.18.0
1616
# via
1717
# tox
1818
# virtualenv
19-
packaging==24.2
19+
packaging==25.0
2020
# via
2121
# pyproject-api
2222
# tox
23-
platformdirs==4.3.6
23+
platformdirs==4.3.8
2424
# via
2525
# tox
2626
# virtualenv
27-
pluggy==1.5.0
27+
pluggy==1.6.0
2828
# via tox
29-
pyproject-api==1.8.0
29+
pyproject-api==1.9.1
3030
# via tox
31-
tomli==2.2.1
32-
# via
33-
# pyproject-api
34-
# tox
35-
tox==4.24.1
31+
tox==4.27.0
3632
# via -r requirements/ci.in
37-
typing-extensions==4.12.2
38-
# via tox
39-
virtualenv==20.29.2
33+
virtualenv==20.31.2
4034
# via tox

requirements/constraints.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,3 @@
1010

1111
# Common constraints for edx repos
1212
-c common_constraints.txt
13-
14-
backports-zoneinfo==0.2.1; python_version < '3.9'

0 commit comments

Comments
 (0)