diff --git a/README.md b/README.md index c1c72045e..afe6b71fc 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ ## Requirements -- Python 3.7 to 3.11 -- Django 3.2, 4.1, or 4.2 +- Python 3.8 to 3.12 +- Django 3.2, 4.2, or 5.0 Additionally, if you are planning on developing, and/or building the JS bundles yourself: @@ -27,7 +27,7 @@ Or after downloading or checking out locally: For further reading on what else your server needs to look like: -- [Deploying Django](https://docs.djangoproject.com/en/4.2/howto/deployment/) +- [Deploying Django](https://docs.djangoproject.com/en/dev/howto/deployment/) - [Deploying Django Channels](https://channels.readthedocs.io/en/latest/deploying.html) - [Configuring Post Office](https://github.com/ui/django-post_office#management-commands) (needed to send emails) - [Using Celery with Django](https://docs.celeryproject.org/en/stable/django/first-steps-with-django.html) (optional) @@ -101,9 +101,9 @@ Allows you to place a logo asset in the navbar for public facing pages. ## Development Quick Start -Start up a new Django Project like the [Django Tutorial](https://docs.djangoproject.com/en/2.2/intro/tutorial01/). +Start up a new Django Project like the [Django Tutorial](https://docs.djangoproject.com/en/dev/intro/tutorial01/). -- `pip install django~=3.2` +- `pip install django` - `django-admin startproject tracker_development` - `cd tracker_development` @@ -212,4 +212,5 @@ This project uses [`pre-commit`](https://pre-commit.com/) to run linters and oth If you followed the instructions above, `pre-commit` should run the appropriate hooks every time you commit or push. _Note:_ You _can_ bypass these checks by adding `--no-verify` when you commit or push, though this is highly -discouraged in most cases. In the future, CI tests may fail if any of these checks are not satisfied. +discouraged in most cases. CI runs the same checks as the hooks do, and will cause pipeline to fail if you bypass +a genuine failure. diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 5644b44a0..6ded2c56f 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -12,17 +12,17 @@ jobs: strategy: matrix: Latest: - PYTHON_VERSION: '3.11' - DJANGO_VERSION: '4.2' + PYTHON_VERSION: '3.12' + DJANGO_VERSION: '5.0' Oldest: PYTHON_VERSION: '3.8' DJANGO_VERSION: '3.2' Django32: - PYTHON_VERSION: '3.11' + PYTHON_VERSION: '3.10' DJANGO_VERSION: '3.2' - Django41: - PYTHON_VERSION: '3.11' - DJANGO_VERSION: '4.1' + Django42: + PYTHON_VERSION: '3.12' + DJANGO_VERSION: '4.2' Python38: PYTHON_VERSION: '3.8' DJANGO_VERSION: '4.2' @@ -31,7 +31,10 @@ jobs: DJANGO_VERSION: '4.2' Python3A: PYTHON_VERSION: '3.10' - DJANGO_VERSION: '4.2' + DJANGO_VERSION: '5.0' + Python3B: + PYTHON_VERSION: '3.11' + DJANGO_VERSION: '5.0' steps: - task: UsePythonVersion@0 diff --git a/setup.py b/setup.py index c6bceed53..9eacec12c 100644 --- a/setup.py +++ b/setup.py @@ -32,7 +32,7 @@ def get_package_name(name): setup( name=get_package_name('django-donation-tracker'), - version='3.1', + version='3.2', author='Games Done Quick', author_email='tracker@gamesdonequick.com', packages=find_packages(include=['tracker', 'tracker.*']), @@ -48,10 +48,9 @@ def get_package_name(name): 'package': PackageCommand, }, install_requires=[ - 'backports.cached-property~=1.0.2;python_version<"3.8"', 'celery~=5.0', 'channels>=2.0', - 'Django>=3.2,!=4.0.*,<4.3', + 'Django>=3.2,!=4.0.*,!=4.1.*,<5.1', 'django-ajax-selects~=2.2', 'django-ical~=1.7', 'django-mptt~=0.10', @@ -63,7 +62,7 @@ def get_package_name(name): 'pytz>=2019.3', 'requests>=2.27.1,<2.32.0', ], - python_requires='>=3.7, <3.12', + python_requires='>=3.8, <3.13', classifiers=[ 'Development Status :: 5 - Production/Stable', 'Environment :: Web Environment', @@ -73,11 +72,11 @@ def get_package_name(name): 'Operating System :: OS Independent', 'Programming Language :: Python', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', 'Topic :: Internet :: WWW/HTTP', 'Topic :: Software Development :: Libraries :: Python Modules', ], diff --git a/tests/requirements.txt b/tests/requirements.txt index a27e5bdb8..c1aa08ab5 100644 --- a/tests/requirements.txt +++ b/tests/requirements.txt @@ -9,10 +9,7 @@ django-mptt==0.14.0 django-post-office==3.6.0 django-timezone-field==6.0.1 djangorestframework==3.14.0 -# can be removed when either 3.7 is not supported or once we upgrade Celery -importlib_metadata==4.13.0 ; python_version<"3.8" -pre-commit==3.5.0 ; python_version>="3.8" -pre-commit==2.21.0 ; python_version<"3.8" +pre-commit==3.5.0 python-dateutil==2.8.2 # lock these down until backports.zoneinfo is in use pytz==2022.2.1