Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python support 3.11 and 3.12 #259

Merged
merged 13 commits into from
Apr 2, 2024
7 changes: 2 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,10 @@ jobs:
strategy:
matrix:
os: [ubuntu-20.04]
python-version: ["3.8"]
python-version: ["3.8", "3.12"]
toxenv:
[
py38-django32-drf312,
py38-django32-drflatest,
py38-django42-drflatest,
quality,
py38-django42-drflatest,quality
]

steps:
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,13 @@ Change Log
Unreleased
----------

1.8.0 --- 2024-02-29
--------------------
* Add support for python 3.12 support.
* Removed django32 support.



1.7.0 --- 2023-07-23
--------------------

Expand Down
14 changes: 13 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,22 @@ pip:
upgrade-pip-tools: pip-tools
pip-compile --upgrade requirements/pip-tools.in

define COMMON_CONSTRAINTS_TEMP_COMMENT
# This is a temporary solution to override the real common_constraints.txt\n# In edx-lint, until the pyjwt constraint in edx-lint has been removed.\n# See BOM-2721 for more details.\n# Below is the copied and edited version of common_constraints\n
endef

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 "$(@)"
echo "$(COMMON_CONSTRAINTS_TEMP_COMMENT)" | cat - $(@) > temp && mv temp $(@)

upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade
upgrade: ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
upgrade: $(COMMON_CONSTRAINTS_TXT) ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
# Make sure to compile files after any other files they include!
pip install -qr requirements/pip-tools.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-compile --upgrade -o requirements/pip-tools.txt requirements/pip-tools.in
pip-compile --upgrade --allow-unsafe --rebuild -o requirements/pip.txt requirements/pip.in
pip install -qr requirements/pip-tools.txt
Expand Down
2 changes: 1 addition & 1 deletion edx_api_doc_tools/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,4 @@
)


__version__ = '1.7.0'
__version__ = '1.8.0'
10 changes: 6 additions & 4 deletions requirements/base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@
#
asgiref==3.7.2
# via django
django==3.2.24
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# django
django==4.2.10
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.in
# djangorestframework
# drf-yasg
Expand All @@ -24,14 +27,13 @@ packaging==23.2
# via drf-yasg
pytz==2024.1
# via
# django
# djangorestframework
# drf-yasg
pyyaml==6.0.1
# via drf-yasg
sqlparse==0.4.4
# via django
typing-extensions==4.9.0
typing-extensions==4.10.0
# via asgiref
uritemplate==4.1.1
# via drf-yasg
2 changes: 1 addition & 1 deletion requirements/ci.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
# make upgrade
#
cachetools==5.3.2
cachetools==5.3.3
# via tox
chardet==5.2.0
# via tox
Expand Down
15 changes: 15 additions & 0 deletions requirements/common_constraints.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# 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

# 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

# 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

4 changes: 3 additions & 1 deletion requirements/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,6 @@
# linking to it here is good.

# Common constraints for edx repos
-c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
-c common_constraints.txt

backports.zoneinfo;python_version<"3.9"
52 changes: 17 additions & 35 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,27 +8,28 @@ asgiref==3.7.2
# via
# -r requirements/quality.txt
# django
astroid==3.0.3
astroid==3.1.0
# via
# -r requirements/quality.txt
# pylint
# pylint-celery
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/quality.txt
# django
build==1.0.3
# via
# -r requirements/pip-tools.txt
# pip-tools
cachetools==5.3.2
cachetools==5.3.3
# via
# -r requirements/ci.txt
# tox
certifi==2024.2.2
# via
# -r requirements/quality.txt
# requests
cffi==1.16.0
# via
# -r requirements/quality.txt
# cryptography
chardet==5.2.0
# via
# -r requirements/ci.txt
Expand Down Expand Up @@ -58,14 +59,10 @@ colorama==0.4.6
# via
# -r requirements/ci.txt
# tox
coverage[toml]==7.4.2
coverage[toml]==7.4.3
# via
# -r requirements/quality.txt
# pytest-cov
cryptography==42.0.4
# via
# -r requirements/quality.txt
# secretstorage
diff-cover==8.0.3
# via -r requirements/dev.in
dill==0.3.8
Expand All @@ -76,9 +73,8 @@ distlib==0.3.8
# via
# -r requirements/ci.txt
# virtualenv
django==3.2.24
django==4.2.10
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/quality.txt
# djangorestframework
# drf-yasg
Expand Down Expand Up @@ -117,7 +113,7 @@ importlib-metadata==7.0.1
# build
# keyring
# twine
importlib-resources==6.1.1
importlib-resources==6.1.2
# via
# -r requirements/quality.txt
# keyring
Expand All @@ -137,17 +133,12 @@ jaraco-classes==3.3.1
# via
# -r requirements/quality.txt
# keyring
jeepney==0.8.0
# via
# -r requirements/quality.txt
# keyring
# secretstorage
jinja2==3.1.3
# via
# -r requirements/quality.txt
# code-annotations
# diff-cover
keyring==24.3.0
keyring==24.3.1
# via
# -r requirements/quality.txt
# twine
Expand Down Expand Up @@ -217,10 +208,6 @@ polib==1.2.0
# via edx-i18n-tools
pycodestyle==2.11.1
# via -r requirements/quality.txt
pycparser==2.21
# via
# -r requirements/quality.txt
# cffi
pydocstyle==6.3.0
# via -r requirements/quality.txt
pygments==2.17.2
Expand All @@ -229,7 +216,7 @@ pygments==2.17.2
# diff-cover
# readme-renderer
# rich
pylint==3.0.3
pylint==3.1.0
# via
# -r requirements/quality.txt
# edx-lint
Expand Down Expand Up @@ -258,7 +245,7 @@ pyproject-hooks==1.0.0
# -r requirements/pip-tools.txt
# build
# pip-tools
pytest==8.0.1
pytest==8.0.2
# via
# -r requirements/quality.txt
# pytest-cov
Expand All @@ -274,7 +261,6 @@ python-slugify==8.0.4
pytz==2024.1
# via
# -r requirements/quality.txt
# django
# djangorestframework
# drf-yasg
pyyaml==6.0.1
Expand All @@ -283,7 +269,7 @@ pyyaml==6.0.1
# code-annotations
# drf-yasg
# edx-i18n-tools
readme-renderer==42.0
readme-renderer==43.0
# via
# -r requirements/quality.txt
# twine
Expand All @@ -304,10 +290,6 @@ rich==13.7.0
# via
# -r requirements/quality.txt
# twine
secretstorage==3.3.3
# via
# -r requirements/quality.txt
# keyring
six==1.16.0
# via
# -r requirements/quality.txt
Expand All @@ -320,7 +302,7 @@ sqlparse==0.4.4
# via
# -r requirements/quality.txt
# django
stevedore==5.1.0
stevedore==5.2.0
# via
# -r requirements/quality.txt
# code-annotations
Expand All @@ -341,15 +323,15 @@ tomli==2.0.1
# pyproject-hooks
# pytest
# tox
tomlkit==0.12.3
tomlkit==0.12.4
# via
# -r requirements/quality.txt
# pylint
tox==4.13.0
# via -r requirements/ci.txt
twine==5.0.0
# via -r requirements/quality.txt
typing-extensions==4.9.0
typing-extensions==4.10.0
# via
# -r requirements/quality.txt
# asgiref
Expand Down
Loading
Loading