Skip to content

Commit

Permalink
Merge pull request #63 from openedx/jenkins/add-python312-support-2cd…
Browse files Browse the repository at this point in the history
…0164

feat: add python 3.11  and 3.12 support
  • Loading branch information
Feanil Patel authored Apr 1, 2024
2 parents 2cd0164 + 9af35da commit 46c8854
Show file tree
Hide file tree
Showing 13 changed files with 190 additions and 151 deletions.
8 changes: 5 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,11 @@ jobs:
strategy:
matrix:
os: [ubuntu-20.04]
python-version: ['3.8']
toxenv: [quality, django32, django42]
python-version:
- '3.8'
- '3.11'
- '3.12'
toxenv: [quality, django42]

steps:
- uses: actions/checkout@v2
Expand All @@ -34,4 +37,3 @@ jobs:
env:
TOXENV: ${{ matrix.toxenv }}
run: tox

9 changes: 7 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,22 @@ clean: ## remove generated byte code, coverage reports, and build artifacts
rm -fr dist/
rm -fr *.egg-info

COMMON_CONSTRAINTS_TXT=requirements/common_constraints.txt
.PHONY: $(COMMON_CONSTRAINTS_TXT)
$(COMMON_CONSTRAINTS_TXT):
wget -O "$(@)" https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt || touch "$(@)"

# Define PIP_COMPILE_OPTS=-v to get more information during make upgrade.
PIP_COMPILE = pip-compile --rebuild --upgrade $(PIP_COMPILE_OPTS)

upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade
upgrade: ## update the pip requirements files to use the latest releases satisfying our constraints
upgrade: $(COMMON_CONSTRAINTS_TXT) #update the pip requirements files to use the latest releases satisfying our constraints
pip install -qr requirements/pip_tools.txt
# Make sure to compile files after any other files they include!
$(PIP_COMPILE) --allow-unsafe -o requirements/pip.txt requirements/pip.in
$(PIP_COMPILE) -o requirements/pip_tools.txt requirements/pip_tools.in
pip install -qr requirements/pip.txt
pip install -qr requirements/pip-tools.txt
pip install -qr requirements/pip_tools.txt
$(PIP_COMPILE) -o requirements/base.txt requirements/base.in
$(PIP_COMPILE) -o requirements/test.txt requirements/test.in
$(PIP_COMPILE) -o requirements/scripts.txt requirements/scripts.in
Expand Down
2 changes: 1 addition & 1 deletion release_util/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
a collection of Django management commands used for analyzing and manipulating migrations.
"""

__version__ = '1.3.0' # pragma: no cover
__version__ = '1.4.0' # pragma: no cover
22 changes: 12 additions & 10 deletions requirements/base.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,22 @@
#
# This file is autogenerated by pip-compile with python 3.8
# To update, run:
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# make upgrade
#
asgiref==3.7.2
asgiref==3.8.1
# via django
django==3.2.12
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.in
pytz==2021.3
# via django
pyyaml==6.0
# -c requirements/constraints.txt
# django
django==4.2.11
# via -r requirements/base.in
pyyaml==6.0.1
# via -r requirements/base.in
six==1.16.0
# via -r requirements/base.in
sqlparse==0.4.2
sqlparse==0.4.4
# via django
typing-extensions==4.10.0
# via asgiref
Empty file.
6 changes: 4 additions & 2 deletions requirements/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
# pin when possible. Writing an issue against the offending project and
# linking to it here is good.

# Common constraints for edx repos
-c common_constraints.txt

# This file contains all common constraints for edx-repos
-c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# Temporary to Support the python 3.11 Upgrade
backports.zoneinfo;python_version<"3.9" # Newer versions have zoneinfo available in the standard library
10 changes: 5 additions & 5 deletions requirements/pip.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
#
# This file is autogenerated by pip-compile with python 3.8
# To update, run:
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# make upgrade
#
wheel==0.36.2
wheel==0.43.0
# via -r requirements/pip.in

# The following packages are considered to be unsafe in a requirements file:
pip==21.1.3
pip==24.0
# via -r requirements/pip.in
setuptools==57.2.0
setuptools==69.2.0
# via -r requirements/pip.in
29 changes: 21 additions & 8 deletions requirements/pip_tools.txt
Original file line number Diff line number Diff line change
@@ -1,19 +1,32 @@
#
# This file is autogenerated by pip-compile with python 3.8
# To update, run:
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# make upgrade
#
click==8.0.3
build==1.2.1
# via pip-tools
pep517==0.12.0
click==8.1.7
# via pip-tools
pip-tools==6.4.0
importlib-metadata==7.1.0
# via build
packaging==24.0
# via build
pip-tools==7.4.1
# via -r requirements/pip_tools.in
tomli==2.0.0
# via pep517
wheel==0.37.1
pyproject-hooks==1.0.0
# via
# build
# pip-tools
tomli==2.0.1
# via
# build
# pip-tools
# pyproject-hooks
wheel==0.43.0
# via pip-tools
zipp==3.18.1
# via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# pip
Expand Down
107 changes: 58 additions & 49 deletions requirements/quality.txt
Original file line number Diff line number Diff line change
@@ -1,117 +1,126 @@
#
# This file is autogenerated by pip-compile with python 3.8
# To update, run:
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# make upgrade
#
asgiref==3.7.2
asgiref==3.8.1
# via
# -r requirements/test.txt
# django
attrs==21.4.0
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/test.txt
# pytest
coverage[toml]==6.3.1
# django
cachetools==5.3.3
# via
# -r requirements/test.txt
# tox
chardet==5.2.0
# via
# -r requirements/test.txt
# tox
colorama==0.4.6
# via
# -r requirements/test.txt
# tox
coverage[toml]==7.4.4
# via
# -r requirements/test.txt
# pytest-cov
ddt==1.4.4
ddt==1.7.2
# via -r requirements/test.txt
distlib==0.3.4
distlib==0.3.8
# via
# -r requirements/test.txt
# virtualenv
django==3.2.12
django==4.2.11
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/test.txt
django-waffle==2.3.0
# django-waffle
django-waffle==4.1.0
# via -r requirements/test.txt
filelock==3.4.2
exceptiongroup==1.2.0
# via
# -r requirements/test.txt
# pytest
filelock==3.13.3
# via
# -r requirements/test.txt
# tox
# virtualenv
iniconfig==1.1.1
iniconfig==2.0.0
# via
# -r requirements/test.txt
# pytest
isort==5.10.1
isort==5.13.2
# via -r requirements/quality.in
mock==4.0.3
mock==5.1.0
# via -r requirements/test.txt
packaging==21.3
packaging==24.0
# via
# -r requirements/test.txt
# pyproject-api
# pytest
# tox
path==16.3.0
path==16.10.0
# via
# -r requirements/test.txt
# path.py
path.py==12.5.0
# path-py
path-py==12.5.0
# via -r requirements/test.txt
platformdirs==2.4.1
# via
# -r requirements/test.txt
# virtualenv
pluggy==1.0.0
platformdirs==4.2.0
# via
# -r requirements/test.txt
# pytest
# tox
py==1.11.0
# virtualenv
pluggy==1.4.0
# via
# -r requirements/test.txt
# pytest
# tox
pycodestyle==2.8.0
pycodestyle==2.11.1
# via -r requirements/quality.in
pydocstyle==6.1.1
pydocstyle==6.3.0
# via -r requirements/quality.in
pyparsing==3.0.7
pyproject-api==1.6.1
# via
# -r requirements/test.txt
# packaging
pytest==6.2.5
# tox
pytest==8.1.1
# via
# -r requirements/test.txt
# pytest-cov
# pytest-django
pytest-cov==3.0.0
pytest-cov==5.0.0
# via -r requirements/test.txt
pytest-django==4.5.2
pytest-django==4.8.0
# via -r requirements/test.txt
pytz==2021.3
# via
# -r requirements/test.txt
# django
pyyaml==6.0
pyyaml==6.0.1
# via -r requirements/test.txt
six==1.16.0
# via
# -r requirements/test.txt
# tox
# virtualenv
# via -r requirements/test.txt
snowballstemmer==2.2.0
# via pydocstyle
sqlparse==0.4.2
sqlparse==0.4.4
# via
# -r requirements/test.txt
# django
toml==0.10.2
tomli==2.0.1
# via
# -r requirements/test.txt
# coverage
# pyproject-api
# pytest
# tox
tomli==2.0.0
tox==4.14.2
# via -r requirements/test.txt
typing-extensions==4.10.0
# via
# -r requirements/test.txt
# coverage
tox==3.24.5
# via -r requirements/test.txt
virtualenv==20.13.0
# asgiref
virtualenv==20.25.1
# via
# -r requirements/test.txt
# tox
40 changes: 18 additions & 22 deletions requirements/scripts.txt
Original file line number Diff line number Diff line change
@@ -1,38 +1,34 @@
#
# This file is autogenerated by pip-compile with python 3.8
# To update, run:
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# make upgrade
#
certifi==2021.10.8
certifi==2024.2.2
# via requests
cffi==1.15.0
cffi==1.16.0
# via cryptography
charset-normalizer==2.0.11
charset-normalizer==3.3.2
# via requests
click==8.0.3
click==8.1.7
# via -r requirements/scripts.in
cryptography==36.0.1
# via jwcrypto
deprecated==1.2.13
# via jwcrypto
github3.py==3.0.0
cryptography==42.0.5
# via pyjwt
github3-py==4.0.1
# via -r requirements/scripts.in
idna==3.3
idna==3.6
# via requests
jwcrypto==1.0
# via github3.py
pycparser==2.21
# via cffi
python-dateutil==2.8.2
# via github3.py
requests==2.27.1
# via github3.py
pyjwt[crypto]==2.8.0
# via github3-py
python-dateutil==2.9.0.post0
# via github3-py
requests==2.31.0
# via github3-py
six==1.16.0
# via python-dateutil
uritemplate==4.1.1
# via github3.py
urllib3==1.26.8
# via github3-py
urllib3==2.2.1
# via requests
wrapt==1.13.3
# via deprecated
Loading

0 comments on commit 46c8854

Please sign in to comment.