diff --git a/.github/scripts/testing-js.sh b/.github/scripts/testing-js.sh index e0921fadd..e748aac60 100755 --- a/.github/scripts/testing-js.sh +++ b/.github/scripts/testing-js.sh @@ -9,7 +9,7 @@ docker exec -t insights_testing bash -c " cd /edx/app/insights/edx_analytics_dashboard/ && source /edx/app/insights/venvs/insights/bin/activate && PATH=\$PATH:/edx/app/insights/nodeenvs/insights/bin:/snap/bin && - export TOXENV=django32 && + export TOXENV=django42 && pip install -r requirements/github.txt && set -x && nodeenv --node=${NODE_VERSION} /edx/app/insights/nodeenvs/insights-test-${NODE} && diff --git a/.github/scripts/testing.sh b/.github/scripts/testing.sh index ebf8cf74b..4813349a2 100755 --- a/.github/scripts/testing.sh +++ b/.github/scripts/testing.sh @@ -2,7 +2,7 @@ docker exec -t insights_testing bash -c " cd /edx/app/insights/edx_analytics_dashboard/ && source /edx/app/insights/venvs/insights/bin/activate && PATH=\$PATH:/edx/app/insights/nodeenvs/insights/bin:/snap/bin && - export TOXENV=django32 && + export TOXENV=django42 && pip install -r requirements/github.txt && make $TARGETS " diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 718fc915c..53ec957a2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,17 +12,17 @@ jobs: matrix: python-version: ["3.8"] os: [ubuntu-20.04] - toxenv: [django32] + toxenv: [django42] node: [16] env: DATA_API_VERSION: "latest" steps: - name: setup python - uses: actions/setup-python@v2 + uses: actions/setup-python@v3 with: python-version: ${{ matrix.python-version }} - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 - name: start container diff --git a/Makefile b/Makefile index 27758ad9b..7f1098ce7 100644 --- a/Makefile +++ b/Makefile @@ -176,6 +176,8 @@ $(COMMON_CONSTRAINTS_TXT): upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade upgrade: $(COMMON_CONSTRAINTS_TXT) + sed 's/Django<4.0//g' requirements/common_constraints.txt > requirements/common_constraints.tmp + mv requirements/common_constraints.tmp requirements/common_constraints.txt pip install -qr requirements/pip_tools.txt ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in pip-compile --allow-unsafe --rebuild --upgrade -o requirements/pip.txt requirements/pip.in pip-compile --upgrade -o requirements/pip_tools.txt requirements/pip_tools.in diff --git a/requirements/base.txt b/requirements/base.txt index 2e83a8ee9..5172baf58 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -8,6 +8,8 @@ asgiref==3.7.2 # via # django # django-countries +backports-zoneinfo==0.2.1 + # via django certifi==2023.7.22 # via requests cffi==1.15.1 @@ -30,9 +32,8 @@ defusedxml==0.7.1 # via # python3-openid # social-auth-core -django==3.2.21 +django==4.2.5 # via - # -c requirements/common_constraints.txt # -c requirements/constraints.txt # -r requirements/base.in # django-appconf @@ -168,9 +169,7 @@ python-slugify==8.0.1 python3-openid==3.2.0 # via social-auth-core pytz==2023.3.post1 - # via - # django - # djangorestframework + # via djangorestframework pyyaml==6.0.1 # via # code-annotations diff --git a/requirements/common_constraints.txt b/requirements/common_constraints.txt index afe6aa887..c84245937 100644 --- a/requirements/common_constraints.txt +++ b/requirements/common_constraints.txt @@ -13,7 +13,7 @@ # using LTS django version -Django<4.0 + # elasticsearch>=7.14.0 includes breaking changes in it which caused issues in discovery upgrade process. # elastic search changelog: https://www.elastic.co/guide/en/enterprise-search/master/release-notes-7.14.0.html diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 6ffa252d1..03680592c 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -13,8 +13,8 @@ # Newer version of django-webpack-loader is not compatible with npm webpack-bundle-tracker > 0.4.3 django-webpack-loader==0.7.0 -# Constraint Django to 3.2 LTS -django<3.3 +# Constraint Django to 4.2 LTS +Django<5.0 # urllib3 > 2.0.2 introduces an error urllib3>=1.26.15, <2 diff --git a/requirements/django.txt b/requirements/django.txt index 62b5cb851..c7734200a 100644 --- a/requirements/django.txt +++ b/requirements/django.txt @@ -1 +1 @@ -django==3.2.21 +django==4.2.5 diff --git a/requirements/doc.txt b/requirements/doc.txt index 5b14fa631..64d98488a 100644 --- a/requirements/doc.txt +++ b/requirements/doc.txt @@ -17,6 +17,10 @@ babel==2.12.1 # via # pydata-sphinx-theme # sphinx +backports-zoneinfo==0.2.1 + # via + # -r requirements/base.txt + # django beautifulsoup4==4.12.2 # via pydata-sphinx-theme certifi==2023.7.22 @@ -51,9 +55,8 @@ defusedxml==0.7.1 # -r requirements/base.txt # python3-openid # social-auth-core -django==3.2.21 +django==4.2.5 # via - # -c requirements/common_constraints.txt # -c requirements/constraints.txt # -r requirements/base.txt # django-appconf @@ -240,7 +243,6 @@ pytz==2023.3.post1 # via # -r requirements/base.txt # babel - # django # djangorestframework pyyaml==6.0.1 # via diff --git a/requirements/local.txt b/requirements/local.txt index f05f71e72..cf4331f73 100644 --- a/requirements/local.txt +++ b/requirements/local.txt @@ -14,6 +14,10 @@ astroid==2.15.6 # -r requirements/test.txt # pylint # pylint-celery +backports-zoneinfo==0.2.1 + # via + # -r requirements/test.txt + # django bok-choy==2.0.2 # via -r requirements/test.txt build==1.0.3 @@ -75,9 +79,8 @@ distlib==0.3.7 # via # -r requirements/tox.txt # virtualenv -django==3.2.21 +django==4.2.5 # via - # -c requirements/common_constraints.txt # -c requirements/constraints.txt # -r requirements/test.txt # django-appconf @@ -350,7 +353,6 @@ python3-openid==3.2.0 pytz==2023.3.post1 # via # -r requirements/test.txt - # django # djangorestframework pyyaml==6.0.1 # via diff --git a/requirements/production.txt b/requirements/production.txt index 39ee68150..0faa4c201 100644 --- a/requirements/production.txt +++ b/requirements/production.txt @@ -9,6 +9,10 @@ asgiref==3.7.2 # -r requirements/base.txt # django # django-countries +backports-zoneinfo==0.2.1 + # via + # -r requirements/base.txt + # django certifi==2023.7.22 # via # -r requirements/base.txt @@ -41,9 +45,8 @@ defusedxml==0.7.1 # -r requirements/base.txt # python3-openid # social-auth-core -django==3.2.21 +django==4.2.5 # via - # -c requirements/common_constraints.txt # -c requirements/constraints.txt # -r requirements/base.txt # django-appconf @@ -221,7 +224,6 @@ python3-openid==3.2.0 pytz==2023.3.post1 # via # -r requirements/base.txt - # django # djangorestframework pyyaml==6.0.1 # via diff --git a/requirements/test.txt b/requirements/test.txt index 15707cedb..9f97bcc18 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -14,6 +14,10 @@ astroid==2.15.6 # -r requirements/test.in # pylint # pylint-celery +backports-zoneinfo==0.2.1 + # via + # -r requirements/base.txt + # django bok-choy==2.0.2 # via -r requirements/test.in certifi==2023.7.22 @@ -62,7 +66,6 @@ defusedxml==0.7.1 dill==0.3.7 # via pylint # via - # -c requirements/common_constraints.txt # -c requirements/constraints.txt # -r requirements/base.txt # django-appconf @@ -280,7 +283,6 @@ python3-openid==3.2.0 pytz==2023.3.post1 # via # -r requirements/base.txt - # django # djangorestframework pyyaml==6.0.1 # via diff --git a/tox.ini b/tox.ini index 4c2d2ce0e..6b7b6475a 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py38-django{32} +envlist = py38-django{42} skipsdist = true [pytest] @@ -22,7 +22,7 @@ passenv = SELENIUM_BROWSER BOKCHOY_HEADLESS deps = - django32: -r requirements/django.txt + django42: -r requirements/django.txt -r {toxinidir}/requirements/test.txt allowlist_externals = make