diff --git a/.github/contributors.json b/.github/contributors.json index 4c1ae84862..a04f8c9df1 100644 --- a/.github/contributors.json +++ b/.github/contributors.json @@ -1643,5 +1643,10 @@ "name": "Alex Kanavos", "github_login": "alexkanavos", "twitter_username": "" + }, + { + "name": "LJFP", + "github_login": "ljfp", + "twitter_username": "" } ] \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c73612a0a..d7006c6907 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,87 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2024.10.01 + + +### Updated + +- Update sentry-sdk to 2.15.0 ([#5413](https://github.com/cookiecutter/cookiecutter-django/pull/5413)) + +## 2024.09.29 + + +### Updated + +- Update psycopg to 3.2.3 ([#5411](https://github.com/cookiecutter/cookiecutter-django/pull/5411)) + +## 2024.09.28 + + +### Updated + +- Update uvicorn to 0.31.0 ([#5408](https://github.com/cookiecutter/cookiecutter-django/pull/5408)) + +## 2024.09.27 + + +### Updated + +- Update redis to 5.1.0 ([#5406](https://github.com/cookiecutter/cookiecutter-django/pull/5406)) + +- Update django-allauth to 65.0.2 ([#5405](https://github.com/cookiecutter/cookiecutter-django/pull/5405)) + +## 2024.09.26 + + +### Updated + +- Update ruff to 0.6.8 ([#5402](https://github.com/cookiecutter/cookiecutter-django/pull/5402)) + +## 2024.09.24 + + +### Updated + +- Update django-stubs to 5.1.0 ([#5400](https://github.com/cookiecutter/cookiecutter-django/pull/5400)) + +## 2024.09.23 + + +### Changed + +- Fix Makefile and make.bat files used for automatic generation of documentation. ([#5347](https://github.com/cookiecutter/cookiecutter-django/pull/5347)) + +### Updated + +- Update django-allauth to 65.0.1 ([#5399](https://github.com/cookiecutter/cookiecutter-django/pull/5399)) + +- Auto-update pre-commit hooks ([#5392](https://github.com/cookiecutter/cookiecutter-django/pull/5392)) + +- Update django-allauth to 65.0.0 ([#5393](https://github.com/cookiecutter/cookiecutter-django/pull/5393)) + +- Update ruff to 0.6.7 ([#5394](https://github.com/cookiecutter/cookiecutter-django/pull/5394)) + +## 2024.09.21 + + +### Updated + +- Auto-update pre-commit hooks ([#5391](https://github.com/cookiecutter/cookiecutter-django/pull/5391)) + +## 2024.09.20 + + +### Updated + +- Update sphinx-autobuild to 2024.9.19 ([#5386](https://github.com/cookiecutter/cookiecutter-django/pull/5386)) + +- Bump traefik from 3.1.3 to 3.1.4 in /{{cookiecutter.project_slug}}/compose/production/traefik ([#5389](https://github.com/cookiecutter/cookiecutter-django/pull/5389)) + +- Update ruff to 0.6.6 ([#5388](https://github.com/cookiecutter/cookiecutter-django/pull/5388)) + +- Update tox to 4.20.0 ([#5387](https://github.com/cookiecutter/cookiecutter-django/pull/5387)) + ## 2024.09.17 diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index bbf688aebc..14b2581d20 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -1419,6 +1419,13 @@ Listed in alphabetical order. + + LJFP + + ljfp + + + Luis Nell diff --git a/pyproject.toml b/pyproject.toml index 7e939c7ef3..cb147b8133 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "cookiecutter-django" -version = "2024.09.17" +version = "2024.10.01" description = "A Cookiecutter template for creating production-ready Django projects quickly." readme = "README.md" keywords = [ diff --git a/{{cookiecutter.project_slug}}/.pre-commit-config.yaml b/{{cookiecutter.project_slug}}/.pre-commit-config.yaml index e487ac49da..3d7cc6f092 100644 --- a/{{cookiecutter.project_slug}}/.pre-commit-config.yaml +++ b/{{cookiecutter.project_slug}}/.pre-commit-config.yaml @@ -35,7 +35,7 @@ repos: # Run the Ruff linter. - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.6.5 + rev: v0.6.8 hooks: # Linter - id: ruff diff --git a/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile b/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile index fbb62e2394..028e8f0f74 100644 --- a/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile @@ -1,5 +1,5 @@ # define an alias for the specific python version used in this file. -FROM docker.io/python:3.12.6-slim-bookworm AS python +FROM docker.io/python:3.12.7-slim-bookworm AS python # Python build stage FROM python AS python-build-stage diff --git a/{{cookiecutter.project_slug}}/compose/local/docs/Dockerfile b/{{cookiecutter.project_slug}}/compose/local/docs/Dockerfile index ed1b1dd2a2..40caf85117 100644 --- a/{{cookiecutter.project_slug}}/compose/local/docs/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/local/docs/Dockerfile @@ -1,5 +1,5 @@ # define an alias for the specific python version used in this file. -FROM docker.io/python:3.12.6-slim-bookworm AS python +FROM docker.io/python:3.12.7-slim-bookworm AS python # Python build stage diff --git a/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile index 86aae67d5b..35393dbf76 100644 --- a/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile @@ -25,7 +25,7 @@ RUN npm run build {%- endif %} # define an alias for the specific python version used in this file. -FROM docker.io/python:3.12.6-slim-bookworm AS python +FROM docker.io/python:3.12.7-slim-bookworm AS python # Python build stage FROM python AS python-build-stage diff --git a/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile index e6ca24eb96..0ef4ce6ca9 100644 --- a/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/traefik:3.1.3 +FROM docker.io/traefik:3.1.4 RUN mkdir -p /etc/traefik/acme \ && touch /etc/traefik/acme/acme.json \ && chmod 600 /etc/traefik/acme/acme.json diff --git a/{{cookiecutter.project_slug}}/docs/Makefile b/{{cookiecutter.project_slug}}/docs/Makefile index cf080e4767..9e0e4d6c06 100644 --- a/{{cookiecutter.project_slug}}/docs/Makefile +++ b/{{cookiecutter.project_slug}}/docs/Makefile @@ -13,11 +13,11 @@ APP = /app APP = ../{{cookiecutter.project_slug}} {% endif %} -.PHONY: help livehtml apidocs Makefile +.PHONY: html livehtml apidocs Makefile -# Put it first so that "make" without argument is like "make help". -help: - @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) -c . +# Put it first so that "make" without argument is like "make html". +html: + @$(SPHINXBUILD) -M html "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) -c . # Build, watch and serve docs with live reload livehtml: diff --git a/{{cookiecutter.project_slug}}/docs/make.bat b/{{cookiecutter.project_slug}}/docs/make.bat index 6cd1129f03..fbf6eb45f2 100644 --- a/{{cookiecutter.project_slug}}/docs/make.bat +++ b/{{cookiecutter.project_slug}}/docs/make.bat @@ -12,7 +12,7 @@ set SOURCEDIR=_source set BUILDDIR=_build set APP=..\{{cookiecutter.project_slug}} -if "%1" == "" goto help +if "%1" == "" goto html %SPHINXBUILD% >NUL 2>NUL if errorlevel 9009 ( @@ -39,8 +39,8 @@ GOTO :EOF sphinx-apidoc -o %SOURCEDIR%/api %APP% GOTO :EOF -:help -%SPHINXBUILD% -b help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% +:html +%SPHINXBUILD% -b html %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% :end popd diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 7ea91c806c..a84169f427 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -11,7 +11,7 @@ argon2-cffi==23.1.0 # https://github.com/hynek/argon2_cffi {%- if cookiecutter.use_whitenoise == 'y' %} whitenoise==6.7.0 # https://github.com/evansd/whitenoise {%- endif %} -redis==5.0.8 # https://github.com/redis/redis-py +redis==5.1.0 # https://github.com/redis/redis-py {%- if cookiecutter.use_docker == "y" or cookiecutter.windows == "n" %} hiredis==3.0.0 # https://github.com/redis/hiredis-py {%- endif %} @@ -23,7 +23,7 @@ flower==2.0.1 # https://github.com/mher/flower {%- endif %} {%- endif %} {%- if cookiecutter.use_async == 'y' %} -uvicorn[standard]==0.30.6 # https://github.com/encode/uvicorn +uvicorn[standard]==0.31.0 # https://github.com/encode/uvicorn uvicorn-worker==0.2.0 # https://github.com/Kludex/uvicorn-worker {%- endif %} @@ -32,7 +32,7 @@ uvicorn-worker==0.2.0 # https://github.com/Kludex/uvicorn-worker django==5.0.9 # pyup: < 5.1 # https://www.djangoproject.com/ django-environ==0.11.2 # https://github.com/joke2k/django-environ django-model-utils==5.0.0 # https://github.com/jazzband/django-model-utils -django-allauth[mfa]==64.2.1 # https://github.com/pennersr/django-allauth +django-allauth[mfa]==65.0.2 # https://github.com/pennersr/django-allauth django-crispy-forms==2.3 # https://github.com/django-crispy-forms/django-crispy-forms crispy-bootstrap5==2024.2 # https://github.com/django-crispy-forms/crispy-bootstrap5 {%- if cookiecutter.frontend_pipeline == 'Django Compressor' %} diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 8698553557..1d635b37dc 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -4,9 +4,9 @@ watchdog==4.0.2 # https://github.com/gorakhargosh/watchdog Werkzeug[watchdog]==3.0.4 # https://github.com/pallets/werkzeug ipdb==0.13.13 # https://github.com/gotcha/ipdb {%- if cookiecutter.use_docker == 'y' %} -psycopg[c]==3.2.2 # https://github.com/psycopg/psycopg +psycopg[c]==3.2.3 # https://github.com/psycopg/psycopg {%- else %} -psycopg[binary]==3.2.2 # https://github.com/psycopg/psycopg +psycopg[binary]==3.2.3 # https://github.com/psycopg/psycopg {%- endif %} {%- if cookiecutter.use_async == 'y' or cookiecutter.use_celery == 'y' %} watchfiles==0.24.0 # https://github.com/samuelcolvin/watchfiles @@ -15,7 +15,7 @@ watchfiles==0.24.0 # https://github.com/samuelcolvin/watchfiles # Testing # ------------------------------------------------------------------------------ mypy==1.11.2 # https://github.com/python/mypy -django-stubs[compatible-mypy]==5.0.4 # https://github.com/typeddjango/django-stubs +django-stubs[compatible-mypy]==5.1.0 # https://github.com/typeddjango/django-stubs pytest==8.3.3 # https://github.com/pytest-dev/pytest pytest-sugar==1.0.0 # https://github.com/Frozenball/pytest-sugar {%- if cookiecutter.use_drf == "y" %} @@ -25,11 +25,11 @@ djangorestframework-stubs==3.15.1 # https://github.com/typeddjango/djangorestfr # Documentation # ------------------------------------------------------------------------------ sphinx==7.4.7 # https://github.com/sphinx-doc/sphinx -sphinx-autobuild==2024.9.17 # https://github.com/GaretJax/sphinx-autobuild +sphinx-autobuild==2024.9.19 # https://github.com/GaretJax/sphinx-autobuild # Code quality # ------------------------------------------------------------------------------ -ruff==0.6.5 # https://github.com/astral-sh/ruff +ruff==0.6.8 # https://github.com/astral-sh/ruff coverage==7.6.1 # https://github.com/nedbat/coveragepy djlint==1.35.2 # https://github.com/Riverside-Healthcare/djLint pre-commit==3.8.0 # https://github.com/pre-commit/pre-commit diff --git a/{{cookiecutter.project_slug}}/requirements/production.txt b/{{cookiecutter.project_slug}}/requirements/production.txt index 8678d3121d..424704337d 100644 --- a/{{cookiecutter.project_slug}}/requirements/production.txt +++ b/{{cookiecutter.project_slug}}/requirements/production.txt @@ -3,12 +3,12 @@ -r base.txt gunicorn==23.0.0 # https://github.com/benoitc/gunicorn -psycopg[c]==3.2.2 # https://github.com/psycopg/psycopg +psycopg[c]==3.2.3 # https://github.com/psycopg/psycopg {%- if cookiecutter.use_whitenoise == 'n' %} Collectfasta==3.2.0 # https://github.com/jasongi/collectfasta {%- endif %} {%- if cookiecutter.use_sentry == "y" %} -sentry-sdk==2.14.0 # https://github.com/getsentry/sentry-python +sentry-sdk==2.15.0 # https://github.com/getsentry/sentry-python {%- endif %} {%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %} hiredis==3.0.0 # https://github.com/redis/hiredis-py diff --git a/{{cookiecutter.project_slug}}/runtime.txt b/{{cookiecutter.project_slug}}/runtime.txt index 32bcba665c..32905d6e0f 100644 --- a/{{cookiecutter.project_slug}}/runtime.txt +++ b/{{cookiecutter.project_slug}}/runtime.txt @@ -1 +1 @@ -python-3.12.6 +python-3.12.7