diff --git a/.github/contributors.json b/.github/contributors.json
index 013d2c99d..2505fd26c 100644
--- a/.github/contributors.json
+++ b/.github/contributors.json
@@ -1478,5 +1478,15 @@
"name": "Christian Jauvin",
"github_login": "cjauvin",
"twitter_username": ""
+ },
+ {
+ "name": "Plurific",
+ "github_login": "paulschwenn",
+ "twitter_username": ""
+ },
+ {
+ "name": "GitBib",
+ "github_login": "GitBib",
+ "twitter_username": ""
}
]
\ No newline at end of file
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a9916df9f..03532c9cf 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -110,6 +110,6 @@ jobs:
run: pip install -r requirements.txt
- uses: actions/setup-node@v4
with:
- node-version: "18"
+ node-version: "20"
- name: Bare Metal ${{ matrix.script.name }}
run: sh tests/test_bare.sh ${{ matrix.script.args }}
diff --git a/.github/workflows/issue-manager.yml b/.github/workflows/issue-manager.yml
index a6e074137..3eb53e51d 100644
--- a/.github/workflows/issue-manager.yml
+++ b/.github/workflows/issue-manager.yml
@@ -29,12 +29,15 @@ jobs:
config: >
{
"answered": {
+ "delay": 864000,
"message": "Assuming the question was answered, this will be automatically closed now."
},
"solved": {
+ "delay": 864000,
"message": "Assuming the original issue was solved, it will be automatically closed now."
},
"waiting": {
+ "delay": 864000,
"message": "Automatically closing after waiting for additional info. To re-open, please provide the additional information requested."
}
}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 134149f39..0ecdfa699 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,62 @@ All enhancements and patches to Cookiecutter Django will be documented in this f
+## 2023.12.04
+
+
+### Updated
+
+- Update django to 4.2.8 ([#4713](https://github.com/cookiecutter/cookiecutter-django/pull/4713))
+
+- Bump node from 18 to 20 ([#4283](https://github.com/cookiecutter/cookiecutter-django/pull/4283))
+
+- Update psycopg to 3.1.14 ([#4711](https://github.com/cookiecutter/cookiecutter-django/pull/4711))
+
+## 2023.12.02
+
+
+### Updated
+
+- Update mailpit to latest ([#4710](https://github.com/cookiecutter/cookiecutter-django/pull/4710))
+
+## 2023.11.30
+
+
+### Fixed
+
+- Removed tmp mount in devcontainer.json. Fix #4686 ([#4708](https://github.com/cookiecutter/cookiecutter-django/pull/4708))
+
+### Updated
+
+- Bump traefik from 2.10.5 to 2.10.6 ([#4706](https://github.com/cookiecutter/cookiecutter-django/pull/4706))
+
+## 2023.11.29
+
+
+### Updated
+
+- Update sentry-sdk to 1.38.0 ([#4705](https://github.com/cookiecutter/cookiecutter-django/pull/4705))
+
+## 2023.11.28
+
+
+### Fixed
+
+- Excludes devcontainer.json from the pre-commit ([#4702](https://github.com/cookiecutter/cookiecutter-django/pull/4702))
+
+### Updated
+
+- Update sphinx-rtd-theme to 2.0.0 ([#4700](https://github.com/cookiecutter/cookiecutter-django/pull/4700))
+
+## 2023.11.24
+
+
+### Updated
+
+- Update sentry-sdk to 1.37.1 ([#4696](https://github.com/cookiecutter/cookiecutter-django/pull/4696))
+
+- Update sentry-sdk to 1.37.0 ([#4695](https://github.com/cookiecutter/cookiecutter-django/pull/4695))
+
## 2023.11.22
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 98d8b32f9..4e341212a 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -873,6 +873,13 @@ Listed in alphabetical order.
|
+
+ GitBib |
+
+ GitBib
+ |
+ |
+
Glenn Wiskur |
@@ -1650,6 +1657,13 @@ Listed in alphabetical order.
|
|
+
+ Plurific |
+
+ paulschwenn
+ |
+ |
+
Raony GuimarĂ£es CorrĂªa |
diff --git a/docs/requirements.txt b/docs/requirements.txt
index 38a8385fd..d002affa7 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -1,3 +1,3 @@
sphinx==7.2.6
-sphinx-rtd-theme==1.3.0
+sphinx-rtd-theme==2.0.0
myst-parser==2.0.0
diff --git a/requirements.txt b/requirements.txt
index 6c07ccc31..661f332df 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -13,7 +13,7 @@ pre-commit==3.5.0
# Testing
# ------------------------------------------------------------------------------
-tox==4.11.3
+tox==4.11.4
pytest==7.4.3
pytest-xdist==3.5.0
pytest-cookies==0.7.0
diff --git a/setup.py b/setup.py
index 99dc04b2a..334cee13f 100644
--- a/setup.py
+++ b/setup.py
@@ -5,7 +5,7 @@ except ImportError:
from distutils.core import setup
# We use calendar versioning
-version = "2023.11.22"
+version = "2023.12.04"
with open("README.md") as readme_file:
long_description = readme_file.read()
diff --git a/{{cookiecutter.project_slug}}/.devcontainer/devcontainer.json b/{{cookiecutter.project_slug}}/.devcontainer/devcontainer.json
index 393408582..c4158dc10 100644
--- a/{{cookiecutter.project_slug}}/.devcontainer/devcontainer.json
+++ b/{{cookiecutter.project_slug}}/.devcontainer/devcontainer.json
@@ -11,11 +11,6 @@
"target": "/home/dev-user/.bash_history",
"type": "bind"
},
- {
- "source": "/tmp",
- "target": "/tmp",
- "type": "bind"
- },
{
"source": "~/.ssh",
"target": "/home/dev-user/.ssh",
diff --git a/{{cookiecutter.project_slug}}/.pre-commit-config.yaml b/{{cookiecutter.project_slug}}/.pre-commit-config.yaml
index 3601ebce4..76d4f8b0f 100644
--- a/{{cookiecutter.project_slug}}/.pre-commit-config.yaml
+++ b/{{cookiecutter.project_slug}}/.pre-commit-config.yaml
@@ -1,4 +1,4 @@
-exclude: '^docs/|/migrations/'
+exclude: '^docs/|/migrations/|devcontainer.json'
default_stages: [commit]
repos:
diff --git a/{{cookiecutter.project_slug}}/compose/local/node/Dockerfile b/{{cookiecutter.project_slug}}/compose/local/node/Dockerfile
index 707ed0c9d..052f41b8d 100644
--- a/{{cookiecutter.project_slug}}/compose/local/node/Dockerfile
+++ b/{{cookiecutter.project_slug}}/compose/local/node/Dockerfile
@@ -1,4 +1,4 @@
-FROM node:18-bullseye-slim
+FROM node:20-bullseye-slim
WORKDIR /app
diff --git a/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile
index 6ddebbffe..3daac1b1f 100644
--- a/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile
+++ b/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile
@@ -1,5 +1,5 @@
{% if cookiecutter.frontend_pipeline in ['Gulp', 'Webpack'] -%}
-FROM node:18-bullseye-slim as client-builder
+FROM node:20-bullseye-slim as client-builder
ARG APP_HOME=/app
WORKDIR ${APP_HOME}
diff --git a/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile
index b85b02aa0..b47b3f1e9 100644
--- a/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile
+++ b/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile
@@ -1,4 +1,4 @@
-FROM traefik:2.10.5
+FROM traefik:2.10.6
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}}/local.yml b/{{cookiecutter.project_slug}}/local.yml
index 692d87499..6609f8053 100644
--- a/{{cookiecutter.project_slug}}/local.yml
+++ b/{{cookiecutter.project_slug}}/local.yml
@@ -58,7 +58,7 @@ services:
{%- if cookiecutter.use_mailpit == 'y' %}
mailpit:
- image: axllent/mailpit:v1.8
+ image: axllent/mailpit:latest
container_name: {{ cookiecutter.project_slug }}_local_mailpit
ports:
- "8025:8025"
diff --git a/{{cookiecutter.project_slug}}/package.json b/{{cookiecutter.project_slug}}/package.json
index 99b984da6..6b8371edf 100644
--- a/{{cookiecutter.project_slug}}/package.json
+++ b/{{cookiecutter.project_slug}}/package.json
@@ -35,7 +35,7 @@
"webpack-merge": "^5.8.0"
},
"engines": {
- "node": "18"
+ "node": "20"
},
"browserslist": [
"last 2 versions"
diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt
index 7fbf80132..f04f26c61 100644
--- a/{{cookiecutter.project_slug}}/requirements/base.txt
+++ b/{{cookiecutter.project_slug}}/requirements/base.txt
@@ -28,7 +28,7 @@ uvicorn[standard]==0.24.0.post1 # https://github.com/encode/uvicorn
# Django
# ------------------------------------------------------------------------------
-django==4.2.7 # pyup: < 5.0 # https://www.djangoproject.com/
+django==4.2.8 # pyup: < 5.0 # https://www.djangoproject.com/
django-environ==0.11.2 # https://github.com/joke2k/django-environ
django-model-utils==4.3.1 # https://github.com/jazzband/django-model-utils
django-allauth==0.58.2 # https://github.com/pennersr/django-allauth
diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt
index 7d80c621f..81656c28a 100644
--- a/{{cookiecutter.project_slug}}/requirements/local.txt
+++ b/{{cookiecutter.project_slug}}/requirements/local.txt
@@ -3,9 +3,9 @@
Werkzeug[watchdog]==3.0.1 # https://github.com/pallets/werkzeug
ipdb==0.13.13 # https://github.com/gotcha/ipdb
{%- if cookiecutter.use_docker == 'y' %}
-psycopg[c]==3.1.13 # https://github.com/psycopg/psycopg
+psycopg[c]==3.1.14 # https://github.com/psycopg/psycopg
{%- else %}
-psycopg[binary]==3.1.13 # https://github.com/psycopg/psycopg
+psycopg[binary]==3.1.14 # https://github.com/psycopg/psycopg
{%- endif %}
{%- if cookiecutter.use_async == 'y' or cookiecutter.use_celery == 'y' %}
watchfiles==0.21.0 # https://github.com/samuelcolvin/watchfiles
@@ -14,7 +14,7 @@ watchfiles==0.21.0 # https://github.com/samuelcolvin/watchfiles
# Testing
# ------------------------------------------------------------------------------
mypy==1.7.1 # https://github.com/python/mypy
-django-stubs[compatible-mypy]==4.2.6 # https://github.com/typeddjango/django-stubs
+django-stubs[compatible-mypy]==4.2.7 # https://github.com/typeddjango/django-stubs
pytest==7.4.3 # https://github.com/pytest-dev/pytest
pytest-sugar==0.9.7 # https://github.com/Frozenball/pytest-sugar
{%- if cookiecutter.use_drf == "y" %}
diff --git a/{{cookiecutter.project_slug}}/requirements/production.txt b/{{cookiecutter.project_slug}}/requirements/production.txt
index 99e301352..4a88fef69 100644
--- a/{{cookiecutter.project_slug}}/requirements/production.txt
+++ b/{{cookiecutter.project_slug}}/requirements/production.txt
@@ -3,12 +3,12 @@
-r base.txt
gunicorn==21.2.0 # https://github.com/benoitc/gunicorn
-psycopg[c]==3.1.13 # https://github.com/psycopg/psycopg
+psycopg[c]==3.1.14 # https://github.com/psycopg/psycopg
{%- if cookiecutter.use_whitenoise == 'n' %}
Collectfast==2.2.0 # https://github.com/antonagestam/collectfast
{%- endif %}
{%- if cookiecutter.use_sentry == "y" %}
-sentry-sdk==1.36.0 # https://github.com/getsentry/sentry-python
+sentry-sdk==1.38.0 # https://github.com/getsentry/sentry-python
{%- endif %}
{%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %}
hiredis==2.2.3 # https://github.com/redis/hiredis-py
|