Skip to content

Commit

Permalink
feat: add python312 support
Browse files Browse the repository at this point in the history
  • Loading branch information
edx-requirements-bot authored and UsamaSadiq committed Mar 6, 2024
1 parent c3613a3 commit 95c0300
Show file tree
Hide file tree
Showing 18 changed files with 99 additions and 69 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-20.04]
python-version: ['3.8']
toxenv: [quality, docs, django32, django42]
python-version: ['3.8', '3.12']
toxenv: [quality, docs, django42]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: setup python
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

Expand All @@ -34,7 +34,7 @@ jobs:
run: tox

- name: Run Coverage
if: matrix.python-version == '3.8' && matrix.toxenv=='django42'
if: matrix.python-version == '3.12' && matrix.toxenv=='django42'
uses: codecov/codecov-action@v3
with:
flags: unittests
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ Change Log
Unreleased
~~~~~~~~~~

[1.8.0] - 2024-03-06
~~~~~~~~~~~~~~~~~~~~
* Added support for ``Python 3.12``
* Dropped support for ``Django 3.2``


[1.7.0] - 2023-07-21
~~~~~~~~~~~~~~~~~~~~

Expand Down
12 changes: 6 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -44,14 +44,14 @@ upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade
upgrade: ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
pip install -qr requirements/pip-tools.txt
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/pip.txt requirements/pip.in
pip-compile --upgrade -o requirements/pip-tools.txt requirements/pip-tools.in
pip-compile --allow-unsafe --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 --rebuild --upgrade -o requirements/dev.txt requirements/base.in requirements/dev.in requirements/quality.in
pip-compile --rebuild --upgrade -o requirements/doc.txt requirements/base.in requirements/doc.in
pip-compile --rebuild --upgrade -o requirements/quality.txt requirements/quality.in
pip-compile --rebuild --upgrade -o requirements/test.txt requirements/base.in requirements/test.in
pip-compile --rebuild --upgrade -o requirements/ci.txt requirements/ci.in
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/dev.txt requirements/base.in requirements/dev.in requirements/quality.in
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/doc.txt requirements/base.in requirements/doc.in
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/quality.txt requirements/quality.in
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/test.txt requirements/base.in requirements/test.in
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/ci.txt requirements/ci.in
# Let tox control the Django version for tests
sed '/^django==/d' requirements/test.txt > requirements/test.tmp
mv requirements/test.tmp requirements/test.txt
Expand Down
2 changes: 1 addition & 1 deletion edx_ace/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
from .recipient import Recipient
from .recipient_resolver import RecipientResolver

__version__ = '1.7.0'
__version__ = '1.8.0'


__all__ = [
Expand Down
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 @@ attrs>=17.2.0 # Attributes without boilerplate
sailthru-client==2.2.3
six
stevedore>=1.10.0
setuptools
4 changes: 3 additions & 1 deletion requirements/ci.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ tomli==2.0.1
# pyproject-api
# tox
tox==4.13.0
# via -r requirements/ci.in
# via
# -c requirements/constraints.txt
# -r requirements/ci.in
virtualenv==20.25.1
# via tox
4 changes: 4 additions & 0 deletions requirements/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,7 @@

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

backports.zoneinfo==0.2.1; python_version<'3.9'

tox==4.13.0
4 changes: 3 additions & 1 deletion requirements/dev.in
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,6 @@ edx-i18n-tools # For i18n_tool dummy
pip-tools # Requirements file management
tox # virtualenv management for tests
twine # Utility for PyPI package uploads
wheel # For generation of wheels for PyPI
wheel # For generation of wheels for PyPI
backports.zoneinfo; python_version<'3.9' # Needed for Python 3.12 compatibility
setuptools
35 changes: 17 additions & 18 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,18 @@ astroid==3.1.0
# pylint-celery
attrs==23.2.0
# via -r requirements/base.in
backports-zoneinfo==0.2.1
# via django
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/dev.in
# -r requirements/quality.in
# django
build==1.1.1
# via pip-tools
cachetools==5.3.3
# via tox
certifi==2024.2.2
# via requests
cffi==1.16.0
# via cryptography
chardet==5.2.0
# via
# diff-cover
Expand All @@ -40,15 +42,13 @@ code-annotations==1.6.0
# via edx-lint
colorama==0.4.6
# via tox
cryptography==42.0.5
# via secretstorage
diff-cover==8.0.3
# via -r requirements/dev.in
dill==0.3.8
# via pylint
distlib==0.3.8
# via virtualenv
django==4.2.10
django==4.2.11
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.in
Expand Down Expand Up @@ -80,10 +80,6 @@ isort==5.13.2
# pylint
jaraco-classes==3.3.1
# via keyring
jeepney==0.8.0
# via
# keyring
# secretstorage
jinja2==3.1.3
# via
# code-annotations
Expand Down Expand Up @@ -130,8 +126,6 @@ polib==1.2.0
# via edx-i18n-tools
pycodestyle==2.11.1
# via -r requirements/quality.in
pycparser==2.21
# via cffi
pydocstyle==6.3.0
# via -r requirements/quality.in
pygments==2.17.2
Expand Down Expand Up @@ -182,8 +176,6 @@ rich==13.7.1
# via twine
sailthru-client==2.2.3
# via -r requirements/base.in
secretstorage==3.3.3
# via keyring
simplejson==3.19.2
# via sailthru-client
six==1.16.0
Expand Down Expand Up @@ -212,7 +204,9 @@ tomli==2.0.1
tomlkit==0.12.4
# via pylint
tox==4.13.0
# via -r requirements/dev.in
# via
# -c requirements/constraints.txt
# -r requirements/dev.in
twine==5.0.0
# via -r requirements/dev.in
typing-extensions==4.10.0
Expand All @@ -237,5 +231,10 @@ zipp==3.17.0
# importlib-resources

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
pip==24.0
# via pip-tools
setuptools==69.1.1
# via
# -r requirements/base.in
# -r requirements/dev.in
# pip-tools
3 changes: 3 additions & 0 deletions requirements/doc.in
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@ sphinx-book-theme # Common theme for all Open edX projects
readme_renderer # Validates README.rst for usage on PyPI
Sphinx # Documentation builder
twine
backports.zoneinfo; python_version<'3.9' # Needed for Python 3.12 compatibility
setuptools
wheel
29 changes: 14 additions & 15 deletions requirements/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,18 @@ babel==2.14.0
# via
# pydata-sphinx-theme
# sphinx
backports-zoneinfo==0.2.1
# via django
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/doc.in
# django
beautifulsoup4==4.12.3
# via pydata-sphinx-theme
certifi==2024.2.2
# via requests
cffi==1.16.0
# via cryptography
charset-normalizer==3.3.2
# via requests
cryptography==42.0.5
# via secretstorage
django==4.2.10
django==4.2.11
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.in
Expand All @@ -54,10 +53,6 @@ importlib-resources==6.1.2
# via keyring
jaraco-classes==3.3.1
# via keyring
jeepney==0.8.0
# via
# keyring
# secretstorage
jinja2==3.1.3
# via sphinx
keyring==24.3.1
Expand All @@ -80,8 +75,6 @@ pbr==6.0.0
# via stevedore
pkginfo==1.10.0
# via twine
pycparser==2.21
# via cffi
pydata-sphinx-theme==0.14.4
# via sphinx-book-theme
pygments==2.17.2
Expand Down Expand Up @@ -116,8 +109,6 @@ rich==13.7.1
# via twine
sailthru-client==2.2.3
# via -r requirements/base.in
secretstorage==3.3.3
# via keyring
simplejson==3.19.2
# via sailthru-client
six==1.16.0
Expand Down Expand Up @@ -166,7 +157,15 @@ urllib3==2.2.1
# via
# requests
# twine
wheel==0.42.0
# via -r requirements/doc.in
zipp==3.17.0
# via
# importlib-metadata
# importlib-resources

# The following packages are considered to be unsafe in a requirements file:
setuptools==69.1.1
# via
# -r requirements/base.in
# -r requirements/doc.in
6 changes: 4 additions & 2 deletions requirements/pip-tools.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,7 @@ zipp==3.17.0
# via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
pip==24.0
# via pip-tools
setuptools==69.1.1
# via pip-tools
1 change: 1 addition & 0 deletions requirements/quality.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@ edx-lint # edX pylint rules and plugins
isort # to standardize order of imports
pycodestyle # PEP 8 compliance validation
pydocstyle # PEP 257 compliance validation
backports.zoneinfo; python_version<'3.9' # Needed for Python 3.12 compatibility
4 changes: 4 additions & 0 deletions requirements/quality.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ astroid==3.1.0
# via
# pylint
# pylint-celery
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/quality.in
click==8.1.7
# via
# click-log
Expand Down
1 change: 1 addition & 0 deletions requirements/test.in
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,4 @@ mock
pudb # For easier test debugging
hypothesis[pytz] # For property-based testing
hypothesis-pytest
backports.zoneinfo; python_version<'3.9' # Needed for Python 3.12 compatibility
15 changes: 11 additions & 4 deletions requirements/test.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,11 @@ attrs==23.2.0
# via
# -r requirements/base.in
# hypothesis
backports-zoneinfo==0.2.1
# via django
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/test.in
# django
certifi==2024.2.2
# via requests
charset-normalizer==3.3.2
Expand Down Expand Up @@ -57,7 +60,7 @@ pudb==2024.1
# via -r requirements/test.in
pygments==2.17.2
# via pudb
pytest==8.1.0
pytest==8.0.2
# via
# hypothesis-pytest
# pytest-cov
Expand Down Expand Up @@ -99,7 +102,7 @@ typing-extensions==4.10.0
# urwid
urllib3==2.2.1
# via requests
urwid==2.6.7
urwid==2.6.8
# via
# pudb
# urwid-readline
Expand All @@ -109,3 +112,7 @@ wcwidth==0.2.13
# via urwid
zipp==3.17.0
# via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
setuptools==69.1.1
# via -r requirements/base.in
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -120,13 +120,13 @@ def is_requirement(line):
classifiers=[
'Development Status :: 3 - Alpha',
'Framework :: Django',
'Framework :: Django :: 3.2',
'Framework :: Django :: 4.2',
'Intended Audience :: Developers',
'License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)',
'Natural Language :: English',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.12',
],
entry_points={
'openedx.ace.channel': [
Expand Down
Loading

0 comments on commit 95c0300

Please sign in to comment.