From b95b1ec0df3f746ec1dd6ca95945abd645dc6911 Mon Sep 17 00:00:00 2001 From: awais qureshi Date: Tue, 2 Apr 2024 15:07:05 +0500 Subject: [PATCH] feat: Adding python3.11 and 3.12 support. --- requirements/common_constraints.txt | 37 +++++++++++++++++++++++++++++ requirements/dev.txt | 7 ++++-- requirements/django.txt | 4 +++- requirements/doc.txt | 7 ++++-- requirements/pip-tools.txt | 6 +++-- requirements/quality.txt | 4 +++- requirements/test.txt | 4 +++- 7 files changed, 60 insertions(+), 9 deletions(-) diff --git a/requirements/common_constraints.txt b/requirements/common_constraints.txt index e69de29..c9d8d9c 100644 --- a/requirements/common_constraints.txt +++ b/requirements/common_constraints.txt @@ -0,0 +1,37 @@ +# This is a temporary solution to override the real common_constraints.txt +# In edx-lint, until the pyjwt constraint in edx-lint has been removed. +# See BOM-2721 for more details. +# Below is the copied and edited version of common_constraints + +# A central location for most common version constraints +# (across edx repos) for pip-installation. +# +# Similar to other constraint files this file doesn't install any packages. +# It specifies version constraints that will be applied if a package is needed. +# When pinning something here, please provide an explanation of why it is a good +# idea to pin this package across all edx repos, Ideally, link to other information +# that will help people in the future to remove the pin when possible. +# Writing an issue against the offending project and linking to it here is good. +# +# Note: Changes to this file will automatically be used by other repos, referencing +# this file from Github directly. It does not require packaging in edx-lint. + + +# using LTS django version +Django<5.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 +elasticsearch<7.14.0 + +# django-simple-history>3.0.0 adds indexing and causes a lot of migrations to be affected +django-simple-history==3.0.0 + +# opentelemetry requires version 6.x at the moment: +# https://github.com/open-telemetry/opentelemetry-python/issues/3570 +# Normally this could be added as a constraint in edx-django-utils, where we're +# adding the opentelemetry dependency. However, when we compile pip-tools.txt, +# that uses version 7.x, and then there's no undoing that when compiling base.txt. +# So we need to pin it globally, for now. +# Ticket for unpinning: https://github.com/openedx/edx-lint/issues/407 +importlib-metadata<7 diff --git a/requirements/dev.txt b/requirements/dev.txt index 7cf738e..564e670 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -55,7 +55,9 @@ distlib==0.3.8 # -r requirements/ci.txt # virtualenv django==4.2.11 - # via -r requirements/quality.txt + # via + # -c requirements/common_constraints.txt + # -r requirements/quality.txt edx-lint==5.3.6 # via -r requirements/quality.txt exceptiongroup==1.2.0 @@ -67,8 +69,9 @@ filelock==3.13.3 # -r requirements/ci.txt # tox # virtualenv -importlib-metadata==7.1.0 +importlib-metadata==6.11.0 # via + # -c requirements/common_constraints.txt # -r requirements/pip-tools.txt # build iniconfig==2.0.0 diff --git a/requirements/django.txt b/requirements/django.txt index 5180661..a700859 100644 --- a/requirements/django.txt +++ b/requirements/django.txt @@ -11,7 +11,9 @@ backports-zoneinfo==0.2.1 ; python_version < "3.9" # -c requirements/constraints.txt # django django==4.2.11 - # via -r requirements/django.in + # via + # -c requirements/common_constraints.txt + # -r requirements/django.in sqlparse==0.4.4 # via django typing-extensions==4.10.0 diff --git a/requirements/doc.txt b/requirements/doc.txt index 5ac4deb..b65f4b3 100644 --- a/requirements/doc.txt +++ b/requirements/doc.txt @@ -34,7 +34,9 @@ coverage[toml]==7.4.4 # -r requirements/test.txt # pytest-cov django==4.2.11 - # via -r requirements/test.txt + # via + # -c requirements/common_constraints.txt + # -r requirements/test.txt doc8==1.1.1 # via -r requirements/doc.in docutils==0.19 @@ -52,8 +54,9 @@ idna==3.6 # via requests imagesize==1.4.1 # via sphinx -importlib-metadata==7.1.0 +importlib-metadata==6.11.0 # via + # -c requirements/common_constraints.txt # keyring # sphinx # twine diff --git a/requirements/pip-tools.txt b/requirements/pip-tools.txt index 1471edd..6401f54 100644 --- a/requirements/pip-tools.txt +++ b/requirements/pip-tools.txt @@ -8,8 +8,10 @@ build==1.2.1 # via pip-tools click==8.1.7 # via pip-tools -importlib-metadata==7.1.0 - # via build +importlib-metadata==6.11.0 + # via + # -c requirements/common_constraints.txt + # build packaging==24.0 # via build pip-tools==7.4.1 diff --git a/requirements/quality.txt b/requirements/quality.txt index 22323ec..7e0a746 100644 --- a/requirements/quality.txt +++ b/requirements/quality.txt @@ -34,7 +34,9 @@ coverage[toml]==7.4.4 dill==0.3.8 # via pylint django==4.2.11 - # via -r requirements/test.txt + # via + # -c requirements/common_constraints.txt + # -r requirements/test.txt edx-lint==5.3.6 # via -r requirements/quality.in exceptiongroup==1.2.0 diff --git a/requirements/test.txt b/requirements/test.txt index f544b3f..e1435c5 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -17,7 +17,9 @@ click==8.1.7 # via -r requirements/base.txt coverage[toml]==7.4.4 # via pytest-cov - # via -r requirements/django.txt + # via + # -c requirements/common_constraints.txt + # -r requirements/django.txt exceptiongroup==1.2.0 # via pytest iniconfig==2.0.0