diff --git a/CHANGELOG.md b/CHANGELOG.md index bb2cb8eb4..f9a6616aa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,26 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2024.11.14 + + +### Updated + +- Bump amazon/aws-cli from 2.20.0 to 2.21.0 ([#5528](https://github.com/cookiecutter/cookiecutter-django/pull/5528)) + +## 2024.11.13 + + +### Updated + +- Update werkzeug to 3.1.3 ([#5524](https://github.com/cookiecutter/cookiecutter-django/pull/5524)) + +- Update ruff to 0.7.3 ([#5521](https://github.com/cookiecutter/cookiecutter-django/pull/5521)) + +- Bump amazon/aws-cli from 2.19.0 to 2.20.0 ([#5527](https://github.com/cookiecutter/cookiecutter-django/pull/5527)) + +- Update django-allauth to 65.2.0 ([#5523](https://github.com/cookiecutter/cookiecutter-django/pull/5523)) + ## 2024.11.08 diff --git a/pyproject.toml b/pyproject.toml index 9f73f3741..6e28aff8c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "cookiecutter-django" -version = "2024.11.08" +version = "2024.11.14" 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 f742b7ae5..2d84c6071 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.7.2 + rev: v0.7.3 hooks: # Linter - id: ruff diff --git a/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile index 5a6be94da..6d8e38e24 100644 --- a/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/amazon/aws-cli:2.19.0 +FROM docker.io/amazon/aws-cli:2.21.0 # Clear entrypoint from the base image, otherwise it's always calling the aws CLI ENTRYPOINT [] diff --git a/{{cookiecutter.project_slug}}/config/settings/production.py b/{{cookiecutter.project_slug}}/config/settings/production.py index ae6505287..b26ccd36c 100644 --- a/{{cookiecutter.project_slug}}/config/settings/production.py +++ b/{{cookiecutter.project_slug}}/config/settings/production.py @@ -1,26 +1,28 @@ # ruff: noqa: E501 {% if cookiecutter.use_sentry == 'y' -%} import logging +import ssl import sentry_sdk - {%- if cookiecutter.use_celery == 'y' %} from sentry_sdk.integrations.celery import CeleryIntegration - {%- endif %} from sentry_sdk.integrations.django import DjangoIntegration from sentry_sdk.integrations.logging import LoggingIntegration from sentry_sdk.integrations.redis import RedisIntegration +{% else %} +import ssl + {% endif -%} -from .base import * # noqa: F403 from .base import DATABASES +from .base import * # noqa: F403 from .base import INSTALLED_APPS from .base import REDIS_URL +from .base import env {%- if cookiecutter.use_drf == "y" %} from .base import SPECTACULAR_SETTINGS {%- endif %} -from .base import env # GENERAL # ------------------------------------------------------------------------------ @@ -48,9 +50,16 @@ CACHES = { }, } + +CELERY_REDIS_BACKEND_USE_SSL = {"ssl_cert_reqs": ssl.CERT_NONE} +CELERY_BROKER_USE_SSL = {"ssl_cert_reqs": ssl.CERT_NONE} REDIS_SSL = env.bool("REDIS_SSL", default=False) +CELERY_BROKER_CONNECTION_RETRY_ON_STARTUP = True + if REDIS_SSL: - CACHES["default"]["OPTIONS"]["CONNECTION_POOL_CLASS"] = "redis.connection.SSLConnection" + CACHES["default"]["OPTIONS"]["CONNECTION_POOL_CLASS"] = ( + "redis.connection.SSLConnection" + ) CACHES["default"]["OPTIONS"]["SSL_CERT_REQS"] = None # SECURITY diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 9a20692df..5844ae94b 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -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]==65.1.0 # https://github.com/pennersr/django-allauth +django-allauth[mfa]==65.2.0 # https://github.com/pennersr/django-allauth django-crispy-forms==2.3 # https://github.com/django-crispy-forms/django-crispy-forms crispy-bootstrap5==2024.10 # 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 326d09d56..29b1e940b 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -1,6 +1,6 @@ -r production.txt -Werkzeug[watchdog]==3.0.6 # https://github.com/pallets/werkzeug +Werkzeug[watchdog]==3.1.3 # https://github.com/pallets/werkzeug ipdb==0.13.13 # https://github.com/gotcha/ipdb {%- if cookiecutter.use_docker == 'y' %} psycopg[c]==3.2.3 # https://github.com/psycopg/psycopg @@ -28,8 +28,8 @@ sphinx-autobuild==2024.10.3 # https://github.com/GaretJax/sphinx-autobuild # Code quality # ------------------------------------------------------------------------------ -ruff==0.7.2 # https://github.com/astral-sh/ruff -coverage==7.6.4 # https://github.com/nedbat/coveragepy +ruff==0.7.3 # https://github.com/astral-sh/ruff +coverage==7.6.5 # https://github.com/nedbat/coveragepy djlint==1.36.1 # https://github.com/Riverside-Healthcare/djLint pre-commit==4.0.1 # https://github.com/pre-commit/pre-commit