Compare commits

...

74 Commits

Author SHA1 Message Date
github-actions
e682a9b7a9 Release 2025.07.27 2025-07-28 02:49:34 +00:00
pyup.io bot
c1873d9f2f
Update coverage to 7.10.1 (#5947)
Update coverage from 7.10.0 to 7.10.1
2025-07-27 22:31:24 +01:00
github-actions
5fae47541d Release 2025.07.25 2025-07-26 02:40:36 +00:00
pyup.io bot
082a17a58c
Update django-anymail to 13.0.1 (#5946)
* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1

* Update django-anymail from 13.0 to 13.0.1
2025-07-25 21:38:20 +01:00
github-actions
cac469c6ba Release 2025.07.24 2025-07-25 02:44:04 +00:00
pyup.io bot
539c7f6f46
Update coverage to 7.10.0 (#5944)
Update coverage from 7.9.2 to 7.10.0
2025-07-24 22:53:49 +01:00
pyup.io bot
068315e284
Update ruff to 0.12.5 (#5943)
Co-authored-by: pyup-bot <16239342+pyup-bot@users.noreply.github.com>
2025-07-24 17:50:40 +01:00
dependabot[bot]
b2849637ce
Bump traefik from 3.4.4 to 3.5.0 (#5942)
Bump traefik

Bumps traefik from 3.4.4 to 3.5.0.

---
updated-dependencies:
- dependency-name: traefik
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-24 08:43:48 +01:00
github-actions
d93c080e57 Release 2025.07.22 2025-07-23 02:44:52 +00:00
pyup.io bot
bf5687912c
Update sentry-sdk to 2.33.2 (#5941)
Update sentry-sdk from 2.33.1 to 2.33.2
2025-07-22 19:22:17 +01:00
github-actions
95ac5a80fb Release 2025.07.21 2025-07-22 02:44:19 +00:00
pyup.io bot
bc88cbac97
Update sentry-sdk to 2.33.1 (#5940)
Update sentry-sdk from 2.33.0 to 2.33.1
2025-07-21 22:35:19 +01:00
github-actions
567e00f197 Release 2025.07.18 2025-07-19 02:39:24 +00:00
pyup.io bot
1fd01711f3
Update mypy to 1.17.0 (#5937)
Update mypy from 1.16.1 to 1.17.0
2025-07-18 13:54:33 +01:00
pyup.io bot
b2e95216e5
Update django-stubs to 5.2.2 (#5936)
Update django-stubs from 5.2.1 to 5.2.2
2025-07-18 13:28:41 +01:00
github-actions
a990561d40 Release 2025.07.17 2025-07-18 02:44:39 +00:00
pyup.io bot
480c29f760
Update ruff to 0.12.4 (#5935)
* Update ruff from 0.12.3 to 0.12.4

* Align versions

---------

Co-authored-by: pyup-bot <16239342+pyup-bot@users.noreply.github.com>
2025-07-17 23:01:41 +01:00
github-actions
c5fba924ba Release 2025.07.16 2025-07-17 02:43:02 +00:00
pyup.io bot
7fc9e0867f
Update sentry-sdk to 2.33.0 (#5933) 2025-07-16 08:58:17 +01:00
github-actions
4f8e109b2f Release 2025.07.15 2025-07-16 02:42:57 +00:00
pyup.io bot
e27e6bf8f7
Update mypy to 1.16.1 (#5901)
Update mypy from 1.15.0 to 1.16.1

Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
2025-07-15 07:26:42 +01:00
dependabot[bot]
821224226f
Bump traefik from 3.4.3 to 3.4.4 (#5930) 2025-07-15 06:55:25 +01:00
github-actions
8e46a8f390 Release 2025.07.14 2025-07-15 02:45:05 +00:00
luzfcb
fc494593b1 Update Contributors 2025-07-14 03:13:05 +00:00
Lucas
34e255dbe0 Fix howto docker command 2025-07-14 00:12:48 -03:00
github-actions
f7e540dc8d Release 2025.07.11 2025-07-12 02:42:13 +00:00
pyup.io bot
3e02c2037b
Update ruff to 0.12.3 (#5928)
* Update ruff from 0.12.2 to 0.12.3

* Align versions

---------

Co-authored-by: pyup-bot <16239342+pyup-bot@users.noreply.github.com>
2025-07-11 16:47:26 +02:00
pyup.io bot
da2a659dee
Update django-allauth to 65.10.0 (#5927)
Update django-allauth from 65.9.0 to 65.10.0
2025-07-11 07:30:47 +02:00
github-actions
d976c052c8 Release 2025.07.05 2025-07-06 02:44:00 +00:00
pyup.io bot
708eb4ccf8
Update coverage to 7.9.2 (#5925)
Update coverage from 7.9.1 to 7.9.2
2025-07-05 09:30:13 +02:00
github-actions
277537889e Release 2025.07.04 2025-07-05 02:35:46 +00:00
pyup.io bot
2b38fac5c7
Update ruff to 0.12.2 (#5923)
* Update ruff from 0.12.1 to 0.12.2

* Align versions

---------

Co-authored-by: pyup-bot <16239342+pyup-bot@users.noreply.github.com>
2025-07-04 23:23:16 +02:00
github-actions
533a6bf1a8 Release 2025.07.02 2025-07-03 02:39:06 +00:00
pyup.io bot
d2d7927414
Update pillow to 11.3.0 (#5921)
Update pillow from 11.2.1 to 11.3.0
2025-07-02 07:40:17 +01:00
github-actions
ac8b3d64b6 Release 2025.06.30 2025-07-01 02:46:47 +00:00
dependabot[bot]
bfd8d00707
Bump traefik from 3.4.1 to 3.4.3 (#5917)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-30 10:50:35 +02:00
pyup.io bot
00fb4e01b0
Update uvicorn to 0.35.0 (#5919) 2025-06-30 10:50:04 +02:00
pyup.io bot
01e3cf72d2
Update sentry-sdk to 2.32.0 (#5918) 2025-06-30 10:49:33 +02:00
github-actions
f98b2c2a53 Release 2025.06.26 2025-06-27 02:37:54 +00:00
pyup.io bot
3902307653
Update ruff to 0.12.1 (#5916)
* Update ruff from 0.12.0 to 0.12.1

* Align versions

---------

Co-authored-by: pyup-bot <16239342+pyup-bot@users.noreply.github.com>
2025-06-26 23:17:08 +01:00
github-actions
8b54050e07 Release 2025.06.24 2025-06-25 02:38:08 +00:00
github-actions[bot]
fb1c8307be
Auto-update pre-commit hooks (#5908)
Co-authored-by: browniebroke <861044+browniebroke@users.noreply.github.com>
2025-06-24 23:36:44 +01:00
pyup.io bot
e7b81d2e07
Update sentry-sdk to 2.31.0 (#5912)
Update sentry-sdk from 2.30.0 to 2.31.0
2025-06-24 23:35:51 +01:00
github-actions
85a01f5f1a Release 2025.06.19 2025-06-20 02:36:43 +00:00
pyup.io bot
e23eee2d85
Update pytest to 8.4.1 (#5907)
Update pytest from 8.4.0 to 8.4.1
2025-06-19 07:43:32 +01:00
github-actions
fc39cfa33e Release 2025.06.18 2025-06-19 02:37:20 +00:00
pyup.io bot
7a41c46259
Update ruff to 0.12.0 (#5904)
* Update ruff from 0.11.13 to 0.12.0

* Align versions

* Fix/ignore a few new Ruff violations

* Fix/ignore a few new Ruff violations

* Rename pre-commit hook id

---------

Co-authored-by: pyup-bot <16239342+pyup-bot@users.noreply.github.com>
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
2025-06-18 18:52:22 +01:00
pyup.io bot
7a0e73640d
Update django-stubs to 5.2.1 (#5905) 2025-06-18 10:53:44 +01:00
pyup.io bot
cd06bde587
Update django-redis to 6.0.0 (#5903) 2025-06-18 10:52:54 +01:00
pyup.io bot
56690fa4f9
Update django-webpack-loader to 3.2.1 (#5902) 2025-06-18 10:51:42 +01:00
github-actions
4950e2bbd3 Release 2025.06.17 2025-06-18 02:36:47 +00:00
pyup.io bot
25a30c9a9e
Update django-coverage-plugin to 3.1.1 (#5900)
Update django-coverage-plugin from 3.1.0 to 3.1.1
2025-06-17 13:09:43 +01:00
pyup.io bot
b32ce8d5be
Update watchfiles to 1.1.0 (#5899)
Update watchfiles from 1.0.5 to 1.1.0
2025-06-17 13:09:34 +01:00
github-actions
4f850d953d Release 2025.06.15 2025-06-16 02:39:47 +00:00
pyup.io bot
55fa9189e6
Update coverage to 7.9.1 (#5898)
Update coverage from 7.9.0 to 7.9.1
2025-06-15 11:11:42 +01:00
github-actions
cbf309713e Release 2025.06.13 2025-06-14 02:35:05 +00:00
pyup.io bot
5737722073
Update coverage to 7.9.0 (#5897)
Update coverage from 7.8.2 to 7.9.0
2025-06-13 08:30:30 +01:00
pyup.io bot
c266a7a761
Update sentry-sdk to 2.30.0 (#5896)
Update sentry-sdk from 2.29.1 to 2.30.0
2025-06-13 08:30:16 +01:00
github-actions
75285a876c Release 2025.06.11 2025-06-12 02:36:29 +00:00
pyup.io bot
f82df6f501
Update collectfasta to 3.3.0 (#5892) 2025-06-11 09:00:52 +01:00
dependabot[bot]
37398d692b
Bump stefanzweifel/git-auto-commit-action from 5 to 6 (#5893)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-11 08:59:46 +01:00
github-actions
ffed1b2653 Release 2025.06.10 2025-06-11 02:36:28 +00:00
pyup.io bot
76de3fe445
Update django to 5.1.11 (#5891) 2025-06-10 17:43:31 +01:00
pyup.io bot
0ab457ebca
Update crispy-bootstrap5 to 2025.6 (#5888)
Update crispy-bootstrap5 from 2025.4 to 2025.6
2025-06-10 08:37:16 +01:00
github-actions
826793b210 Release 2025.06.06 2025-06-07 02:35:34 +00:00
pyup.io bot
95bdedbc61
Update ruff to 0.11.13 (#5887) 2025-06-06 15:49:43 +01:00
github-actions
c70632e583 Release 2025.06.05 2025-06-06 02:36:17 +00:00
dependabot[bot]
8e0fbcb6b7
Bump python from 3.12.10 to 3.12.11 in docs Docker (#5883)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-05 14:16:52 +01:00
dependabot[bot]
5f8e0e169b
Bump python from 3.12.10 to 3.12.11 in production Docker (#5884)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-05 14:16:27 +01:00
dependabot[bot]
96f02eaf6b
Bump python from 3.12.10 3.12.11 in local Docker (#5885)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-05 14:16:06 +01:00
pyup.io bot
d09df158df
Update django to 5.1.10 (#5882) 2025-06-05 14:13:09 +01:00
github-actions
ba23459c43 Release 2025.06.04 2025-06-05 02:36:17 +00:00
pyup.io bot
5a0456eee3
Update argon2-cffi to 25.1.0 (#5880)
Update argon2-cffi from 23.1.0 to 25.1.0
2025-06-04 08:57:48 +01:00
pyup.io bot
53efe49582
Update pytest to 8.4.0 (#5881) 2025-06-04 08:56:33 +01:00
24 changed files with 301 additions and 68 deletions

View File

@ -13,7 +13,6 @@ labels: bug
<!-- To assist you best, please include commands that you've run, options you've selected and any relevant logs --> <!-- To assist you best, please include commands that you've run, options you've selected and any relevant logs -->
- Host system configuration: - Host system configuration:
- Version of cookiecutter CLI (get it with `cookiecutter --version`): - Version of cookiecutter CLI (get it with `cookiecutter --version`):
- OS name and version: - OS name and version:

View File

@ -1728,5 +1728,10 @@
"name": "Dominique Plante", "name": "Dominique Plante",
"github_login": "dominiqueplante", "github_login": "dominiqueplante",
"twitter_username": "" "twitter_username": ""
},
{
"name": "Lucas Klasa",
"github_login": "lucaskbr",
"twitter_username": ""
} }
] ]

View File

@ -47,6 +47,6 @@ jobs:
- run: uv run ${{ matrix.job.script }} - run: uv run ${{ matrix.job.script }}
- uses: stefanzweifel/git-auto-commit-action@v5 - uses: stefanzweifel/git-auto-commit-action@v6
with: with:
commit_message: Align versions commit_message: Align versions

View File

@ -28,6 +28,6 @@ jobs:
- uses: astral-sh/setup-uv@v6 - uses: astral-sh/setup-uv@v6
- run: uv lock - run: uv lock
- uses: stefanzweifel/git-auto-commit-action@v5 - uses: stefanzweifel/git-auto-commit-action@v6
with: with:
commit_message: Regenerate uv.lock commit_message: Regenerate uv.lock

View File

@ -26,7 +26,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Commit changes - name: Commit changes
uses: stefanzweifel/git-auto-commit-action@v5.0.1 uses: stefanzweifel/git-auto-commit-action@v6
with: with:
commit_message: Update Contributors commit_message: Update Contributors
file_pattern: CONTRIBUTORS.md .github/contributors.json file_pattern: CONTRIBUTORS.md .github/contributors.json

View File

@ -44,7 +44,7 @@ repos:
- id: isort - id: isort
- repo: https://github.com/PyCQA/flake8 - repo: https://github.com/PyCQA/flake8
rev: 7.2.0 rev: 7.3.0
hooks: hooks:
- id: flake8 - id: flake8

View File

@ -3,6 +3,229 @@ All enhancements and patches to Cookiecutter Django will be documented in this f
<!-- GENERATOR_PLACEHOLDER --> <!-- GENERATOR_PLACEHOLDER -->
## 2025.07.27
### Updated
- Update coverage to 7.10.1 ([#5947](https://github.com/cookiecutter/cookiecutter-django/pull/5947))
## 2025.07.25
### Updated
- Update django-anymail to 13.0.1 ([#5946](https://github.com/cookiecutter/cookiecutter-django/pull/5946))
## 2025.07.24
### Updated
- Update coverage to 7.10.0 ([#5944](https://github.com/cookiecutter/cookiecutter-django/pull/5944))
- Update ruff to 0.12.5 ([#5943](https://github.com/cookiecutter/cookiecutter-django/pull/5943))
- Bump traefik from 3.4.4 to 3.5.0 ([#5942](https://github.com/cookiecutter/cookiecutter-django/pull/5942))
## 2025.07.22
### Updated
- Update sentry-sdk to 2.33.2 ([#5941](https://github.com/cookiecutter/cookiecutter-django/pull/5941))
## 2025.07.21
### Updated
- Update sentry-sdk to 2.33.1 ([#5940](https://github.com/cookiecutter/cookiecutter-django/pull/5940))
## 2025.07.18
### Updated
- Update mypy to 1.17.0 ([#5937](https://github.com/cookiecutter/cookiecutter-django/pull/5937))
- Update django-stubs to 5.2.2 ([#5936](https://github.com/cookiecutter/cookiecutter-django/pull/5936))
## 2025.07.17
### Updated
- Update ruff to 0.12.4 ([#5935](https://github.com/cookiecutter/cookiecutter-django/pull/5935))
## 2025.07.16
### Updated
- Update sentry-sdk to 2.33.0 ([#5933](https://github.com/cookiecutter/cookiecutter-django/pull/5933))
## 2025.07.15
### Updated
- Update mypy to 1.16.1 ([#5901](https://github.com/cookiecutter/cookiecutter-django/pull/5901))
- Bump traefik from 3.4.3 to 3.4.4 ([#5930](https://github.com/cookiecutter/cookiecutter-django/pull/5930))
## 2025.07.14
### Changed
- Fix howto docker command ([#5929](https://github.com/cookiecutter/cookiecutter-django/pull/5929))
## 2025.07.11
### Updated
- Update ruff to 0.12.3 ([#5928](https://github.com/cookiecutter/cookiecutter-django/pull/5928))
- Update django-allauth to 65.10.0 ([#5927](https://github.com/cookiecutter/cookiecutter-django/pull/5927))
## 2025.07.05
### Updated
- Update coverage to 7.9.2 ([#5925](https://github.com/cookiecutter/cookiecutter-django/pull/5925))
## 2025.07.04
### Updated
- Update ruff to 0.12.2 ([#5923](https://github.com/cookiecutter/cookiecutter-django/pull/5923))
## 2025.07.02
### Updated
- Update pillow to 11.3.0 ([#5921](https://github.com/cookiecutter/cookiecutter-django/pull/5921))
## 2025.06.30
### Updated
- Bump traefik from 3.4.1 to 3.4.3 ([#5917](https://github.com/cookiecutter/cookiecutter-django/pull/5917))
- Update uvicorn to 0.35.0 ([#5919](https://github.com/cookiecutter/cookiecutter-django/pull/5919))
- Update sentry-sdk to 2.32.0 ([#5918](https://github.com/cookiecutter/cookiecutter-django/pull/5918))
## 2025.06.26
### Updated
- Update ruff to 0.12.1 ([#5916](https://github.com/cookiecutter/cookiecutter-django/pull/5916))
## 2025.06.24
### Updated
- Update sentry-sdk to 2.31.0 ([#5912](https://github.com/cookiecutter/cookiecutter-django/pull/5912))
## 2025.06.19
### Updated
- Update pytest to 8.4.1 ([#5907](https://github.com/cookiecutter/cookiecutter-django/pull/5907))
## 2025.06.18
### Updated
- Update ruff to 0.12.0 ([#5904](https://github.com/cookiecutter/cookiecutter-django/pull/5904))
- Update django-stubs to 5.2.1 ([#5905](https://github.com/cookiecutter/cookiecutter-django/pull/5905))
- Update django-redis to 6.0.0 ([#5903](https://github.com/cookiecutter/cookiecutter-django/pull/5903))
- Update django-webpack-loader to 3.2.1 ([#5902](https://github.com/cookiecutter/cookiecutter-django/pull/5902))
## 2025.06.17
### Updated
- Update django-coverage-plugin to 3.1.1 ([#5900](https://github.com/cookiecutter/cookiecutter-django/pull/5900))
- Update watchfiles to 1.1.0 ([#5899](https://github.com/cookiecutter/cookiecutter-django/pull/5899))
## 2025.06.15
### Updated
- Update coverage to 7.9.1 ([#5898](https://github.com/cookiecutter/cookiecutter-django/pull/5898))
## 2025.06.13
### Updated
- Update coverage to 7.9.0 ([#5897](https://github.com/cookiecutter/cookiecutter-django/pull/5897))
- Update sentry-sdk to 2.30.0 ([#5896](https://github.com/cookiecutter/cookiecutter-django/pull/5896))
## 2025.06.11
### Updated
- Update collectfasta to 3.3.0 ([#5892](https://github.com/cookiecutter/cookiecutter-django/pull/5892))
## 2025.06.10
### Updated
- Update django to 5.1.11 ([#5891](https://github.com/cookiecutter/cookiecutter-django/pull/5891))
- Update crispy-bootstrap5 to 2025.6 ([#5888](https://github.com/cookiecutter/cookiecutter-django/pull/5888))
## 2025.06.06
### Updated
- Update ruff to 0.11.13 ([#5887](https://github.com/cookiecutter/cookiecutter-django/pull/5887))
## 2025.06.05
### Updated
- Bump python from 3.12.10 to 3.12.11 in docs Docker ([#5883](https://github.com/cookiecutter/cookiecutter-django/pull/5883))
- Bump python from 3.12.10 to 3.12.11 in production Docker ([#5884](https://github.com/cookiecutter/cookiecutter-django/pull/5884))
- Bump python from 3.12.10 3.12.11 in local Docker ([#5885](https://github.com/cookiecutter/cookiecutter-django/pull/5885))
- Update django to 5.1.10 ([#5882](https://github.com/cookiecutter/cookiecutter-django/pull/5882))
## 2025.06.04
### Updated
- Update argon2-cffi to 25.1.0 ([#5880](https://github.com/cookiecutter/cookiecutter-django/pull/5880))
- Update pytest to 8.4.0 ([#5881](https://github.com/cookiecutter/cookiecutter-django/pull/5881))
## 2025.06.02 ## 2025.06.02

View File

@ -1510,6 +1510,13 @@ Listed in alphabetical order.
</td> </td>
<td></td> <td></td>
</tr> </tr>
<tr>
<td>Lucas Klasa</td>
<td>
<a href="https://github.com/lucaskbr">lucaskbr</a>
</td>
<td></td>
</tr>
<tr> <tr>
<td>Luis Nell</td> <td>Luis Nell</td>
<td> <td>

View File

@ -1,6 +1,6 @@
[project] [project]
name = "cookiecutter-django" name = "cookiecutter-django"
version = "2025.06.02" version = "2025.07.27"
description = "A Cookiecutter template for creating production-ready Django projects quickly." description = "A Cookiecutter template for creating production-ready Django projects quickly."
readme = "README.md" readme = "README.md"
keywords = [ keywords = [
@ -43,7 +43,7 @@ dependencies = [
"pytest-xdist==3.6.1", "pytest-xdist==3.6.1",
"pyyaml==6.0.2", "pyyaml==6.0.2",
"requests==2.32.3", "requests==2.32.3",
"ruff==0.11.12", "ruff==0.12.5",
"sh==2.1; sys_platform!='win23'", "sh==2.1; sys_platform!='win23'",
"tox==4.23.2", "tox==4.23.2",
"tox-uv>=1.17", "tox-uv>=1.17",

42
uv.lock
View File

@ -182,7 +182,7 @@ wheels = [
[[package]] [[package]]
name = "cookiecutter-django" name = "cookiecutter-django"
version = "2025.6.2" version = "2025.7.27"
source = { virtual = "." } source = { virtual = "." }
dependencies = [ dependencies = [
{ name = "binaryornot" }, { name = "binaryornot" },
@ -229,7 +229,7 @@ requires-dist = [
{ name = "pytest-xdist", specifier = "==3.6.1" }, { name = "pytest-xdist", specifier = "==3.6.1" },
{ name = "pyyaml", specifier = "==6.0.2" }, { name = "pyyaml", specifier = "==6.0.2" },
{ name = "requests", specifier = "==2.32.3" }, { name = "requests", specifier = "==2.32.3" },
{ name = "ruff", specifier = "==0.11.12" }, { name = "ruff", specifier = "==0.12.5" },
{ name = "sh", marker = "sys_platform != 'win23'", specifier = "==2.1" }, { name = "sh", marker = "sys_platform != 'win23'", specifier = "==2.1" },
{ name = "tox", specifier = "==4.23.2" }, { name = "tox", specifier = "==4.23.2" },
{ name = "tox-uv", specifier = ">=1.17" }, { name = "tox-uv", specifier = ">=1.17" },
@ -830,27 +830,27 @@ wheels = [
[[package]] [[package]]
name = "ruff" name = "ruff"
version = "0.11.12" version = "0.12.5"
source = { registry = "https://pypi.org/simple" } source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/15/0a/92416b159ec00cdf11e5882a9d80d29bf84bba3dbebc51c4898bfbca1da6/ruff-0.11.12.tar.gz", hash = "sha256:43cf7f69c7d7c7d7513b9d59c5d8cafd704e05944f978614aa9faff6ac202603", size = 4202289 } sdist = { url = "https://files.pythonhosted.org/packages/30/cd/01015eb5034605fd98d829c5839ec2c6b4582b479707f7c1c2af861e8258/ruff-0.12.5.tar.gz", hash = "sha256:b209db6102b66f13625940b7f8c7d0f18e20039bb7f6101fbdac935c9612057e", size = 5170722 }
wheels = [ wheels = [
{ url = "https://files.pythonhosted.org/packages/60/cc/53eb79f012d15e136d40a8e8fc519ba8f55a057f60b29c2df34efd47c6e3/ruff-0.11.12-py3-none-linux_armv6l.whl", hash = "sha256:c7680aa2f0d4c4f43353d1e72123955c7a2159b8646cd43402de6d4a3a25d7cc", size = 10285597 }, { url = "https://files.pythonhosted.org/packages/d4/de/ad2f68f0798ff15dd8c0bcc2889558970d9a685b3249565a937cd820ad34/ruff-0.12.5-py3-none-linux_armv6l.whl", hash = "sha256:1de2c887e9dec6cb31fcb9948299de5b2db38144e66403b9660c9548a67abd92", size = 11819133 },
{ url = "https://files.pythonhosted.org/packages/e7/d7/73386e9fb0232b015a23f62fea7503f96e29c29e6c45461d4a73bac74df9/ruff-0.11.12-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:2cad64843da9f134565c20bcc430642de897b8ea02e2e79e6e02a76b8dcad7c3", size = 11053154 }, { url = "https://files.pythonhosted.org/packages/f8/fc/c6b65cd0e7fbe60f17e7ad619dca796aa49fbca34bb9bea5f8faf1ec2643/ruff-0.12.5-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:d1ab65e7d8152f519e7dea4de892317c9da7a108da1c56b6a3c1d5e7cf4c5e9a", size = 12501114 },
{ url = "https://files.pythonhosted.org/packages/4e/eb/3eae144c5114e92deb65a0cb2c72326c8469e14991e9bc3ec0349da1331c/ruff-0.11.12-py3-none-macosx_11_0_arm64.whl", hash = "sha256:9b6886b524a1c659cee1758140138455d3c029783d1b9e643f3624a5ee0cb0aa", size = 10403048 }, { url = "https://files.pythonhosted.org/packages/c5/de/c6bec1dce5ead9f9e6a946ea15e8d698c35f19edc508289d70a577921b30/ruff-0.12.5-py3-none-macosx_11_0_arm64.whl", hash = "sha256:962775ed5b27c7aa3fdc0d8f4d4433deae7659ef99ea20f783d666e77338b8cf", size = 11716873 },
{ url = "https://files.pythonhosted.org/packages/29/64/20c54b20e58b1058db6689e94731f2a22e9f7abab74e1a758dfba058b6ca/ruff-0.11.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3cc3a3690aad6e86c1958d3ec3c38c4594b6ecec75c1f531e84160bd827b2012", size = 10597062 }, { url = "https://files.pythonhosted.org/packages/a1/16/cf372d2ebe91e4eb5b82a2275c3acfa879e0566a7ac94d331ea37b765ac8/ruff-0.12.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b4cae449597e7195a49eb1cdca89fd9fbb16140c7579899e87f4c85bf82f73", size = 11958829 },
{ url = "https://files.pythonhosted.org/packages/29/3a/79fa6a9a39422a400564ca7233a689a151f1039110f0bbbabcb38106883a/ruff-0.11.12-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f97fdbc2549f456c65b3b0048560d44ddd540db1f27c778a938371424b49fe4a", size = 10155152 }, { url = "https://files.pythonhosted.org/packages/25/bf/cd07e8f6a3a6ec746c62556b4c4b79eeb9b0328b362bb8431b7b8afd3856/ruff-0.12.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b13489c3dc50de5e2d40110c0cce371e00186b880842e245186ca862bf9a1ac", size = 11626619 },
{ url = "https://files.pythonhosted.org/packages/e5/a4/22c2c97b2340aa968af3a39bc38045e78d36abd4ed3fa2bde91c31e712e3/ruff-0.11.12-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:74adf84960236961090e2d1348c1a67d940fd12e811a33fb3d107df61eef8fc7", size = 11723067 }, { url = "https://files.pythonhosted.org/packages/d8/c9/c2ccb3b8cbb5661ffda6925f81a13edbb786e623876141b04919d1128370/ruff-0.12.5-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1504fea81461cf4841778b3ef0a078757602a3b3ea4b008feb1308cb3f23e08", size = 13221894 },
{ url = "https://files.pythonhosted.org/packages/bc/cf/3e452fbd9597bcd8058856ecd42b22751749d07935793a1856d988154151/ruff-0.11.12-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:b56697e5b8bcf1d61293ccfe63873aba08fdbcbbba839fc046ec5926bdb25a3a", size = 12460807 }, { url = "https://files.pythonhosted.org/packages/6b/58/68a5be2c8e5590ecdad922b2bcd5583af19ba648f7648f95c51c3c1eca81/ruff-0.12.5-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:c7da4129016ae26c32dfcbd5b671fe652b5ab7fc40095d80dcff78175e7eddd4", size = 14163909 },
{ url = "https://files.pythonhosted.org/packages/2f/ec/8f170381a15e1eb7d93cb4feef8d17334d5a1eb33fee273aee5d1f8241a3/ruff-0.11.12-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4d47afa45e7b0eaf5e5969c6b39cbd108be83910b5c74626247e366fd7a36a13", size = 12063261 }, { url = "https://files.pythonhosted.org/packages/bd/d1/ef6b19622009ba8386fdb792c0743f709cf917b0b2f1400589cbe4739a33/ruff-0.12.5-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ca972c80f7ebcfd8af75a0f18b17c42d9f1ef203d163669150453f50ca98ab7b", size = 13583652 },
{ url = "https://files.pythonhosted.org/packages/0d/bf/57208f8c0a8153a14652a85f4116c0002148e83770d7a41f2e90b52d2b4e/ruff-0.11.12-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bf9603fe1bf949de8b09a2da896f05c01ed7a187f4a386cdba6760e7f61be", size = 11329601 }, { url = "https://files.pythonhosted.org/packages/62/e3/1c98c566fe6809a0c83751d825a03727f242cdbe0d142c9e292725585521/ruff-0.12.5-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8dbbf9f25dfb501f4237ae7501d6364b76a01341c6f1b2cd6764fe449124bb2a", size = 12700451 },
{ url = "https://files.pythonhosted.org/packages/c3/56/edf942f7fdac5888094d9ffa303f12096f1a93eb46570bcf5f14c0c70880/ruff-0.11.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:08033320e979df3b20dba567c62f69c45e01df708b0f9c83912d7abd3e0801cd", size = 11522186 }, { url = "https://files.pythonhosted.org/packages/24/ff/96058f6506aac0fbc0d0fc0d60b0d0bd746240a0594657a2d94ad28033ba/ruff-0.12.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c47dea6ae39421851685141ba9734767f960113d51e83fd7bb9958d5be8763a", size = 12937465 },
{ url = "https://files.pythonhosted.org/packages/ed/63/79ffef65246911ed7e2290aeece48739d9603b3a35f9529fec0fc6c26400/ruff-0.11.12-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:929b7706584f5bfd61d67d5070f399057d07c70585fa8c4491d78ada452d3bef", size = 10449032 }, { url = "https://files.pythonhosted.org/packages/eb/d3/68bc5e7ab96c94b3589d1789f2dd6dd4b27b263310019529ac9be1e8f31b/ruff-0.12.5-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:c5076aa0e61e30f848846f0265c873c249d4b558105b221be1828f9f79903dc5", size = 11771136 },
{ url = "https://files.pythonhosted.org/packages/88/19/8c9d4d8a1c2a3f5a1ea45a64b42593d50e28b8e038f1aafd65d6b43647f3/ruff-0.11.12-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:7de4a73205dc5756b8e09ee3ed67c38312dce1aa28972b93150f5751199981b5", size = 10129370 }, { url = "https://files.pythonhosted.org/packages/52/75/7356af30a14584981cabfefcf6106dea98cec9a7af4acb5daaf4b114845f/ruff-0.12.5-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:a5a4c7830dadd3d8c39b1cc85386e2c1e62344f20766be6f173c22fb5f72f293", size = 11601644 },
{ url = "https://files.pythonhosted.org/packages/bc/0f/2d15533eaa18f460530a857e1778900cd867ded67f16c85723569d54e410/ruff-0.11.12-py3-none-musllinux_1_2_i686.whl", hash = "sha256:2635c2a90ac1b8ca9e93b70af59dfd1dd2026a40e2d6eebaa3efb0465dd9cf02", size = 11123529 }, { url = "https://files.pythonhosted.org/packages/c2/67/91c71d27205871737cae11025ee2b098f512104e26ffd8656fd93d0ada0a/ruff-0.12.5-py3-none-musllinux_1_2_i686.whl", hash = "sha256:46699f73c2b5b137b9dc0fc1a190b43e35b008b398c6066ea1350cce6326adcb", size = 12478068 },
{ url = "https://files.pythonhosted.org/packages/4f/e2/4c2ac669534bdded835356813f48ea33cfb3a947dc47f270038364587088/ruff-0.11.12-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:d05d6a78a89166f03f03a198ecc9d18779076ad0eec476819467acb401028c0c", size = 11577642 }, { url = "https://files.pythonhosted.org/packages/34/04/b6b00383cf2f48e8e78e14eb258942fdf2a9bf0287fbf5cdd398b749193a/ruff-0.12.5-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5a655a0a0d396f0f072faafc18ebd59adde8ca85fb848dc1b0d9f024b9c4d3bb", size = 12991537 },
{ url = "https://files.pythonhosted.org/packages/a7/9b/c9ddf7f924d5617a1c94a93ba595f4b24cb5bc50e98b94433ab3f7ad27e5/ruff-0.11.12-py3-none-win32.whl", hash = "sha256:f5a07f49767c4be4772d161bfc049c1f242db0cfe1bd976e0f0886732a4765d6", size = 10475511 }, { url = "https://files.pythonhosted.org/packages/3e/b9/053d6445dc7544fb6594785056d8ece61daae7214859ada4a152ad56b6e0/ruff-0.12.5-py3-none-win32.whl", hash = "sha256:dfeb2627c459b0b78ca2bbdc38dd11cc9a0a88bf91db982058b26ce41714ffa9", size = 11751575 },
{ url = "https://files.pythonhosted.org/packages/fd/d6/74fb6d3470c1aada019ffff33c0f9210af746cca0a4de19a1f10ce54968a/ruff-0.11.12-py3-none-win_amd64.whl", hash = "sha256:5a4d9f8030d8c3a45df201d7fb3ed38d0219bccd7955268e863ee4a115fa0832", size = 11523573 }, { url = "https://files.pythonhosted.org/packages/bc/0f/ab16e8259493137598b9149734fec2e06fdeda9837e6f634f5c4e35916da/ruff-0.12.5-py3-none-win_amd64.whl", hash = "sha256:ae0d90cf5f49466c954991b9d8b953bd093c32c27608e409ae3564c63c5306a5", size = 12882273 },
{ url = "https://files.pythonhosted.org/packages/44/42/d58086ec20f52d2b0140752ae54b355ea2be2ed46f914231136dd1effcc7/ruff-0.11.12-py3-none-win_arm64.whl", hash = "sha256:65194e37853158d368e333ba282217941029a28ea90913c67e558c611d04daa5", size = 10697770 }, { url = "https://files.pythonhosted.org/packages/00/db/c376b0661c24cf770cb8815268190668ec1330eba8374a126ceef8c72d55/ruff-0.12.5-py3-none-win_arm64.whl", hash = "sha256:48cdbfc633de2c5c37d9f090ba3b352d1576b0015bfc3bc98eaf230275b7e805", size = 11951564 },
] ]
[[package]] [[package]]

View File

@ -36,10 +36,10 @@ repos:
# Run the Ruff linter. # Run the Ruff linter.
- repo: https://github.com/astral-sh/ruff-pre-commit - repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.11.12 rev: v0.12.5
hooks: hooks:
# Linter # Linter
- id: ruff - id: ruff-check
args: [--fix, --exit-non-zero-on-fix] args: [--fix, --exit-non-zero-on-fix]
# Formatter # Formatter
- id: ruff-format - id: ruff-format

View File

@ -1,5 +1,5 @@
# define an alias for the specific python version used in this file. # define an alias for the specific python version used in this file.
FROM docker.io/python:3.12.10-slim-bookworm AS python FROM docker.io/python:3.12.11-slim-bookworm AS python
# Python build stage # Python build stage
FROM python AS python-build-stage FROM python AS python-build-stage

View File

@ -1,5 +1,5 @@
# define an alias for the specific python version used in this file. # define an alias for the specific python version used in this file.
FROM docker.io/python:3.12.10-slim-bookworm AS python FROM docker.io/python:3.12.11-slim-bookworm AS python
# Python build stage # Python build stage

View File

@ -25,7 +25,7 @@ RUN npm run build
{%- endif %} {%- endif %}
# define an alias for the specific python version used in this file. # define an alias for the specific python version used in this file.
FROM docker.io/python:3.12.10-slim-bookworm AS python FROM docker.io/python:3.12.11-slim-bookworm AS python
# Python build stage # Python build stage
FROM python AS python-build-stage FROM python AS python-build-stage

View File

@ -1,4 +1,4 @@
FROM docker.io/traefik:3.4.1 FROM docker.io/traefik:3.5.0
RUN mkdir -p /etc/traefik/acme \ RUN mkdir -p /etc/traefik/acme \
&& touch /etc/traefik/acme/acme.json \ && touch /etc/traefik/acme/acme.json \
&& chmod 600 /etc/traefik/acme/acme.json && chmod 600 /etc/traefik/acme/acme.json

View File

@ -17,9 +17,9 @@ app.config_from_object("django.conf:settings", namespace="CELERY")
@setup_logging.connect @setup_logging.connect
def config_loggers(*args, **kwargs): def config_loggers(*args, **kwargs):
from logging.config import dictConfig from logging.config import dictConfig # noqa: PLC0415
from django.conf import settings from django.conf import settings # noqa: PLC0415
dictConfig(settings.LOGGING) dictConfig(settings.LOGGING)

View File

@ -1,4 +1,3 @@
# ruff: noqa: E501
from .base import * # noqa: F403 from .base import * # noqa: F403
from .base import INSTALLED_APPS from .base import INSTALLED_APPS
from .base import MIDDLEWARE from .base import MIDDLEWARE
@ -79,7 +78,7 @@ if env("USE_DOCKER") == "yes":
import socket import socket
hostname, _, ips = socket.gethostbyname_ex(socket.gethostname()) hostname, _, ips = socket.gethostbyname_ex(socket.gethostname())
INTERNAL_IPS += [".".join(ip.split(".")[:-1] + ["1"]) for ip in ips] INTERNAL_IPS += [".".join([*ip.split(".")[:-1], "1"]) for ip in ips]
{%- if cookiecutter.frontend_pipeline in ['Gulp', 'Webpack'] %} {%- if cookiecutter.frontend_pipeline in ['Gulp', 'Webpack'] %}
try: try:
_, _, ips = socket.gethostbyname_ex("node") _, _, ips = socket.gethostbyname_ex("node")

View File

@ -15,7 +15,7 @@ from inside the `{{cookiecutter.project_slug}}/docs` directory.
{% else %} {% else %}
To build and serve docs, use the commands:: To build and serve docs, use the commands::
docker compose -f docker-compose.local.yml up docs docker compose -f docker-compose.docs.yml up
{% endif %} {% endif %}

View File

@ -10,7 +10,7 @@ def main():
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.local") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.local")
try: try:
from django.core.management import execute_from_command_line from django.core.management import execute_from_command_line # noqa: PLC0415
except ImportError as exc: except ImportError as exc:
raise ImportError( # noqa: TRY003 raise ImportError( # noqa: TRY003
"Couldn't import Django. Are you sure it's installed and " # noqa: EM101 "Couldn't import Django. Are you sure it's installed and " # noqa: EM101

View File

@ -1,5 +1,5 @@
python-slugify==8.0.4 # https://github.com/un33k/python-slugify python-slugify==8.0.4 # https://github.com/un33k/python-slugify
Pillow==11.2.1 # pyup: != 11.2.0 # https://github.com/python-pillow/Pillow Pillow==11.3.0 # pyup: != 11.2.0 # https://github.com/python-pillow/Pillow
{%- if cookiecutter.frontend_pipeline == 'Django Compressor' %} {%- if cookiecutter.frontend_pipeline == 'Django Compressor' %}
{%- if cookiecutter.windows == 'y' and cookiecutter.use_docker == 'n' %} {%- if cookiecutter.windows == 'y' and cookiecutter.use_docker == 'n' %}
rcssmin==1.1.2 --install-option="--without-c-extensions" # https://github.com/ndparker/rcssmin rcssmin==1.1.2 --install-option="--without-c-extensions" # https://github.com/ndparker/rcssmin
@ -7,7 +7,7 @@ rcssmin==1.1.2 --install-option="--without-c-extensions" # https://github.com/n
rcssmin==1.1.2 # https://github.com/ndparker/rcssmin rcssmin==1.1.2 # https://github.com/ndparker/rcssmin
{%- endif %} {%- endif %}
{%- endif %} {%- endif %}
argon2-cffi==23.1.0 # https://github.com/hynek/argon2_cffi argon2-cffi==25.1.0 # https://github.com/hynek/argon2_cffi
{%- if cookiecutter.use_whitenoise == 'y' %} {%- if cookiecutter.use_whitenoise == 'y' %}
whitenoise==6.9.0 # https://github.com/evansd/whitenoise whitenoise==6.9.0 # https://github.com/evansd/whitenoise
{%- endif %} {%- endif %}
@ -23,22 +23,22 @@ flower==2.0.1 # https://github.com/mher/flower
{%- endif %} {%- endif %}
{%- endif %} {%- endif %}
{%- if cookiecutter.use_async == 'y' %} {%- if cookiecutter.use_async == 'y' %}
uvicorn[standard]==0.34.3 # https://github.com/encode/uvicorn uvicorn[standard]==0.35.0 # https://github.com/encode/uvicorn
uvicorn-worker==0.3.0 # https://github.com/Kludex/uvicorn-worker uvicorn-worker==0.3.0 # https://github.com/Kludex/uvicorn-worker
{%- endif %} {%- endif %}
# Django # Django
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
django==5.1.9 # pyup: < 5.2 # https://www.djangoproject.com/ django==5.1.11 # pyup: < 5.2 # https://www.djangoproject.com/
django-environ==0.12.0 # https://github.com/joke2k/django-environ django-environ==0.12.0 # https://github.com/joke2k/django-environ
django-model-utils==5.0.0 # https://github.com/jazzband/django-model-utils django-model-utils==5.0.0 # https://github.com/jazzband/django-model-utils
django-allauth[mfa]==65.9.0 # https://github.com/pennersr/django-allauth django-allauth[mfa]==65.10.0 # https://github.com/pennersr/django-allauth
django-crispy-forms==2.4 # https://github.com/django-crispy-forms/django-crispy-forms django-crispy-forms==2.4 # https://github.com/django-crispy-forms/django-crispy-forms
crispy-bootstrap5==2025.4 # https://github.com/django-crispy-forms/crispy-bootstrap5 crispy-bootstrap5==2025.6 # https://github.com/django-crispy-forms/crispy-bootstrap5
{%- if cookiecutter.frontend_pipeline == 'Django Compressor' %} {%- if cookiecutter.frontend_pipeline == 'Django Compressor' %}
django-compressor==4.5.1 # https://github.com/django-compressor/django-compressor django-compressor==4.5.1 # https://github.com/django-compressor/django-compressor
{%- endif %} {%- endif %}
django-redis==5.4.0 # https://github.com/jazzband/django-redis django-redis==6.0.0 # https://github.com/jazzband/django-redis
{%- if cookiecutter.use_drf == 'y' %} {%- if cookiecutter.use_drf == 'y' %}
# Django REST Framework # Django REST Framework
djangorestframework==3.16.0 # https://github.com/encode/django-rest-framework djangorestframework==3.16.0 # https://github.com/encode/django-rest-framework
@ -47,5 +47,5 @@ django-cors-headers==4.7.0 # https://github.com/adamchainz/django-cors-headers
drf-spectacular==0.28.0 # https://github.com/tfranzel/drf-spectacular drf-spectacular==0.28.0 # https://github.com/tfranzel/drf-spectacular
{%- endif %} {%- endif %}
{%- if cookiecutter.frontend_pipeline == 'Webpack' %} {%- if cookiecutter.frontend_pipeline == 'Webpack' %}
django-webpack-loader==3.2.0 # https://github.com/django-webpack/django-webpack-loader django-webpack-loader==3.2.1 # https://github.com/django-webpack/django-webpack-loader
{%- endif %} {%- endif %}

View File

@ -8,14 +8,14 @@ psycopg[c]==3.2.9 # https://github.com/psycopg/psycopg
psycopg[binary]==3.2.9 # https://github.com/psycopg/psycopg psycopg[binary]==3.2.9 # https://github.com/psycopg/psycopg
{%- endif %} {%- endif %}
{%- if cookiecutter.use_async == 'y' or cookiecutter.use_celery == 'y' %} {%- if cookiecutter.use_async == 'y' or cookiecutter.use_celery == 'y' %}
watchfiles==1.0.5 # https://github.com/samuelcolvin/watchfiles watchfiles==1.1.0 # https://github.com/samuelcolvin/watchfiles
{%- endif %} {%- endif %}
# Testing # Testing
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
mypy==1.15.0 # https://github.com/python/mypy mypy==1.17.0 # https://github.com/python/mypy
django-stubs[compatible-mypy]==5.2.0 # https://github.com/typeddjango/django-stubs django-stubs[compatible-mypy]==5.2.2 # https://github.com/typeddjango/django-stubs
pytest==8.3.5 # https://github.com/pytest-dev/pytest pytest==8.4.1 # https://github.com/pytest-dev/pytest
pytest-sugar==1.0.0 # https://github.com/Teemu/pytest-sugar pytest-sugar==1.0.0 # https://github.com/Teemu/pytest-sugar
{%- if cookiecutter.use_drf == "y" %} {%- if cookiecutter.use_drf == "y" %}
djangorestframework-stubs==3.16.0 # https://github.com/typeddjango/djangorestframework-stubs djangorestframework-stubs==3.16.0 # https://github.com/typeddjango/djangorestframework-stubs
@ -28,8 +28,8 @@ sphinx-autobuild==2024.10.3 # https://github.com/GaretJax/sphinx-autobuild
# Code quality # Code quality
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
ruff==0.11.12 # https://github.com/astral-sh/ruff ruff==0.12.5 # https://github.com/astral-sh/ruff
coverage==7.8.2 # https://github.com/nedbat/coveragepy coverage==7.10.1 # https://github.com/nedbat/coveragepy
djlint==1.36.4 # https://github.com/Riverside-Healthcare/djLint djlint==1.36.4 # https://github.com/Riverside-Healthcare/djLint
pre-commit==4.2.0 # https://github.com/pre-commit/pre-commit pre-commit==4.2.0 # https://github.com/pre-commit/pre-commit
@ -39,5 +39,5 @@ factory-boy==3.3.2 # https://github.com/FactoryBoy/factory_boy
django-debug-toolbar==5.2.0 # https://github.com/jazzband/django-debug-toolbar django-debug-toolbar==5.2.0 # https://github.com/jazzband/django-debug-toolbar
django-extensions==4.1 # https://github.com/django-extensions/django-extensions django-extensions==4.1 # https://github.com/django-extensions/django-extensions
django-coverage-plugin==3.1.0 # https://github.com/nedbat/django_coverage_plugin django-coverage-plugin==3.1.1 # https://github.com/nedbat/django_coverage_plugin
pytest-django==4.11.1 # https://github.com/pytest-dev/pytest-django pytest-django==4.11.1 # https://github.com/pytest-dev/pytest-django

View File

@ -5,10 +5,10 @@
gunicorn==23.0.0 # https://github.com/benoitc/gunicorn gunicorn==23.0.0 # https://github.com/benoitc/gunicorn
psycopg[c]==3.2.9 # https://github.com/psycopg/psycopg psycopg[c]==3.2.9 # https://github.com/psycopg/psycopg
{%- if cookiecutter.use_whitenoise == 'n'and cookiecutter.cloud_provider in ('AWS', 'GCP') %} {%- if cookiecutter.use_whitenoise == 'n'and cookiecutter.cloud_provider in ('AWS', 'GCP') %}
Collectfasta==3.2.1 # https://github.com/jasongi/collectfasta Collectfasta==3.3.0 # https://github.com/jasongi/collectfasta
{%- endif %} {%- endif %}
{%- if cookiecutter.use_sentry == "y" %} {%- if cookiecutter.use_sentry == "y" %}
sentry-sdk==2.29.1 # https://github.com/getsentry/sentry-python sentry-sdk==2.33.2 # https://github.com/getsentry/sentry-python
{%- endif %} {%- endif %}
{%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %} {%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %}
hiredis==3.2.1 # https://github.com/redis/hiredis-py hiredis==3.2.1 # https://github.com/redis/hiredis-py
@ -24,21 +24,21 @@ django-storages[google]==1.14.6 # https://github.com/jschneier/django-storages
django-storages[azure]==1.14.6 # https://github.com/jschneier/django-storages django-storages[azure]==1.14.6 # https://github.com/jschneier/django-storages
{%- endif %} {%- endif %}
{%- if cookiecutter.mail_service == 'Mailgun' %} {%- if cookiecutter.mail_service == 'Mailgun' %}
django-anymail[mailgun]==13.0 # https://github.com/anymail/django-anymail django-anymail[mailgun]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Amazon SES' %} {%- elif cookiecutter.mail_service == 'Amazon SES' %}
django-anymail[amazon-ses]==13.0 # https://github.com/anymail/django-anymail django-anymail[amazon-ses]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Mailjet' %} {%- elif cookiecutter.mail_service == 'Mailjet' %}
django-anymail[mailjet]==13.0 # https://github.com/anymail/django-anymail django-anymail[mailjet]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Mandrill' %} {%- elif cookiecutter.mail_service == 'Mandrill' %}
django-anymail[mandrill]==13.0 # https://github.com/anymail/django-anymail django-anymail[mandrill]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Postmark' %} {%- elif cookiecutter.mail_service == 'Postmark' %}
django-anymail[postmark]==13.0 # https://github.com/anymail/django-anymail django-anymail[postmark]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Sendgrid' %} {%- elif cookiecutter.mail_service == 'Sendgrid' %}
django-anymail[sendgrid]==13.0 # https://github.com/anymail/django-anymail django-anymail[sendgrid]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Brevo' %} {%- elif cookiecutter.mail_service == 'Brevo' %}
django-anymail[brevo]==13.0 # https://github.com/anymail/django-anymail django-anymail[brevo]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'SparkPost' %} {%- elif cookiecutter.mail_service == 'SparkPost' %}
django-anymail[sparkpost]==13.0 # https://github.com/anymail/django-anymail django-anymail[sparkpost]==13.0.1 # https://github.com/anymail/django-anymail
{%- elif cookiecutter.mail_service == 'Other SMTP' %} {%- elif cookiecutter.mail_service == 'Other SMTP' %}
django-anymail==13.0 # https://github.com/anymail/django-anymail django-anymail==13.0.1 # https://github.com/anymail/django-anymail
{%- endif %} {%- endif %}

View File

@ -10,4 +10,4 @@ class UsersConfig(AppConfig):
def ready(self): def ready(self):
with contextlib.suppress(ImportError): with contextlib.suppress(ImportError):
import {{ cookiecutter.project_slug }}.users.signals # noqa: F401 import {{ cookiecutter.project_slug }}.users.signals # noqa: F401, PLC0415

View File

@ -60,7 +60,7 @@ class TestUserAdmin:
def _force_allauth(self, settings): def _force_allauth(self, settings):
settings.DJANGO_ADMIN_FORCE_ALLAUTH = True settings.DJANGO_ADMIN_FORCE_ALLAUTH = True
# Reload the admin module to apply the setting change # Reload the admin module to apply the setting change
import {{ cookiecutter.project_slug }}.users.admin as users_admin import {{ cookiecutter.project_slug }}.users.admin as users_admin # noqa: PLC0415
with contextlib.suppress(admin.sites.AlreadyRegistered): # type: ignore[attr-defined] with contextlib.suppress(admin.sites.AlreadyRegistered): # type: ignore[attr-defined]
reload(users_admin) reload(users_admin)