diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ce02c6d8..755fb69c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,13 +16,12 @@ jobs: matrix: os: - ubuntu-20.04 - python-version: - - 3.8 + python-version: ['3.8', '3.11'] toxenv: [ django42 ] steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 - name: setup python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} architecture: x64 @@ -45,7 +44,7 @@ jobs: make static make validate_translations - name: Run Coverage - if: matrix.python-version == '3.8' && matrix.toxenv=='django42' + if: matrix.python-version == '3.11' && matrix.toxenv=='django42' uses: codecov/codecov-action@v1 with: flags: unittests diff --git a/requirements/base.txt b/requirements/base.txt index 7e0679f5..cbfd16b7 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -17,8 +17,10 @@ async-timeout==4.0.3 # via redis backoff==1.10.0 # via analytics-python -backports-zoneinfo==0.2.1 - # via django +backports-zoneinfo==0.2.1 ; python_version < "3.9" + # via + # -c requirements/constraints.txt + # django billiard==3.6.4.0 # via celery celery==4.4.7 diff --git a/requirements/common_constraints.txt b/requirements/common_constraints.txt index 1f68538a..2667457a 100644 --- a/requirements/common_constraints.txt +++ b/requirements/common_constraints.txt @@ -3,6 +3,11 @@ # See BOM-2721 for more details. # Below is the copied and edited version of common_constraints +# 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. # diff --git a/requirements/constraints.txt b/requirements/constraints.txt index eca21e89..f6655552 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -48,3 +48,7 @@ wrapt < 1.14.0 # At the time of adding this, the moto version 4.1.9 requires urllib3<1.27,>=1.25.4 urllib3<1.27,>=1.25.4 + +# backports.zoneinfo needed for Python 3.9+ and Django 4.0+ compatibility +# Can be removed once requirements have been upgraded with Python>=3.9 +backports.zoneinfo; python_version<'3.9' diff --git a/requirements/devstack.txt b/requirements/devstack.txt index ff0e6072..3288f43d 100644 --- a/requirements/devstack.txt +++ b/requirements/devstack.txt @@ -42,8 +42,9 @@ backoff==1.10.0 # via # -r requirements/local.txt # analytics-python -backports-zoneinfo==0.2.1 +backports-zoneinfo==0.2.1 ; python_version < "3.9" # via + # -c requirements/constraints.txt # -r requirements/local.txt # django beautifulsoup4==4.12.3 diff --git a/requirements/local.txt b/requirements/local.txt index 9fcb5f56..a51c145b 100644 --- a/requirements/local.txt +++ b/requirements/local.txt @@ -42,8 +42,9 @@ backoff==1.10.0 # via # -r requirements/test.txt # analytics-python -backports-zoneinfo==0.2.1 +backports-zoneinfo==0.2.1 ; python_version < "3.9" # via + # -c requirements/constraints.txt # -r requirements/test.txt # django beautifulsoup4==4.12.3 diff --git a/requirements/monitoring/requirements.txt b/requirements/monitoring/requirements.txt index dc0688c1..4adf607a 100644 --- a/requirements/monitoring/requirements.txt +++ b/requirements/monitoring/requirements.txt @@ -63,7 +63,7 @@ backoff==1.10.0 # -r requirements/monitoring/../production.txt # -r requirements/monitoring/../test.txt # analytics-python -backports-zoneinfo==0.2.1 +backports-zoneinfo==0.2.1 ; python_version < "3.9" # via # -r requirements/monitoring/../devstack.txt # -r requirements/monitoring/../local.txt diff --git a/requirements/production.txt b/requirements/production.txt index 36db7f57..417d5b10 100644 --- a/requirements/production.txt +++ b/requirements/production.txt @@ -24,8 +24,9 @@ backoff==1.10.0 # via # -r requirements/base.txt # analytics-python -backports-zoneinfo==0.2.1 +backports-zoneinfo==0.2.1 ; python_version < "3.9" # via + # -c requirements/constraints.txt # -r requirements/base.txt # django billiard==3.6.4.0 diff --git a/requirements/test.txt b/requirements/test.txt index 5a91b04a..7c987422 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -28,8 +28,9 @@ backoff==1.10.0 # via # -r requirements/base.txt # analytics-python -backports-zoneinfo==0.2.1 +backports-zoneinfo==0.2.1 ; python_version < "3.9" # via + # -c requirements/constraints.txt # -r requirements/base.txt # django billiard==3.6.4.0 diff --git a/tox.ini b/tox.ini index 6f5406a3..650eaa00 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py38-django{42} +envlist = py{38, 311}-django{42} skipsdist = true [testenv]