From 95e73006044517714b83c094c269278d0ff40df6 Mon Sep 17 00:00:00 2001 From: Delphine LEMIRE Date: Fri, 17 Feb 2023 14:42:02 +0100 Subject: [PATCH 01/57] Update version of github actions on the template project (#4167) --- {{cookiecutter.project_slug}}/.github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/{{cookiecutter.project_slug}}/.github/workflows/ci.yml b/{{cookiecutter.project_slug}}/.github/workflows/ci.yml index 3c8ea8780..5a149820a 100644 --- a/{{cookiecutter.project_slug}}/.github/workflows/ci.yml +++ b/{{cookiecutter.project_slug}}/.github/workflows/ci.yml @@ -27,7 +27,7 @@ jobs: uses: actions/checkout@v3 - name: Set up Python - uses: actions/setup-python@v3 + uses: actions/setup-python@v4 with: python-version: "3.10" cache: pip @@ -36,7 +36,7 @@ jobs: # Consider using pre-commit.ci for open source project {%- endif %} - name: Run pre-commit - uses: pre-commit/action@v2.0.3 + uses: pre-commit/action@v3.0.0 # With no caching at all the entire ci process takes 4m 30s to complete! pytest: @@ -85,7 +85,7 @@ jobs: {%- else %} - name: Set up Python - uses: actions/setup-python@v3 + uses: actions/setup-python@v4 with: python-version: "3.10" cache: pip From 414122e52408c1dd11fb3d2690120bcb7d91b483 Mon Sep 17 00:00:00 2001 From: luzfcb Date: Fri, 17 Feb 2023 13:42:38 +0000 Subject: [PATCH 02/57] Update Contributors --- .github/contributors.json | 5 +++++ CONTRIBUTORS.md | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/.github/contributors.json b/.github/contributors.json index 7920e8caf..b97140005 100644 --- a/.github/contributors.json +++ b/.github/contributors.json @@ -1362,5 +1362,10 @@ "name": "duffn", "github_login": "duffn", "twitter_username": "" + }, + { + "name": "Delphine LEMIRE", + "github_login": "DelphineLemire", + "twitter_username": "" } ] \ No newline at end of file diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 85b1ae88f..0670ff448 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -642,6 +642,13 @@ Listed in alphabetical order. jangeador + + Delphine LEMIRE + + DelphineLemire + + + Demetris Stavrou From 4aa56cb31a1397ffcea855527d1c37d7c64cccca Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 18 Feb 2023 02:27:13 +0000 Subject: [PATCH 03/57] Release 2023.02.17 --- CHANGELOG.md | 5 +++++ setup.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b88bc869..23604fd77 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,11 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.02.17 + +### Changed +- Update version of github actions on the template project ([#4167](https://github.com/cookiecutter/cookiecutter-django/pull/4167)) + ## 2023.02.09 ### Changed diff --git a/setup.py b/setup.py index 858d20691..c7566ba70 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.02.09" +version = "2023.02.17" with open("README.rst") as readme_file: long_description = readme_file.read() From 2d9dceb0fb24146416989b7b8497c054a9676cfc Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:16:20 -0500 Subject: [PATCH 04/57] Update hiredis to 2.2.2 (#4156) * Update hiredis from 2.2.1 to 2.2.2 * Update hiredis from 2.2.1 to 2.2.2 --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- {{cookiecutter.project_slug}}/requirements/production.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 9bcdf31bf..bc9b553f9 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -14,7 +14,7 @@ whitenoise==6.3.0 # https://github.com/evansd/whitenoise {%- endif %} redis==4.5.1 # https://github.com/redis/redis-py {%- if cookiecutter.use_docker == "y" or cookiecutter.windows == "n" %} -hiredis==2.2.1 # https://github.com/redis/hiredis-py +hiredis==2.2.2 # https://github.com/redis/hiredis-py {%- endif %} {%- if cookiecutter.use_celery == "y" %} celery==5.2.7 # pyup: < 6.0 # https://github.com/celery/celery diff --git a/{{cookiecutter.project_slug}}/requirements/production.txt b/{{cookiecutter.project_slug}}/requirements/production.txt index 06917d8dd..7cee00d5d 100644 --- a/{{cookiecutter.project_slug}}/requirements/production.txt +++ b/{{cookiecutter.project_slug}}/requirements/production.txt @@ -11,7 +11,7 @@ Collectfast==2.2.0 # https://github.com/antonagestam/collectfast sentry-sdk==1.15.0 # https://github.com/getsentry/sentry-python {%- endif %} {%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %} -hiredis==2.2.1 # https://github.com/redis/hiredis-py +hiredis==2.2.2 # https://github.com/redis/hiredis-py {%- endif %} # Django From b46447c8db1068b2e9ea1a1538295af27dfe7036 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:16:56 -0500 Subject: [PATCH 05/57] Update sh to 2.0.2 (#4157) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 15c7c8c0a..2e165efa6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ cookiecutter==2.1.1 -sh==1.14.3; sys_platform != "win32" +sh==2.0.2; sys_platform != "win32" binaryornot==0.4.4 # Code quality From 1767190a1ac1b9e9eb0ae61480859528f903428e Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:17:46 -0500 Subject: [PATCH 06/57] Update django to 4.0.10 (#4159) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index bc9b553f9..d06bc8cb9 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -29,7 +29,7 @@ uvicorn[standard]==0.20.0 # https://github.com/encode/uvicorn # Django # ------------------------------------------------------------------------------ -django==4.0.9 # pyup: < 4.1 # https://www.djangoproject.com/ +django==4.0.10 # pyup: < 4.1 # https://www.djangoproject.com/ django-environ==0.9.0 # https://github.com/joke2k/django-environ django-model-utils==4.3.1 # https://github.com/jazzband/django-model-utils django-allauth==0.52.0 # https://github.com/pennersr/django-allauth From ab149684b148d8e08be1f61a616db53e7c2cf454 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:18:16 -0500 Subject: [PATCH 07/57] Update coverage to 7.2.0 (#4177) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 00c15d3cb..80ced4b64 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -30,7 +30,7 @@ sphinx-autobuild==2021.3.14 # https://github.com/GaretJax/sphinx-autobuild # ------------------------------------------------------------------------------ flake8==6.0.0 # https://github.com/PyCQA/flake8 flake8-isort==6.0.0 # https://github.com/gforcada/flake8-isort -coverage==7.1.0 # https://github.com/nedbat/coveragepy +coverage==7.2.0 # https://github.com/nedbat/coveragepy black==23.1.0 # https://github.com/psf/black pylint-django==2.5.3 # https://github.com/PyCQA/pylint-django {%- if cookiecutter.use_celery == 'y' %} From aa6d0bc2ad3968bed47bd17c79932dbf48763b33 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:18:38 -0500 Subject: [PATCH 08/57] Update werkzeug to 2.2.3 (#4160) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 80ced4b64..6918fab8b 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -1,6 +1,6 @@ -r base.txt -Werkzeug[watchdog]==2.2.2 # https://github.com/pallets/werkzeug +Werkzeug[watchdog]==2.2.3 # https://github.com/pallets/werkzeug ipdb==0.13.11 # https://github.com/gotcha/ipdb {%- if cookiecutter.use_docker == 'y' %} psycopg2==2.9.5 # https://github.com/psycopg/psycopg2 From a756fbe4bb1b6188667ff3ea2740a6a0e9760596 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:19:07 -0500 Subject: [PATCH 09/57] Update gitpython to 3.1.31 (#4165) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 2e165efa6..f07004c2a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -21,6 +21,6 @@ pyyaml==6.0 # Scripting # ------------------------------------------------------------------------------ PyGithub==1.57 -gitpython==3.1.30 +gitpython==3.1.31 jinja2==3.1.2 requests==2.28.2 From 4e649af5f0cc208655f75721d45d87ef03f5bb80 Mon Sep 17 00:00:00 2001 From: Delphine LEMIRE Date: Sat, 25 Feb 2023 12:31:07 +0100 Subject: [PATCH 10/57] Disable caching for linter job on GitHub actions (#4166) * FIX: Uptade Template ci.yml linter requirements * Disable unused cache for lint job --------- Co-authored-by: Bruno Alla --- {{cookiecutter.project_slug}}/.github/workflows/ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/.github/workflows/ci.yml b/{{cookiecutter.project_slug}}/.github/workflows/ci.yml index 5a149820a..89d83f257 100644 --- a/{{cookiecutter.project_slug}}/.github/workflows/ci.yml +++ b/{{cookiecutter.project_slug}}/.github/workflows/ci.yml @@ -30,7 +30,6 @@ jobs: uses: actions/setup-python@v4 with: python-version: "3.10" - cache: pip {%- if cookiecutter.open_source_license != 'Not open source' %} # Consider using pre-commit.ci for open source project From 2c84ec1c5573577a03590e9b8b2e25525f9704a0 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:44:39 -0500 Subject: [PATCH 11/57] Update tox to 4.4.6 (#4173) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index f07004c2a..f74ac007d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -12,7 +12,7 @@ pre-commit==3.0.4 # Testing # ------------------------------------------------------------------------------ -tox==4.4.5 +tox==4.4.6 pytest==7.2.1 pytest-cookies==0.6.1 pytest-instafail==0.4.2 From 8bd7667f19e335af7f59b68103c7b1c1bf357419 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:46:34 -0500 Subject: [PATCH 12/57] Update mypy to 1.0.1 (#4168) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 6918fab8b..86247343c 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -13,7 +13,7 @@ watchfiles==0.18.1 # https://github.com/samuelcolvin/watchfiles # Testing # ------------------------------------------------------------------------------ -mypy==0.991 # https://github.com/python/mypy +mypy==1.0.1 # https://github.com/python/mypy django-stubs==1.14.0 # https://github.com/typeddjango/django-stubs pytest==7.2.1 # https://github.com/pytest-dev/pytest pytest-sugar==0.9.6 # https://github.com/Frozenball/pytest-sugar From 64a66c332a4b642994335bc7127688142adafcf4 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:47:29 -0500 Subject: [PATCH 13/57] Update pre-commit to 3.1.0 (#4176) * Update pre-commit from 3.0.4 to 3.1.0 * Update pre-commit from 3.0.4 to 3.1.0 --- requirements.txt | 2 +- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index f74ac007d..fda102826 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,7 +8,7 @@ black==23.1.0 isort==5.12.0 flake8==6.0.0 flake8-isort==6.0.0 -pre-commit==3.0.4 +pre-commit==3.1.0 # Testing # ------------------------------------------------------------------------------ diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 86247343c..e1927d06e 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -36,7 +36,7 @@ pylint-django==2.5.3 # https://github.com/PyCQA/pylint-django {%- if cookiecutter.use_celery == 'y' %} pylint-celery==0.3 # https://github.com/PyCQA/pylint-celery {%- endif %} -pre-commit==3.0.4 # https://github.com/pre-commit/pre-commit +pre-commit==3.1.0 # https://github.com/pre-commit/pre-commit # Django # ------------------------------------------------------------------------------ From 7739f41f774616996b319465807d9c46a4d359f9 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:47:48 -0500 Subject: [PATCH 14/57] Update python-slugify to 8.0.1 (#4178) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index d06bc8cb9..42188dd39 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -1,5 +1,5 @@ pytz==2022.7.1 # https://github.com/stub42/pytz -python-slugify==8.0.0 # https://github.com/un33k/python-slugify +python-slugify==8.0.1 # https://github.com/un33k/python-slugify Pillow==9.4.0 # https://github.com/python-pillow/Pillow {%- if cookiecutter.frontend_pipeline == 'Django Compressor' %} {%- if cookiecutter.windows == 'y' and cookiecutter.use_docker == 'n' %} From bee85e445429bf4b301e4b77b65bb6cade3df270 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:48:00 -0500 Subject: [PATCH 15/57] Update django-cors-headers to 3.14.0 (#4181) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 42188dd39..75a97340b 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -42,7 +42,7 @@ django-redis==5.2.0 # https://github.com/jazzband/django-redis {%- if cookiecutter.use_drf == 'y' %} # Django REST Framework djangorestframework==3.14.0 # https://github.com/encode/django-rest-framework -django-cors-headers==3.13.0 # https://github.com/adamchainz/django-cors-headers +django-cors-headers==3.14.0 # https://github.com/adamchainz/django-cors-headers # DRF-spectacular for api documentation drf-spectacular==0.25.1 # https://github.com/tfranzel/drf-spectacular {%- endif %} From 972b927a2c85cbc3353121fe8df644e35eafbb1e Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:51:16 -0500 Subject: [PATCH 16/57] Update django-crispy-forms to 2.0 (#4158) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 75a97340b..7de2c4410 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -33,7 +33,7 @@ django==4.0.10 # pyup: < 4.1 # https://www.djangoproject.com/ django-environ==0.9.0 # https://github.com/joke2k/django-environ django-model-utils==4.3.1 # https://github.com/jazzband/django-model-utils django-allauth==0.52.0 # https://github.com/pennersr/django-allauth -django-crispy-forms==1.14.0 # https://github.com/django-crispy-forms/django-crispy-forms +django-crispy-forms==2.0 # https://github.com/django-crispy-forms/django-crispy-forms crispy-bootstrap5==0.7 # https://github.com/django-crispy-forms/crispy-bootstrap5 {%- if cookiecutter.frontend_pipeline == 'Django Compressor' %} django-compressor==4.3.1 # https://github.com/django-compressor/django-compressor From c2059693d8788efd89f5cad909f2d7815e047547 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:53:08 -0500 Subject: [PATCH 17/57] Update django-stubs to 1.15.0 (#4183) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index e1927d06e..6335b52b9 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -14,7 +14,7 @@ watchfiles==0.18.1 # https://github.com/samuelcolvin/watchfiles # Testing # ------------------------------------------------------------------------------ mypy==1.0.1 # https://github.com/python/mypy -django-stubs==1.14.0 # https://github.com/typeddjango/django-stubs +django-stubs==1.15.0 # https://github.com/typeddjango/django-stubs pytest==7.2.1 # https://github.com/pytest-dev/pytest pytest-sugar==0.9.6 # https://github.com/Frozenball/pytest-sugar {%- if cookiecutter.use_drf == "y" %} From 961ec7df6bf07f6ae0346adfdb90899f4845ef41 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:53:35 -0500 Subject: [PATCH 18/57] Update whitenoise to 6.4.0 (#4180) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 7de2c4410..ac6f876f8 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -10,7 +10,7 @@ rcssmin==1.1.1 # https://github.com/ndparker/rcssmin {%- endif %} argon2-cffi==21.3.0 # https://github.com/hynek/argon2_cffi {%- if cookiecutter.use_whitenoise == 'y' %} -whitenoise==6.3.0 # https://github.com/evansd/whitenoise +whitenoise==6.4.0 # https://github.com/evansd/whitenoise {%- endif %} redis==4.5.1 # https://github.com/redis/redis-py {%- if cookiecutter.use_docker == "y" or cookiecutter.windows == "n" %} From 6433fc7b2b32b5c864c7b363eed9a73488bcace5 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 06:53:59 -0500 Subject: [PATCH 19/57] Update pygithub to 1.58.0 (#4182) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index fda102826..564e70596 100644 --- a/requirements.txt +++ b/requirements.txt @@ -20,7 +20,7 @@ pyyaml==6.0 # Scripting # ------------------------------------------------------------------------------ -PyGithub==1.57 +PyGithub==1.58.0 gitpython==3.1.31 jinja2==3.1.2 requests==2.28.2 From ad1edba7110dcaef8adbde440b5424cdfa878ae9 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 25 Feb 2023 07:02:35 -0500 Subject: [PATCH 20/57] Update djangorestframework-stubs to 1.9.1 (#4184) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 6335b52b9..27fa30b36 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -18,7 +18,7 @@ django-stubs==1.15.0 # https://github.com/typeddjango/django-stubs pytest==7.2.1 # https://github.com/pytest-dev/pytest pytest-sugar==0.9.6 # https://github.com/Frozenball/pytest-sugar {%- if cookiecutter.use_drf == "y" %} -djangorestframework-stubs==1.8.0 # https://github.com/typeddjango/djangorestframework-stubs +djangorestframework-stubs==1.9.1 # https://github.com/typeddjango/djangorestframework-stubs {%- endif %} # Documentation From b74af5b1d1005fa7ee1bbf27761a32e82b86a496 Mon Sep 17 00:00:00 2001 From: Hoai-Thu Vuong Date: Sat, 25 Feb 2023 19:09:52 +0700 Subject: [PATCH 21/57] Add instuction to run celery beat (#4162) * add instuction to run celery beat * Extend explanations for celery beat --------- Co-authored-by: Bruno Alla --- {{cookiecutter.project_slug}}/README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/{{cookiecutter.project_slug}}/README.md b/{{cookiecutter.project_slug}}/README.md index 16ee6d1fe..83f9a7e48 100644 --- a/{{cookiecutter.project_slug}}/README.md +++ b/{{cookiecutter.project_slug}}/README.md @@ -63,6 +63,20 @@ celery -A config.celery_app worker -l info Please note: For Celery's import magic to work, it is important *where* the celery commands are run. If you are in the same folder with *manage.py*, you should be right. +To run [periodic tasks](https://docs.celeryq.dev/en/stable/userguide/periodic-tasks.html), you'll need to start the celery beat scheduler service. You can start it as a standalone process: + +``` bash +cd {{cookiecutter.project_slug}} +celery -A config.celery_app beat +``` + +or you can embed the beat service inside a worker with the `-B` option (not recommended for production use): + +``` bash +cd {{cookiecutter.project_slug}} +celery -A config.celery_app worker -B -l info +``` + {%- endif %} {%- if cookiecutter.use_mailhog == "y" %} From 52bdda5bc05a35f8b0c326b1f2a4fbd4f212f2bf Mon Sep 17 00:00:00 2001 From: browniebroke Date: Sat, 25 Feb 2023 12:10:26 +0000 Subject: [PATCH 22/57] Update Contributors --- .github/contributors.json | 5 +++++ CONTRIBUTORS.md | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/.github/contributors.json b/.github/contributors.json index b97140005..30bc0107e 100644 --- a/.github/contributors.json +++ b/.github/contributors.json @@ -1367,5 +1367,10 @@ "name": "Delphine LEMIRE", "github_login": "DelphineLemire", "twitter_username": "" + }, + { + "name": "Hoai-Thu Vuong", + "github_login": "thuvh", + "twitter_username": "" } ] \ No newline at end of file diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 0670ff448..8a541c945 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -915,6 +915,13 @@ Listed in alphabetical order. + + Hoai-Thu Vuong + + thuvh + + + Howie Zhao From eeb02c2198cb455bb53d58b1c81bb42fa5943678 Mon Sep 17 00:00:00 2001 From: Bruno Alla Date: Sat, 25 Feb 2023 12:33:30 +0000 Subject: [PATCH 23/57] Run linting with pre-commit on GitLab (#4150) * Run linting with pre-commit on GitLab * Update tests --- tests/test_cookiecutter_generation.py | 6 ++++-- {{cookiecutter.project_slug}}/.gitlab-ci.yml | 22 +++++++++++--------- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/tests/test_cookiecutter_generation.py b/tests/test_cookiecutter_generation.py index 5608bf884..7628e5e1d 100755 --- a/tests/test_cookiecutter_generation.py +++ b/tests/test_cookiecutter_generation.py @@ -232,7 +232,7 @@ def test_travis_invokes_pytest(cookies, context, use_docker, expected_test_scrip ("y", "docker-compose -f local.yml run django pytest"), ], ) -def test_gitlab_invokes_flake8_and_pytest( +def test_gitlab_invokes_precommit_and_pytest( cookies, context, use_docker, expected_test_script ): context.update({"ci_tool": "Gitlab", "use_docker": use_docker}) @@ -246,7 +246,9 @@ def test_gitlab_invokes_flake8_and_pytest( with open(f"{result.project_path}/.gitlab-ci.yml") as gitlab_yml: try: gitlab_config = yaml.safe_load(gitlab_yml) - assert gitlab_config["flake8"]["script"] == ["flake8"] + assert gitlab_config["precommit"]["script"] == [ + "pre-commit run --show-diff-on-failure --color=always --all-files" + ] assert gitlab_config["pytest"]["script"] == [expected_test_script] except yaml.YAMLError as e: pytest.fail(e) diff --git a/{{cookiecutter.project_slug}}/.gitlab-ci.yml b/{{cookiecutter.project_slug}}/.gitlab-ci.yml index dbb65fb73..7892ad63a 100644 --- a/{{cookiecutter.project_slug}}/.gitlab-ci.yml +++ b/{{cookiecutter.project_slug}}/.gitlab-ci.yml @@ -7,21 +7,26 @@ variables: POSTGRES_PASSWORD: '' POSTGRES_DB: 'test_{{ cookiecutter.project_slug }}' POSTGRES_HOST_AUTH_METHOD: trust - {% if cookiecutter.use_celery == 'y' -%} + {%- if cookiecutter.use_celery == 'y' %} CELERY_BROKER_URL: 'redis://redis:6379/0' {%- endif %} -flake8: +precommit: stage: lint - image: python:3.10-alpine + image: python:3.10 + variables: + PRE_COMMIT_HOME: ${CI_PROJECT_DIR}/.cache/pre-commit + cache: + paths: + - ${PRE_COMMIT_HOME} before_script: - - pip install -q flake8 + - pip install -q pre-commit script: - - flake8 + - pre-commit run --show-diff-on-failure --color=always --all-files pytest: stage: test - {% if cookiecutter.use_docker == 'y' -%} + {%- if cookiecutter.use_docker == 'y' %} image: docker/compose:1.29.2 tags: - docker @@ -34,7 +39,7 @@ pytest: - docker-compose -f local.yml up -d script: - docker-compose -f local.yml run django pytest - {%- else -%} + {%- else %} image: python:3.10 tags: - python @@ -42,11 +47,8 @@ pytest: - postgres:{{ cookiecutter.postgresql_version }} variables: DATABASE_URL: pgsql://$POSTGRES_USER:$POSTGRES_PASSWORD@postgres/$POSTGRES_DB - before_script: - pip install -r requirements/local.txt - script: - pytest {%- endif %} - From 757c9f45e294806b5db98ccf2b55e202f4407625 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 25 Feb 2023 12:44:24 +0000 Subject: [PATCH 24/57] Bump garland/aws-cli-docker from 1.15.47 to 1.16.140 (#4136) Bumps garland/aws-cli-docker from 1.15.47 to 1.16.140. --- updated-dependencies: - dependency-name: garland/aws-cli-docker dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- {{cookiecutter.project_slug}}/compose/production/aws/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile index 8282047b3..4d1ecbb20 100644 --- a/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/production/aws/Dockerfile @@ -1,4 +1,4 @@ -FROM garland/aws-cli-docker:1.15.47 +FROM garland/aws-cli-docker:1.16.140 COPY ./compose/production/aws/maintenance /usr/local/bin/maintenance COPY ./compose/production/postgres/maintenance/_sourced /usr/local/bin/maintenance/_sourced From dc78797c7440b179346c4eb978b0bb98cd40466f Mon Sep 17 00:00:00 2001 From: github-actions Date: Sun, 26 Feb 2023 02:32:42 +0000 Subject: [PATCH 25/57] Release 2023.02.25 --- CHANGELOG.md | 23 +++++++++++++++++++++++ setup.py | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 23604fd77..17cdfdf49 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,29 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.02.25 + +### Changed +- Run linting with pre-commit on GitLab ([#4150](https://github.com/cookiecutter/cookiecutter-django/pull/4150)) +### Fixed +- Disable caching for linter job on GitHub actions ([#4166](https://github.com/cookiecutter/cookiecutter-django/pull/4166)) +### Documentation +- Add instuction to run celery beat ([#4162](https://github.com/cookiecutter/cookiecutter-django/pull/4162)) +### Updated +- Bump garland/aws-cli-docker from 1.15.47 to 1.16.140 ([#4136](https://github.com/cookiecutter/cookiecutter-django/pull/4136)) +- Update djangorestframework-stubs to 1.9.1 ([#4184](https://github.com/cookiecutter/cookiecutter-django/pull/4184)) +- Update whitenoise to 6.4.0 ([#4180](https://github.com/cookiecutter/cookiecutter-django/pull/4180)) +- Update django-stubs to 1.15.0 ([#4183](https://github.com/cookiecutter/cookiecutter-django/pull/4183)) +- Update django-crispy-forms to 2.0 ([#4158](https://github.com/cookiecutter/cookiecutter-django/pull/4158)) +- Update django-cors-headers to 3.14.0 ([#4181](https://github.com/cookiecutter/cookiecutter-django/pull/4181)) +- Update python-slugify to 8.0.1 ([#4178](https://github.com/cookiecutter/cookiecutter-django/pull/4178)) +- Update pre-commit to 3.1.0 ([#4176](https://github.com/cookiecutter/cookiecutter-django/pull/4176)) +- Update mypy to 1.0.1 ([#4168](https://github.com/cookiecutter/cookiecutter-django/pull/4168)) +- Update werkzeug to 2.2.3 ([#4160](https://github.com/cookiecutter/cookiecutter-django/pull/4160)) +- Update coverage to 7.2.0 ([#4177](https://github.com/cookiecutter/cookiecutter-django/pull/4177)) +- Update django to 4.0.10 ([#4159](https://github.com/cookiecutter/cookiecutter-django/pull/4159)) +- Update hiredis to 2.2.2 ([#4156](https://github.com/cookiecutter/cookiecutter-django/pull/4156)) + ## 2023.02.17 ### Changed diff --git a/setup.py b/setup.py index c7566ba70..f486da1f3 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.02.17" +version = "2023.02.25" with open("README.rst") as readme_file: long_description = readme_file.read() From 9665b067d731fdd0fe884c138f667be25ed6221d Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sun, 26 Feb 2023 15:07:25 -0500 Subject: [PATCH 26/57] Update coverage to 7.2.1 (#4186) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 27fa30b36..bd61e1a19 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -30,7 +30,7 @@ sphinx-autobuild==2021.3.14 # https://github.com/GaretJax/sphinx-autobuild # ------------------------------------------------------------------------------ flake8==6.0.0 # https://github.com/PyCQA/flake8 flake8-isort==6.0.0 # https://github.com/gforcada/flake8-isort -coverage==7.2.0 # https://github.com/nedbat/coveragepy +coverage==7.2.1 # https://github.com/nedbat/coveragepy black==23.1.0 # https://github.com/psf/black pylint-django==2.5.3 # https://github.com/PyCQA/pylint-django {%- if cookiecutter.use_celery == 'y' %} From 2bbec96f31b92909fd4a1cf73b31c17007a76a51 Mon Sep 17 00:00:00 2001 From: Delphine LEMIRE Date: Sun, 26 Feb 2023 21:33:45 +0100 Subject: [PATCH 27/57] Fix readthedocs config file for generated project (#4172) * FIX: Uptade Template ci.yml linter requirements * IMPROVMENT_FIX: Template CI actions up to date * FIX: template readthedocs instructions * Update ci.yml * Update readthedocs config file * Update {{cookiecutter.project_slug}}/.readthedocs.yml --------- Co-authored-by: Bruno Alla --- {{cookiecutter.project_slug}}/.readthedocs.yml | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/{{cookiecutter.project_slug}}/.readthedocs.yml b/{{cookiecutter.project_slug}}/.readthedocs.yml index e943a5fa9..08d7f9c24 100644 --- a/{{cookiecutter.project_slug}}/.readthedocs.yml +++ b/{{cookiecutter.project_slug}}/.readthedocs.yml @@ -1,12 +1,20 @@ +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required version: 2 +# Set the version of Python and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.10" + +# Build documentation in the docs/ directory with Sphinx sphinx: configuration: docs/conf.py -build: - image: testing - +# Python requirements required to build your docs python: - version: 3.10 install: - requirements: requirements/local.txt From 6a1aa159b602a35c9367af960b715eba538179aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 26 Feb 2023 20:47:54 +0000 Subject: [PATCH 28/57] Bump traefik from v2.2.11 to 2.9.8 (#4164) Bumps traefik from v2.2.11 to 2.9.8. --- updated-dependencies: - dependency-name: traefik dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../compose/production/traefik/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile index aa879052b..2365c4c49 100644 --- a/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/production/traefik/Dockerfile @@ -1,4 +1,4 @@ -FROM traefik:v2.2.11 +FROM traefik:2.9.8 RUN mkdir -p /etc/traefik/acme \ && touch /etc/traefik/acme/acme.json \ && chmod 600 /etc/traefik/acme/acme.json From 2e7b717d1a46b765bbf58f97ad95a5e6982817a5 Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 27 Feb 2023 02:30:14 +0000 Subject: [PATCH 29/57] Release 2023.02.26 --- CHANGELOG.md | 8 ++++++++ setup.py | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 17cdfdf49..53b630e49 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,14 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.02.26 + +### Changed +- Fix readthedocs config file for generated project ([#4172](https://github.com/cookiecutter/cookiecutter-django/pull/4172)) +### Updated +- Bump traefik from v2.2.11 to 2.9.8 ([#4164](https://github.com/cookiecutter/cookiecutter-django/pull/4164)) +- Update coverage to 7.2.1 ([#4186](https://github.com/cookiecutter/cookiecutter-django/pull/4186)) + ## 2023.02.25 ### Changed diff --git a/setup.py b/setup.py index f486da1f3..4b3f9ca3a 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.02.25" +version = "2023.02.26" with open("README.rst") as readme_file: long_description = readme_file.read() From af2e4cb26a37cb622fb72cb0a8b86ec941bc731b Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Mon, 27 Feb 2023 09:09:51 -0500 Subject: [PATCH 30/57] Update sentry-sdk to 1.16.0 (#4187) --- {{cookiecutter.project_slug}}/requirements/production.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/production.txt b/{{cookiecutter.project_slug}}/requirements/production.txt index 7cee00d5d..3d725fae7 100644 --- a/{{cookiecutter.project_slug}}/requirements/production.txt +++ b/{{cookiecutter.project_slug}}/requirements/production.txt @@ -8,7 +8,7 @@ psycopg2==2.9.5 # https://github.com/psycopg/psycopg2 Collectfast==2.2.0 # https://github.com/antonagestam/collectfast {%- endif %} {%- if cookiecutter.use_sentry == "y" %} -sentry-sdk==1.15.0 # https://github.com/getsentry/sentry-python +sentry-sdk==1.16.0 # https://github.com/getsentry/sentry-python {%- endif %} {%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %} hiredis==2.2.2 # https://github.com/redis/hiredis-py From 94455f4d1f1d7789c3e58742ee9134d070ca7111 Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 28 Feb 2023 02:29:32 +0000 Subject: [PATCH 31/57] Release 2023.02.27 --- CHANGELOG.md | 5 +++++ setup.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53b630e49..1cd1362a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,11 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.02.27 + +### Updated +- Update sentry-sdk to 1.16.0 ([#4187](https://github.com/cookiecutter/cookiecutter-django/pull/4187)) + ## 2023.02.26 ### Changed diff --git a/setup.py b/setup.py index 4b3f9ca3a..cd99d6773 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.02.26" +version = "2023.02.27" with open("README.rst") as readme_file: long_description = readme_file.read() From 6706128924ca2135b001b5141d911d6cb7a74bf1 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Tue, 28 Feb 2023 04:28:12 -0500 Subject: [PATCH 32/57] Update pre-commit to 3.1.1 (#4188) * Update pre-commit from 3.1.0 to 3.1.1 * Update pre-commit from 3.1.0 to 3.1.1 --- requirements.txt | 2 +- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 564e70596..15380e3cb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,7 +8,7 @@ black==23.1.0 isort==5.12.0 flake8==6.0.0 flake8-isort==6.0.0 -pre-commit==3.1.0 +pre-commit==3.1.1 # Testing # ------------------------------------------------------------------------------ diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index bd61e1a19..73163150b 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -36,7 +36,7 @@ pylint-django==2.5.3 # https://github.com/PyCQA/pylint-django {%- if cookiecutter.use_celery == 'y' %} pylint-celery==0.3 # https://github.com/PyCQA/pylint-celery {%- endif %} -pre-commit==3.1.0 # https://github.com/pre-commit/pre-commit +pre-commit==3.1.1 # https://github.com/pre-commit/pre-commit # Django # ------------------------------------------------------------------------------ From 4bf202ee5971fe08d521d8bacd59c62586b47bd2 Mon Sep 17 00:00:00 2001 From: github-actions Date: Wed, 1 Mar 2023 02:33:48 +0000 Subject: [PATCH 33/57] Release 2023.02.28 --- CHANGELOG.md | 5 +++++ setup.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1cd1362a7..1d05a30f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,11 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.02.28 + +### Updated +- Update pre-commit to 3.1.1 ([#4188](https://github.com/cookiecutter/cookiecutter-django/pull/4188)) + ## 2023.02.27 ### Updated diff --git a/setup.py b/setup.py index cd99d6773..7e2bfa625 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.02.27" +version = "2023.02.28" with open("README.rst") as readme_file: long_description = readme_file.read() From c4b8bbb0c789e73e92c6dcb3c4a3d92e9bba1254 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 4 Mar 2023 13:21:32 -0500 Subject: [PATCH 34/57] Update drf-spectacular to 0.26.0 (#4192) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index ac6f876f8..18630c7b8 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -44,7 +44,7 @@ django-redis==5.2.0 # https://github.com/jazzband/django-redis djangorestframework==3.14.0 # https://github.com/encode/django-rest-framework django-cors-headers==3.14.0 # https://github.com/adamchainz/django-cors-headers # DRF-spectacular for api documentation -drf-spectacular==0.25.1 # https://github.com/tfranzel/drf-spectacular +drf-spectacular==0.26.0 # https://github.com/tfranzel/drf-spectacular {%- endif %} {%- if cookiecutter.frontend_pipeline == 'Webpack' %} django-webpack-loader==1.8.1 # https://github.com/django-webpack/django-webpack-loader From 46868bed26f812be90a361dcd48ff68c912aa16a Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 4 Mar 2023 13:21:53 -0500 Subject: [PATCH 35/57] Update pytest to 7.2.2 (#4191) * Update pytest from 7.2.1 to 7.2.2 * Update pytest from 7.2.1 to 7.2.2 --- requirements.txt | 2 +- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 15380e3cb..5a65d6160 100644 --- a/requirements.txt +++ b/requirements.txt @@ -13,7 +13,7 @@ pre-commit==3.1.1 # Testing # ------------------------------------------------------------------------------ tox==4.4.6 -pytest==7.2.1 +pytest==7.2.2 pytest-cookies==0.6.1 pytest-instafail==0.4.2 pyyaml==6.0 diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index 73163150b..e1ab2dc29 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -15,7 +15,7 @@ watchfiles==0.18.1 # https://github.com/samuelcolvin/watchfiles # ------------------------------------------------------------------------------ mypy==1.0.1 # https://github.com/python/mypy django-stubs==1.15.0 # https://github.com/typeddjango/django-stubs -pytest==7.2.1 # https://github.com/pytest-dev/pytest +pytest==7.2.2 # https://github.com/pytest-dev/pytest pytest-sugar==0.9.6 # https://github.com/Frozenball/pytest-sugar {%- if cookiecutter.use_drf == "y" %} djangorestframework-stubs==1.9.1 # https://github.com/typeddjango/djangorestframework-stubs From 06369bfd4cab9470617d665bded585935a17388f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arkadiusz=20Micha=C5=82=20Ry=C5=9B?= <6430069+arrys@users.noreply.github.com> Date: Sat, 4 Mar 2023 19:36:11 +0100 Subject: [PATCH 36/57] Add option to serve media files locally using nginx (#2457) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add option to serve media files locally using nginx * Fix nginx media location and storage issue * Fix traefik django-media typo * Add certresolver property to web-media-router * Add trailing slash in nginx configuration to avoid path traversal exploits * Remove autoindexing from nginx configuration so nginx uses its default off setting * Use nginx to serve media files if cloud provider is None * Add back warning about lack of media files without Docker or Cloud providers * Update documentation * Fix typos and rephrase Co-authored-by: Arkadiusz Ryś --------- Co-authored-by: Bruno Alla Co-authored-by: Bruno Alla --- README.md | 2 +- docs/deployment-with-docker.rst | 4 ++++ docs/project-generation-options.rst | 2 +- hooks/post_gen_project.py | 7 +++++-- .../compose/production/nginx/Dockerfile | 2 ++ .../compose/production/nginx/default.conf | 7 +++++++ .../compose/production/traefik/traefik.yml | 19 +++++++++++++++++++ {{cookiecutter.project_slug}}/production.yml | 18 ++++++++++++++++++ 8 files changed, 57 insertions(+), 4 deletions(-) create mode 100644 {{cookiecutter.project_slug}}/compose/production/nginx/Dockerfile create mode 100644 {{cookiecutter.project_slug}}/compose/production/nginx/default.conf diff --git a/README.md b/README.md index 7ab0b7e15..aaeb25828 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ production-ready Django projects quickly. - Optional basic ASGI setup for Websockets - Optional custom static build using Gulp or Webpack - Send emails via [Anymail](https://github.com/anymail/django-anymail) (using [Mailgun](http://www.mailgun.com/) by default or Amazon SES if AWS is selected cloud provider, but switchable) -- Media storage using Amazon S3, Google Cloud Storage or Azure Storage +- Media storage using Amazon S3, Google Cloud Storage, Azure Storage or nginx - Docker support using [docker-compose](https://github.com/docker/compose) for development and production (using [Traefik](https://traefik.io/) with [LetsEncrypt](https://letsencrypt.org/) support) - [Procfile](https://devcenter.heroku.com/articles/procfile) for deploying to Heroku - Instructions for deploying to [PythonAnywhere](https://www.pythonanywhere.com/) diff --git a/docs/deployment-with-docker.rst b/docs/deployment-with-docker.rst index a431679bf..c1b8c6d7b 100644 --- a/docs/deployment-with-docker.rst +++ b/docs/deployment-with-docker.rst @@ -187,3 +187,7 @@ For status check, run:: supervisorctl status +Media files without cloud provider +---------------------------------- + +If you chose no cloud provider and Docker, the media files will be served by an nginx service, from a ``production_django_media`` volume. Make sure to keep this around to avoid losing any media files. diff --git a/docs/project-generation-options.rst b/docs/project-generation-options.rst index d4ad8a9aa..9b379f12c 100644 --- a/docs/project-generation-options.rst +++ b/docs/project-generation-options.rst @@ -69,7 +69,7 @@ cloud_provider: 3. Azure_ 4. None - Note that if you choose no cloud provider, media files won't work. + If you choose no cloud provider and docker, the production stack will serve the media files via an nginx Docker service. Without Docker, the media files won't work. mail_service: Select an email service that Django-Anymail provides diff --git a/hooks/post_gen_project.py b/hooks/post_gen_project.py index b64bbbafd..dbc367175 100644 --- a/hooks/post_gen_project.py +++ b/hooks/post_gen_project.py @@ -491,9 +491,12 @@ def main(): use_async=("{{ cookiecutter.use_async }}".lower() == "y"), ) - if "{{ cookiecutter.cloud_provider }}" == "None": + if ( + "{{ cookiecutter.cloud_provider }}" == "None" + and "{{ cookiecutter.use_docker }}".lower() == "n" + ): print( - WARNING + "You chose not to use a cloud provider, " + WARNING + "You chose to not use any cloud providers nor Docker, " "media files won't be served in production." + TERMINATOR ) remove_storages_module() diff --git a/{{cookiecutter.project_slug}}/compose/production/nginx/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/nginx/Dockerfile new file mode 100644 index 000000000..911b16f71 --- /dev/null +++ b/{{cookiecutter.project_slug}}/compose/production/nginx/Dockerfile @@ -0,0 +1,2 @@ +FROM nginx:1.17.8-alpine +COPY ./compose/production/nginx/default.conf /etc/nginx/conf.d/default.conf diff --git a/{{cookiecutter.project_slug}}/compose/production/nginx/default.conf b/{{cookiecutter.project_slug}}/compose/production/nginx/default.conf new file mode 100644 index 000000000..aafdd5bee --- /dev/null +++ b/{{cookiecutter.project_slug}}/compose/production/nginx/default.conf @@ -0,0 +1,7 @@ +server { + listen 80; + server_name localhost; + location /media/ { + alias /usr/share/nginx/media/; + } +} diff --git a/{{cookiecutter.project_slug}}/compose/production/traefik/traefik.yml b/{{cookiecutter.project_slug}}/compose/production/traefik/traefik.yml index cc183cd6c..ea57f4a51 100644 --- a/{{cookiecutter.project_slug}}/compose/production/traefik/traefik.yml +++ b/{{cookiecutter.project_slug}}/compose/production/traefik/traefik.yml @@ -57,6 +57,18 @@ http: # https://docs.traefik.io/master/routing/routers/#certresolver certResolver: letsencrypt {%- endif %} + {%- if cookiecutter.cloud_provider == 'None' %} + + web-media-router: + rule: "Host(`{{ cookiecutter.domain_name }}`) && PathPrefix(`/media/`)" + entryPoints: + - web-secure + middlewares: + - csrf + service: django-media + tls: + certResolver: letsencrypt + {%- endif %} middlewares: csrf: @@ -77,6 +89,13 @@ http: servers: - url: http://flower:5555 {%- endif %} + {%- if cookiecutter.cloud_provider == 'None' %} + + django-media: + loadBalancer: + servers: + - url: http://nginx:80 + {%- endif %} providers: # https://docs.traefik.io/master/providers/file/ diff --git a/{{cookiecutter.project_slug}}/production.yml b/{{cookiecutter.project_slug}}/production.yml index 45c8b3c1d..4e9b9e048 100644 --- a/{{cookiecutter.project_slug}}/production.yml +++ b/{{cookiecutter.project_slug}}/production.yml @@ -4,6 +4,9 @@ volumes: production_postgres_data: {} production_postgres_data_backups: {} production_traefik: {} + {%- if cookiecutter.cloud_provider == 'None' %} + production_django_media: {} + {%- endif %} services: django:{% if cookiecutter.use_celery == 'y' %} &django{% endif %} @@ -24,6 +27,10 @@ services: {%- endif %} image: {{ cookiecutter.project_slug }}_production_django + {%- if cookiecutter.cloud_provider == 'None' %} + volumes: + - production_django_media:/app/{{ cookiecutter.project_slug }}/media + {%- endif %} depends_on: - postgres - redis @@ -89,3 +96,14 @@ services: volumes: - production_postgres_data_backups:/backups:z {%- endif %} + {%- if cookiecutter.cloud_provider == 'None' %} + nginx: + build: + context: . + dockerfile: ./compose/production/nginx/Dockerfile + image: {{ cookiecutter.project_slug }}_local_nginx + depends_on: + - django + volumes: + - production_django_media:/usr/share/nginx/media:ro + {%- endif %} From b5a043551d1304957a8077840b99c54236d103e0 Mon Sep 17 00:00:00 2001 From: browniebroke Date: Sat, 4 Mar 2023 18:36:44 +0000 Subject: [PATCH 37/57] Update Contributors --- .github/contributors.json | 5 +++++ CONTRIBUTORS.md | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/.github/contributors.json b/.github/contributors.json index 30bc0107e..c15476cc3 100644 --- a/.github/contributors.json +++ b/.github/contributors.json @@ -1372,5 +1372,10 @@ "name": "Hoai-Thu Vuong", "github_login": "thuvh", "twitter_username": "" + }, + { + "name": "Arkadiusz Michał Ryś", + "github_login": "arrys", + "twitter_username": "" } ] \ No newline at end of file diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 8a541c945..af99445d4 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -292,6 +292,13 @@ Listed in alphabetical order. + + Arkadiusz Michał Ryś + + arrys + + + Arnav Choudhury From 6e782bff33a2422a3b0cfbf1be46f5fc1e47f1a6 Mon Sep 17 00:00:00 2001 From: Bruno Alla Date: Sat, 4 Mar 2023 18:45:25 +0000 Subject: [PATCH 38/57] Include contributing page to the docs (#4144) * Add MyST parser * Include contributing page to the docs --- docs/conf.py | 4 ++-- docs/contributing.md | 3 +++ docs/index.rst | 1 + docs/requirements.txt | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 docs/contributing.md diff --git a/docs/conf.py b/docs/conf.py index b53e6a7e7..b1a97750a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -23,13 +23,13 @@ now = datetime.now() # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = [] +extensions = ["myst_parser"] # Add any paths that contain templates here, relative to this directory. templates_path = ["_templates"] # The suffix of source filenames. -source_suffix = ".rst" +source_suffix = [".rst", ".md"] # The encoding of source files. # source_encoding = 'utf-8-sig' diff --git a/docs/contributing.md b/docs/contributing.md new file mode 100644 index 000000000..66c1f98d3 --- /dev/null +++ b/docs/contributing.md @@ -0,0 +1,3 @@ +```{include} ../CONTRIBUTING.md + +``` diff --git a/docs/index.rst b/docs/index.rst index dae641d10..da5186487 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -27,6 +27,7 @@ Contents websocket faq troubleshooting + contributing Indices and tables ------------------ diff --git a/docs/requirements.txt b/docs/requirements.txt index 0982f3d25..d86ecffa9 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,3 @@ sphinx==6.1.3 sphinx-rtd-theme==1.2.0 +myst-parser==0.19.0 From 6e7355a8c9a44926bc8456f722c9ed542ef8a7da Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Sat, 4 Mar 2023 13:57:53 -0500 Subject: [PATCH 39/57] Update myst-parser to 0.19.1 (#4193) --- docs/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index d86ecffa9..661e9c02a 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,3 +1,3 @@ sphinx==6.1.3 sphinx-rtd-theme==1.2.0 -myst-parser==0.19.0 +myst-parser==0.19.1 From d6e3f41adb571209de5bdd01b3a0de6d03455dfb Mon Sep 17 00:00:00 2001 From: github-actions Date: Sun, 5 Mar 2023 02:34:22 +0000 Subject: [PATCH 40/57] Release 2023.03.04 --- CHANGELOG.md | 11 +++++++++++ setup.py | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d05a30f9..c06100e04 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,17 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.03.04 + +### Changed +- Add option to serve media files locally using nginx ([#2457](https://github.com/cookiecutter/cookiecutter-django/pull/2457)) +### Documentation +- Include contributing page to the docs ([#4144](https://github.com/cookiecutter/cookiecutter-django/pull/4144)) +### Updated +- Update myst-parser to 0.19.1 ([#4193](https://github.com/cookiecutter/cookiecutter-django/pull/4193)) +- Update pytest to 7.2.2 ([#4191](https://github.com/cookiecutter/cookiecutter-django/pull/4191)) +- Update drf-spectacular to 0.26.0 ([#4192](https://github.com/cookiecutter/cookiecutter-django/pull/4192)) + ## 2023.02.28 ### Updated diff --git a/setup.py b/setup.py index 7e2bfa625..cd6170bb5 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.02.28" +version = "2023.03.04" with open("README.rst") as readme_file: long_description = readme_file.read() From 305364f5ad7852cd983be608dd1f625ef05c1aaf Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Tue, 7 Mar 2023 15:39:49 -0500 Subject: [PATCH 41/57] Update django-environ to 0.10.0 (#4195) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 18630c7b8..1550be1bb 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -30,7 +30,7 @@ uvicorn[standard]==0.20.0 # https://github.com/encode/uvicorn # Django # ------------------------------------------------------------------------------ django==4.0.10 # pyup: < 4.1 # https://www.djangoproject.com/ -django-environ==0.9.0 # https://github.com/joke2k/django-environ +django-environ==0.10.0 # https://github.com/joke2k/django-environ django-model-utils==4.3.1 # https://github.com/jazzband/django-model-utils django-allauth==0.52.0 # https://github.com/pennersr/django-allauth django-crispy-forms==2.0 # https://github.com/django-crispy-forms/django-crispy-forms From c326c3476b992da2ed289d808ff7d5e1db11c087 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Tue, 7 Mar 2023 15:40:09 -0500 Subject: [PATCH 42/57] Update mypy to 1.1.1 (#4196) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index e1ab2dc29..e0928bc21 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -13,7 +13,7 @@ watchfiles==0.18.1 # https://github.com/samuelcolvin/watchfiles # Testing # ------------------------------------------------------------------------------ -mypy==1.0.1 # https://github.com/python/mypy +mypy==1.1.1 # https://github.com/python/mypy django-stubs==1.15.0 # https://github.com/typeddjango/django-stubs pytest==7.2.2 # https://github.com/pytest-dev/pytest pytest-sugar==0.9.6 # https://github.com/Frozenball/pytest-sugar From c19957604a212a0aeb5f71c86b087e749ba19216 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Tue, 7 Mar 2023 15:40:54 -0500 Subject: [PATCH 43/57] Update myst-parser to 1.0.0 (#4197) --- docs/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index 661e9c02a..c16401c84 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,3 +1,3 @@ sphinx==6.1.3 sphinx-rtd-theme==1.2.0 -myst-parser==0.19.1 +myst-parser==1.0.0 From e6014675d276396d20c9fd6b836ab0d4e827292d Mon Sep 17 00:00:00 2001 From: github-actions Date: Wed, 8 Mar 2023 02:31:52 +0000 Subject: [PATCH 44/57] Release 2023.03.07 --- CHANGELOG.md | 6 ++++++ setup.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c06100e04..4a678abce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,12 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.03.07 + +### Updated +- Update mypy to 1.1.1 ([#4196](https://github.com/cookiecutter/cookiecutter-django/pull/4196)) +- Update django-environ to 0.10.0 ([#4195](https://github.com/cookiecutter/cookiecutter-django/pull/4195)) + ## 2023.03.04 ### Changed diff --git a/setup.py b/setup.py index cd6170bb5..46fe6e06f 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.03.04" +version = "2023.03.07" with open("README.rst") as readme_file: long_description = readme_file.read() From a5d8b4be8864b72c78ef9c257b46837ca0bcc51d Mon Sep 17 00:00:00 2001 From: mpsantos Date: Thu, 9 Mar 2023 07:43:50 -0300 Subject: [PATCH 45/57] Fix the omit configuration for coverage (#4201) --- {{cookiecutter.project_slug}}/setup.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/setup.cfg b/{{cookiecutter.project_slug}}/setup.cfg index 7ee60215a..e282af36a 100644 --- a/{{cookiecutter.project_slug}}/setup.cfg +++ b/{{cookiecutter.project_slug}}/setup.cfg @@ -35,6 +35,6 @@ ignore_errors = True [coverage:run] include = {{cookiecutter.project_slug}}/** -omit = *migrations*, *tests* +omit = */migrations/*, */tests/* plugins = django_coverage_plugin From 7aba8c4e95e817fe17227318d053e3a07422c0df Mon Sep 17 00:00:00 2001 From: browniebroke Date: Thu, 9 Mar 2023 10:44:26 +0000 Subject: [PATCH 46/57] Update Contributors --- .github/contributors.json | 5 +++++ CONTRIBUTORS.md | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/.github/contributors.json b/.github/contributors.json index c15476cc3..e84337123 100644 --- a/.github/contributors.json +++ b/.github/contributors.json @@ -1377,5 +1377,10 @@ "name": "Arkadiusz Michał Ryś", "github_login": "arrys", "twitter_username": "" + }, + { + "name": "mpsantos", + "github_login": "mpsantos", + "twitter_username": "" } ] \ No newline at end of file diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index af99445d4..f78278e34 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -1440,6 +1440,13 @@ Listed in alphabetical order. + + mpsantos + + mpsantos + + + Naveen From 522d5219f68b6c7da40d13243ed481072640d2d5 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Thu, 9 Mar 2023 12:25:14 -0500 Subject: [PATCH 47/57] Update ipdb to 0.13.13 (#4202) --- {{cookiecutter.project_slug}}/requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/local.txt b/{{cookiecutter.project_slug}}/requirements/local.txt index e0928bc21..218cdcaad 100644 --- a/{{cookiecutter.project_slug}}/requirements/local.txt +++ b/{{cookiecutter.project_slug}}/requirements/local.txt @@ -1,7 +1,7 @@ -r base.txt Werkzeug[watchdog]==2.2.3 # https://github.com/pallets/werkzeug -ipdb==0.13.11 # https://github.com/gotcha/ipdb +ipdb==0.13.13 # https://github.com/gotcha/ipdb {%- if cookiecutter.use_docker == 'y' %} psycopg2==2.9.5 # https://github.com/psycopg/psycopg2 {%- else %} From a3781084c1a6d24a52428d15fe6140c09aca58db Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 10 Mar 2023 02:32:50 +0000 Subject: [PATCH 48/57] Release 2023.03.09 --- CHANGELOG.md | 7 +++++++ setup.py | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a678abce..00daff8e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,13 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.03.09 + +### Fixed +- Fix the omit configuration for coverage ([#4201](https://github.com/cookiecutter/cookiecutter-django/pull/4201)) +### Updated +- Update ipdb to 0.13.13 ([#4202](https://github.com/cookiecutter/cookiecutter-django/pull/4202)) + ## 2023.03.07 ### Updated diff --git a/setup.py b/setup.py index 46fe6e06f..e6f1f0b65 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.03.07" +version = "2023.03.09" with open("README.rst") as readme_file: long_description = readme_file.read() From 1840ed7b395c482a792c1f5f60ac2da6d26441c6 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Mon, 13 Mar 2023 03:21:15 -0500 Subject: [PATCH 49/57] Update tox to 4.4.7 (#4207) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 5a65d6160..b2e7cedb4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -12,7 +12,7 @@ pre-commit==3.1.1 # Testing # ------------------------------------------------------------------------------ -tox==4.4.6 +tox==4.4.7 pytest==7.2.2 pytest-cookies==0.6.1 pytest-instafail==0.4.2 From d588f71dff05538fca4b4ac9a195cffe2dfc4a70 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Mon, 13 Mar 2023 03:21:59 -0500 Subject: [PATCH 50/57] Update django-anymail to 9.1 (#4206) --- .../requirements/production.txt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/{{cookiecutter.project_slug}}/requirements/production.txt b/{{cookiecutter.project_slug}}/requirements/production.txt index 3d725fae7..c79f98431 100644 --- a/{{cookiecutter.project_slug}}/requirements/production.txt +++ b/{{cookiecutter.project_slug}}/requirements/production.txt @@ -24,21 +24,21 @@ django-storages[google]==1.13.2 # https://github.com/jschneier/django-storages django-storages[azure]==1.13.2 # https://github.com/jschneier/django-storages {%- endif %} {%- if cookiecutter.mail_service == 'Mailgun' %} -django-anymail[mailgun]==9.0 # https://github.com/anymail/django-anymail +django-anymail[mailgun]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'Amazon SES' %} -django-anymail[amazon_ses]==9.0 # https://github.com/anymail/django-anymail +django-anymail[amazon_ses]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'Mailjet' %} -django-anymail[mailjet]==9.0 # https://github.com/anymail/django-anymail +django-anymail[mailjet]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'Mandrill' %} -django-anymail[mandrill]==9.0 # https://github.com/anymail/django-anymail +django-anymail[mandrill]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'Postmark' %} -django-anymail[postmark]==9.0 # https://github.com/anymail/django-anymail +django-anymail[postmark]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'Sendgrid' %} -django-anymail[sendgrid]==9.0 # https://github.com/anymail/django-anymail +django-anymail[sendgrid]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'SendinBlue' %} -django-anymail[sendinblue]==9.0 # https://github.com/anymail/django-anymail +django-anymail[sendinblue]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'SparkPost' %} -django-anymail[sparkpost]==9.0 # https://github.com/anymail/django-anymail +django-anymail[sparkpost]==9.1 # https://github.com/anymail/django-anymail {%- elif cookiecutter.mail_service == 'Other SMTP' %} -django-anymail==9.0 # https://github.com/anymail/django-anymail +django-anymail==9.1 # https://github.com/anymail/django-anymail {%- endif %} From ef73440c223b9459f8c59bf910c13ef741a58aa2 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Mon, 13 Mar 2023 03:23:58 -0500 Subject: [PATCH 51/57] Update uvicorn to 0.21.0 (#4203) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index 1550be1bb..f8ef0f150 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -24,7 +24,7 @@ flower==1.2.0 # https://github.com/mher/flower {%- endif %} {%- endif %} {%- if cookiecutter.use_async == 'y' %} -uvicorn[standard]==0.20.0 # https://github.com/encode/uvicorn +uvicorn[standard]==0.21.0 # https://github.com/encode/uvicorn {%- endif %} # Django From fe947fabfbd4f767ef74e34e42a6e3c256523c7b Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 14 Mar 2023 02:17:49 +0000 Subject: [PATCH 52/57] Release 2023.03.13 --- CHANGELOG.md | 7 +++++++ setup.py | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 00daff8e2..b938ecc05 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,13 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.03.13 + +### Updated +- Update uvicorn to 0.21.0 ([#4203](https://github.com/cookiecutter/cookiecutter-django/pull/4203)) +- Update django-anymail to 9.1 ([#4206](https://github.com/cookiecutter/cookiecutter-django/pull/4206)) +- Update tox to 4.4.7 ([#4207](https://github.com/cookiecutter/cookiecutter-django/pull/4207)) + ## 2023.03.09 ### Fixed diff --git a/setup.py b/setup.py index e6f1f0b65..cf45c28eb 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.03.09" +version = "2023.03.13" with open("README.rst") as readme_file: long_description = readme_file.read() From f08c81eb2ce23d9a79a619ae08d372782d44473e Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Tue, 14 Mar 2023 08:22:37 -0500 Subject: [PATCH 53/57] Update django-celery-beat from 2.4.0 to 2.5.0 (#4208) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index f8ef0f150..e94221728 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -18,7 +18,7 @@ hiredis==2.2.2 # https://github.com/redis/hiredis-py {%- endif %} {%- if cookiecutter.use_celery == "y" %} celery==5.2.7 # pyup: < 6.0 # https://github.com/celery/celery -django-celery-beat==2.4.0 # https://github.com/celery/django-celery-beat +django-celery-beat==2.5.0 # https://github.com/celery/django-celery-beat {%- if cookiecutter.use_docker == 'y' %} flower==1.2.0 # https://github.com/mher/flower {%- endif %} From 6e078fad858d9095bce2f50fb69c7810dceb4c6d Mon Sep 17 00:00:00 2001 From: github-actions Date: Wed, 15 Mar 2023 02:23:03 +0000 Subject: [PATCH 54/57] Release 2023.03.14 --- CHANGELOG.md | 5 +++++ setup.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b938ecc05..8457fa646 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,11 @@ All enhancements and patches to Cookiecutter Django will be documented in this f +## 2023.03.14 + +### Updated +- Update django-celery-beat to 2.5.0 ([#4208](https://github.com/cookiecutter/cookiecutter-django/pull/4208)) + ## 2023.03.13 ### Updated diff --git a/setup.py b/setup.py index cf45c28eb..762673d9a 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ except ImportError: from distutils.core import setup # We use calendar versioning -version = "2023.03.13" +version = "2023.03.14" with open("README.rst") as readme_file: long_description = readme_file.read() From c56088406c4c928e8e8c9f9e3b923000c5e7b4f9 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Thu, 16 Mar 2023 08:30:32 -0500 Subject: [PATCH 55/57] Update django-allauth from 0.52.0 to 0.53.0 (#4210) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index e94221728..ff85377e5 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -32,7 +32,7 @@ uvicorn[standard]==0.21.0 # https://github.com/encode/uvicorn django==4.0.10 # pyup: < 4.1 # https://www.djangoproject.com/ django-environ==0.10.0 # https://github.com/joke2k/django-environ django-model-utils==4.3.1 # https://github.com/jazzband/django-model-utils -django-allauth==0.52.0 # https://github.com/pennersr/django-allauth +django-allauth==0.53.0 # https://github.com/pennersr/django-allauth django-crispy-forms==2.0 # https://github.com/django-crispy-forms/django-crispy-forms crispy-bootstrap5==0.7 # https://github.com/django-crispy-forms/crispy-bootstrap5 {%- if cookiecutter.frontend_pipeline == 'Django Compressor' %} From 5cd58ce160c8348c73acca5b05d75b68c3f6c369 Mon Sep 17 00:00:00 2001 From: "pyup.io bot" Date: Thu, 16 Mar 2023 10:37:33 -0500 Subject: [PATCH 56/57] Update uvicorn to 0.21.1 (#4211) --- {{cookiecutter.project_slug}}/requirements/base.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/requirements/base.txt b/{{cookiecutter.project_slug}}/requirements/base.txt index ff85377e5..2fff9561f 100644 --- a/{{cookiecutter.project_slug}}/requirements/base.txt +++ b/{{cookiecutter.project_slug}}/requirements/base.txt @@ -24,7 +24,7 @@ flower==1.2.0 # https://github.com/mher/flower {%- endif %} {%- endif %} {%- if cookiecutter.use_async == 'y' %} -uvicorn[standard]==0.21.0 # https://github.com/encode/uvicorn +uvicorn[standard]==0.21.1 # https://github.com/encode/uvicorn {%- endif %} # Django From d90f16b6479327f6e4acd7695acec29ac241b2f1 Mon Sep 17 00:00:00 2001 From: Bruno Alla Date: Thu, 16 Mar 2023 16:05:02 +0000 Subject: [PATCH 57/57] Pin base Python Docker images to bugfix (#4194) * Pin base Python Docker images to bugfix Fix #1810 * Skip major & minor versions of Docker images in Dependabot * Remove argument for docs Docker image * Update Dependabot config of generated project --- .github/dependabot.yml | 9 +++++ .../.github/dependabot.yml | 40 +++++++++++-------- .../compose/local/django/Dockerfile | 4 +- .../compose/local/docs/Dockerfile | 4 +- .../compose/production/django/Dockerfile | 4 +- 5 files changed, 35 insertions(+), 26 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index d95192f33..d308ff96a 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -27,6 +27,9 @@ updates: directory: "{{cookiecutter.project_slug}}/compose/local/django/" schedule: interval: "daily" + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major", "version-update:semver-minor"] labels: - "update" @@ -34,6 +37,9 @@ updates: directory: "{{cookiecutter.project_slug}}/compose/local/docs/" schedule: interval: "daily" + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major", "version-update:semver-minor"] labels: - "update" @@ -55,6 +61,9 @@ updates: directory: "{{cookiecutter.project_slug}}/compose/production/django/" schedule: interval: "daily" + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major", "version-update:semver-minor"] labels: - "update" diff --git a/{{cookiecutter.project_slug}}/.github/dependabot.yml b/{{cookiecutter.project_slug}}/.github/dependabot.yml index 420a63cdc..3f4eefe94 100644 --- a/{{cookiecutter.project_slug}}/.github/dependabot.yml +++ b/{{cookiecutter.project_slug}}/.github/dependabot.yml @@ -6,7 +6,7 @@ updates: # Update GitHub actions in workflows - package-ecosystem: "github-actions" directory: "/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" @@ -19,55 +19,61 @@ updates: - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/local/django` directory directory: "compose/local/django/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" + # Ignore minor version updates (3.10 -> 3.11) but update patch versions + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major", "version-update:semver-minor"] - # Enable version updates for Docker - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/local/docs` directory directory: "compose/local/docs/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" + # Ignore minor version updates (3.10 -> 3.11) but update patch versions + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major", "version-update:semver-minor"] - # Enable version updates for Docker - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/local/node` directory directory: "compose/local/node/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" - # Enable version updates for Docker - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/production/aws` directory directory: "compose/production/aws/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" - # Enable version updates for Docker - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/production/django` directory directory: "compose/production/django/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" + # Ignore minor version updates (3.10 -> 3.11) but update patch versions + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major", "version-update:semver-minor"] - # Enable version updates for Docker - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/production/postgres` directory directory: "compose/production/postgres/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" - # Enable version updates for Docker - package-ecosystem: "docker" # Look for a `Dockerfile` in the `compose/production/traefik` directory directory: "compose/production/traefik/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" @@ -78,7 +84,7 @@ updates: # Look for a `requirements.txt` in the `root` directory # also 'setup.cfg', 'runtime.txt' and 'requirements/*.txt' directory: "/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" @@ -86,9 +92,9 @@ updates: # Enable version updates for javascript/npm - package-ecosystem: "npm" - # Look for a `packages.json' in the `root` directory + # Look for a `packages.json` in the `root` directory directory: "/" - # Check for updates to GitHub Actions every weekday + # Every weekday schedule: interval: "daily" diff --git a/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile b/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile index 3ea6b2d4c..36659d31d 100644 --- a/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/local/django/Dockerfile @@ -1,7 +1,5 @@ -ARG PYTHON_VERSION=3.10-slim-bullseye - # define an alias for the specfic python version used in this file. -FROM python:${PYTHON_VERSION} as python +FROM python:3.10.9-slim-bullseye 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 c45d18c95..f52e34d26 100644 --- a/{{cookiecutter.project_slug}}/compose/local/docs/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/local/docs/Dockerfile @@ -1,7 +1,5 @@ -ARG PYTHON_VERSION=3.10-slim-bullseye - # define an alias for the specfic python version used in this file. -FROM python:${PYTHON_VERSION} as python +FROM python:3.10.9-slim-bullseye as python # Python build stage diff --git a/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile b/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile index ef80441ba..ac4ca7714 100644 --- a/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile +++ b/{{cookiecutter.project_slug}}/compose/production/django/Dockerfile @@ -1,5 +1,3 @@ -ARG PYTHON_VERSION=3.10-slim-bullseye - {% if cookiecutter.frontend_pipeline in ['Gulp', 'Webpack'] -%} FROM node:16-bullseye-slim as client-builder @@ -28,7 +26,7 @@ RUN npm run build {%- endif %} # define an alias for the specfic python version used in this file. -FROM python:${PYTHON_VERSION} as python +FROM python:3.10.9-slim-bullseye as python # Python build stage FROM python as python-build-stage