Skip to content

Commit

Permalink
Merge pull request #360 from openedx/python-312
Browse files Browse the repository at this point in the history
feat: Adding python 3.11/3.12 support. Removed django32 support.
  • Loading branch information
Feanil Patel authored Apr 2, 2024
2 parents 652a94f + 0a75e52 commit 39f1d43
Show file tree
Hide file tree
Showing 12 changed files with 144 additions and 125 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
strategy:
matrix:
os: [ubuntu-20.04]
python-version: ['3.8']
toxenv: [django32, django40, django42, quality]
python-version: ['3.8', '3.11', '3.12']
toxenv: [django42, quality]

steps:
- uses: actions/checkout@v2
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ upgrade: $(COMMON_CONSTRAINTS_TXT)
pip-compile --upgrade -o requirements/pip-tools.txt requirements/pip-tools.in
pip install -qr requirements/pip.txt
pip install -qr requirements/pip-tools.txt
pip-compile --upgrade -o requirements/base.txt requirements/base.in
pip-compile --upgrade --allow-unsafe -o requirements/base.txt requirements/base.in
pip-compile --upgrade -o test-requirements.txt requirements/test.in
# Let tox control the Django version for tests
sed -i.tmp '/^django==/d' test-requirements.txt
Expand Down
2 changes: 1 addition & 1 deletion organizations/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""
edx-organizations app initialization module
"""
__version__ = '6.12.1' # pragma: no cover
__version__ = '6.13.0' # pragma: no cover
1 change: 1 addition & 0 deletions requirements/base.in
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ djangorestframework
edx-drf-extensions
edx-opaque-keys>=0.1.2
Pillow
setuptools
65 changes: 33 additions & 32 deletions requirements/base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,26 @@
#
# make upgrade
#
asgiref==3.7.2
asgiref==3.8.1
# via django
certifi==2023.7.22
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# django
# djangorestframework
certifi==2024.2.2
# via requests
cffi==1.15.1
cffi==1.16.0
# via
# cryptography
# pynacl
charset-normalizer==3.2.0
charset-normalizer==3.3.2
# via requests
click==8.1.6
click==8.1.7
# via edx-django-utils
cryptography==41.0.2
cryptography==42.0.5
# via pyjwt
django==3.2.20
django==4.2.11
# via
# -c requirements/common_constraints.txt
# -r requirements/base.in
Expand All @@ -31,40 +36,40 @@ django==3.2.20
# edx-drf-extensions
django-crum==0.7.9
# via edx-django-utils
django-model-utils==4.3.1
django-model-utils==4.4.0
# via -r requirements/base.in
django-simple-history==3.1.1
# via
# -c requirements/constraints.txt
# -r requirements/base.in
django-waffle==4.0.0
django-waffle==4.1.0
# via
# edx-django-utils
# edx-drf-extensions
djangorestframework==3.14.0
djangorestframework==3.15.1
# via
# -r requirements/base.in
# drf-jwt
# edx-drf-extensions
drf-jwt==1.19.2
# via edx-drf-extensions
edx-django-utils==5.6.0
edx-django-utils==5.11.0
# via edx-drf-extensions
edx-drf-extensions==8.8.0
edx-drf-extensions==10.2.0
# via -r requirements/base.in
edx-opaque-keys==2.3.0
edx-opaque-keys==2.5.1
# via
# -r requirements/base.in
# edx-drf-extensions
idna==3.4
idna==3.6
# via requests
newrelic==8.9.0
newrelic==9.7.1
# via edx-django-utils
pbr==5.11.1
pbr==6.0.0
# via stevedore
pillow==10.0.0
pillow==10.2.0
# via -r requirements/base.in
psutil==5.9.5
psutil==5.9.8
# via edx-django-utils
pycparser==2.21
# via cffi
Expand All @@ -76,27 +81,23 @@ pymongo==3.13.0
# via edx-opaque-keys
pynacl==1.5.0
# via edx-django-utils
python-dateutil==2.8.2
# via edx-drf-extensions
pytz==2023.3
# via
# django
# djangorestframework
requests==2.31.0
# via edx-drf-extensions
semantic-version==2.10.0
# via edx-drf-extensions
six==1.16.0
# via
# edx-drf-extensions
# python-dateutil
sqlparse==0.4.4
# via django
stevedore==5.1.0
stevedore==5.2.0
# via
# edx-django-utils
# edx-opaque-keys
typing-extensions==4.7.1
# via asgiref
urllib3==2.0.4
typing-extensions==4.10.0
# via
# asgiref
# edx-opaque-keys
urllib3==2.2.1
# via requests

# The following packages are considered to be unsafe in a requirements file:
setuptools==69.2.0
# via -r requirements/base.in
13 changes: 9 additions & 4 deletions requirements/common_constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@


# using LTS django version
Django<4.0
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
Expand All @@ -22,6 +22,11 @@ elasticsearch<7.14.0
# django-simple-history>3.0.0 adds indexing and causes a lot of migrations to be affected


# tox>4.0.0 isn't yet compatible with many tox plugins, causing CI failures in almost all repos.
# Details can be found in this discussion: https://github.com/tox-dev/tox/discussions/1810
tox<4.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
6 changes: 5 additions & 1 deletion requirements/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,8 @@
-c common_constraints.txt

# incremental upgrade plan.
django-simple-history<=3.1.1
django-simple-history<=3.1.1


# it is not availablein python3.9
backports.zoneinfo;python_version<"3.9"
20 changes: 14 additions & 6 deletions requirements/pip-tools.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,31 @@
#
# make upgrade
#
build==0.10.0
build==1.1.1
# via pip-tools
click==8.1.6
click==8.1.7
# via pip-tools
packaging==23.1
importlib-metadata==6.11.0
# via
# -c requirements/common_constraints.txt
# build
packaging==24.0
# via build
pip-tools==7.1.0
pip-tools==7.4.1
# via -r requirements/pip-tools.in
pyproject-hooks==1.0.0
# via build
# via
# build
# pip-tools
tomli==2.0.1
# via
# build
# pip-tools
# pyproject-hooks
wheel==0.41.0
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
6 changes: 3 additions & 3 deletions requirements/pip.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
#
# make upgrade
#
wheel==0.41.0
wheel==0.43.0
# via -r requirements/pip.in

# The following packages are considered to be unsafe in a requirements file:
pip==23.2.1
pip==24.0
# via -r requirements/pip.in
setuptools==68.0.0
setuptools==69.2.0
# via -r requirements/pip.in
4 changes: 2 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,15 +57,15 @@ def get_version(*file_paths):
'Development Status :: 5 - Production/Stable',
'Environment :: Web Environment',
'Framework :: Django',
'Framework :: Django :: 3.2',
'Framework :: Django :: 4.0',
'Framework :: Django :: 4.2',
'Intended Audience :: Developers',
'License :: OSI Approved :: GNU Affero General Public License v3',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
],
packages=find_packages(exclude=['tests']),
install_requires=load_requirements('requirements/base.in'),
Expand Down
Loading

0 comments on commit 39f1d43

Please sign in to comment.