mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2025-07-30 17:59:48 +03:00
Compare commits
58 Commits
2025.06.11
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
e682a9b7a9 | ||
|
c1873d9f2f | ||
|
5fae47541d | ||
|
082a17a58c | ||
|
cac469c6ba | ||
|
539c7f6f46 | ||
|
068315e284 | ||
|
b2849637ce | ||
|
d93c080e57 | ||
|
bf5687912c | ||
|
95ac5a80fb | ||
|
bc88cbac97 | ||
|
567e00f197 | ||
|
1fd01711f3 | ||
|
b2e95216e5 | ||
|
a990561d40 | ||
|
480c29f760 | ||
|
c5fba924ba | ||
|
7fc9e0867f | ||
|
4f8e109b2f | ||
|
e27e6bf8f7 | ||
|
821224226f | ||
|
8e46a8f390 | ||
|
fc494593b1 | ||
|
34e255dbe0 | ||
|
f7e540dc8d | ||
|
3e02c2037b | ||
|
da2a659dee | ||
|
d976c052c8 | ||
|
708eb4ccf8 | ||
|
277537889e | ||
|
2b38fac5c7 | ||
|
533a6bf1a8 | ||
|
d2d7927414 | ||
|
ac8b3d64b6 | ||
|
bfd8d00707 | ||
|
00fb4e01b0 | ||
|
01e3cf72d2 | ||
|
f98b2c2a53 | ||
|
3902307653 | ||
|
8b54050e07 | ||
|
fb1c8307be | ||
|
e7b81d2e07 | ||
|
85a01f5f1a | ||
|
e23eee2d85 | ||
|
fc39cfa33e | ||
|
7a41c46259 | ||
|
7a0e73640d | ||
|
cd06bde587 | ||
|
56690fa4f9 | ||
|
4950e2bbd3 | ||
|
25a30c9a9e | ||
|
b32ce8d5be | ||
|
4f850d953d | ||
|
55fa9189e6 | ||
|
cbf309713e | ||
|
5737722073 | ||
|
c266a7a761 |
1
.github/ISSUE_TEMPLATE/bug.md
vendored
1
.github/ISSUE_TEMPLATE/bug.md
vendored
|
@ -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 -->
|
||||
|
||||
- Host system configuration:
|
||||
|
||||
- Version of cookiecutter CLI (get it with `cookiecutter --version`):
|
||||
- OS name and version:
|
||||
|
||||
|
|
5
.github/contributors.json
vendored
5
.github/contributors.json
vendored
|
@ -1728,5 +1728,10 @@
|
|||
"name": "Dominique Plante",
|
||||
"github_login": "dominiqueplante",
|
||||
"twitter_username": ""
|
||||
},
|
||||
{
|
||||
"name": "Lucas Klasa",
|
||||
"github_login": "lucaskbr",
|
||||
"twitter_username": ""
|
||||
}
|
||||
]
|
|
@ -44,7 +44,7 @@ repos:
|
|||
- id: isort
|
||||
|
||||
- repo: https://github.com/PyCQA/flake8
|
||||
rev: 7.2.0
|
||||
rev: 7.3.0
|
||||
hooks:
|
||||
- id: flake8
|
||||
|
||||
|
|
178
CHANGELOG.md
178
CHANGELOG.md
|
@ -3,6 +3,184 @@ All enhancements and patches to Cookiecutter Django will be documented in this f
|
|||
|
||||
<!-- 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
|
||||
|
||||
|
||||
|
|
|
@ -1510,6 +1510,13 @@ Listed in alphabetical order.
|
|||
</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Lucas Klasa</td>
|
||||
<td>
|
||||
<a href="https://github.com/lucaskbr">lucaskbr</a>
|
||||
</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Luis Nell</td>
|
||||
<td>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[project]
|
||||
name = "cookiecutter-django"
|
||||
version = "2025.06.11"
|
||||
version = "2025.07.27"
|
||||
description = "A Cookiecutter template for creating production-ready Django projects quickly."
|
||||
readme = "README.md"
|
||||
keywords = [
|
||||
|
@ -43,7 +43,7 @@ dependencies = [
|
|||
"pytest-xdist==3.6.1",
|
||||
"pyyaml==6.0.2",
|
||||
"requests==2.32.3",
|
||||
"ruff==0.11.13",
|
||||
"ruff==0.12.5",
|
||||
"sh==2.1; sys_platform!='win23'",
|
||||
"tox==4.23.2",
|
||||
"tox-uv>=1.17",
|
||||
|
|
42
uv.lock
42
uv.lock
|
@ -182,7 +182,7 @@ wheels = [
|
|||
|
||||
[[package]]
|
||||
name = "cookiecutter-django"
|
||||
version = "2025.6.11"
|
||||
version = "2025.7.27"
|
||||
source = { virtual = "." }
|
||||
dependencies = [
|
||||
{ name = "binaryornot" },
|
||||
|
@ -229,7 +229,7 @@ requires-dist = [
|
|||
{ name = "pytest-xdist", specifier = "==3.6.1" },
|
||||
{ name = "pyyaml", specifier = "==6.0.2" },
|
||||
{ name = "requests", specifier = "==2.32.3" },
|
||||
{ name = "ruff", specifier = "==0.11.13" },
|
||||
{ name = "ruff", specifier = "==0.12.5" },
|
||||
{ name = "sh", marker = "sys_platform != 'win23'", specifier = "==2.1" },
|
||||
{ name = "tox", specifier = "==4.23.2" },
|
||||
{ name = "tox-uv", specifier = ">=1.17" },
|
||||
|
@ -830,27 +830,27 @@ wheels = [
|
|||
|
||||
[[package]]
|
||||
name = "ruff"
|
||||
version = "0.11.13"
|
||||
version = "0.12.5"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/ed/da/9c6f995903b4d9474b39da91d2d626659af3ff1eeb43e9ae7c119349dba6/ruff-0.11.13.tar.gz", hash = "sha256:26fa247dc68d1d4e72c179e08889a25ac0c7ba4d78aecfc835d49cbfd60bf514", size = 4282054 }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/30/cd/01015eb5034605fd98d829c5839ec2c6b4582b479707f7c1c2af861e8258/ruff-0.12.5.tar.gz", hash = "sha256:b209db6102b66f13625940b7f8c7d0f18e20039bb7f6101fbdac935c9612057e", size = 5170722 }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/7d/ce/a11d381192966e0b4290842cc8d4fac7dc9214ddf627c11c1afff87da29b/ruff-0.11.13-py3-none-linux_armv6l.whl", hash = "sha256:4bdfbf1240533f40042ec00c9e09a3aade6f8c10b6414cf11b519488d2635d46", size = 10292516 },
|
||||
{ url = "https://files.pythonhosted.org/packages/78/db/87c3b59b0d4e753e40b6a3b4a2642dfd1dcaefbff121ddc64d6c8b47ba00/ruff-0.11.13-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:aef9c9ed1b5ca28bb15c7eac83b8670cf3b20b478195bd49c8d756ba0a36cf48", size = 11106083 },
|
||||
{ url = "https://files.pythonhosted.org/packages/77/79/d8cec175856ff810a19825d09ce700265f905c643c69f45d2b737e4a470a/ruff-0.11.13-py3-none-macosx_11_0_arm64.whl", hash = "sha256:53b15a9dfdce029c842e9a5aebc3855e9ab7771395979ff85b7c1dedb53ddc2b", size = 10436024 },
|
||||
{ url = "https://files.pythonhosted.org/packages/8b/5b/f6d94f2980fa1ee854b41568368a2e1252681b9238ab2895e133d303538f/ruff-0.11.13-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ab153241400789138d13f362c43f7edecc0edfffce2afa6a68434000ecd8f69a", size = 10646324 },
|
||||
{ url = "https://files.pythonhosted.org/packages/6c/9c/b4c2acf24ea4426016d511dfdc787f4ce1ceb835f3c5fbdbcb32b1c63bda/ruff-0.11.13-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6c51f93029d54a910d3d24f7dd0bb909e31b6cd989a5e4ac513f4eb41629f0dc", size = 10174416 },
|
||||
{ url = "https://files.pythonhosted.org/packages/f3/10/e2e62f77c65ede8cd032c2ca39c41f48feabedb6e282bfd6073d81bb671d/ruff-0.11.13-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1808b3ed53e1a777c2ef733aca9051dc9bf7c99b26ece15cb59a0320fbdbd629", size = 11724197 },
|
||||
{ url = "https://files.pythonhosted.org/packages/bb/f0/466fe8469b85c561e081d798c45f8a1d21e0b4a5ef795a1d7f1a9a9ec182/ruff-0.11.13-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:d28ce58b5ecf0f43c1b71edffabe6ed7f245d5336b17805803312ec9bc665933", size = 12511615 },
|
||||
{ url = "https://files.pythonhosted.org/packages/17/0e/cefe778b46dbd0cbcb03a839946c8f80a06f7968eb298aa4d1a4293f3448/ruff-0.11.13-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:55e4bc3a77842da33c16d55b32c6cac1ec5fb0fbec9c8c513bdce76c4f922165", size = 12117080 },
|
||||
{ url = "https://files.pythonhosted.org/packages/5d/2c/caaeda564cbe103bed145ea557cb86795b18651b0f6b3ff6a10e84e5a33f/ruff-0.11.13-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:633bf2c6f35678c56ec73189ba6fa19ff1c5e4807a78bf60ef487b9dd272cc71", size = 11326315 },
|
||||
{ url = "https://files.pythonhosted.org/packages/75/f0/782e7d681d660eda8c536962920c41309e6dd4ebcea9a2714ed5127d44bd/ruff-0.11.13-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ffbc82d70424b275b089166310448051afdc6e914fdab90e08df66c43bb5ca9", size = 11555640 },
|
||||
{ url = "https://files.pythonhosted.org/packages/5d/d4/3d580c616316c7f07fb3c99dbecfe01fbaea7b6fd9a82b801e72e5de742a/ruff-0.11.13-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:4a9ddd3ec62a9a89578c85842b836e4ac832d4a2e0bfaad3b02243f930ceafcc", size = 10507364 },
|
||||
{ url = "https://files.pythonhosted.org/packages/5a/dc/195e6f17d7b3ea6b12dc4f3e9de575db7983db187c378d44606e5d503319/ruff-0.11.13-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:d237a496e0778d719efb05058c64d28b757c77824e04ffe8796c7436e26712b7", size = 10141462 },
|
||||
{ url = "https://files.pythonhosted.org/packages/f4/8e/39a094af6967faa57ecdeacb91bedfb232474ff8c3d20f16a5514e6b3534/ruff-0.11.13-py3-none-musllinux_1_2_i686.whl", hash = "sha256:26816a218ca6ef02142343fd24c70f7cd8c5aa6c203bca284407adf675984432", size = 11121028 },
|
||||
{ url = "https://files.pythonhosted.org/packages/5a/c0/b0b508193b0e8a1654ec683ebab18d309861f8bd64e3a2f9648b80d392cb/ruff-0.11.13-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:51c3f95abd9331dc5b87c47ac7f376db5616041173826dfd556cfe3d4977f492", size = 11602992 },
|
||||
{ url = "https://files.pythonhosted.org/packages/7c/91/263e33ab93ab09ca06ce4f8f8547a858cc198072f873ebc9be7466790bae/ruff-0.11.13-py3-none-win32.whl", hash = "sha256:96c27935418e4e8e77a26bb05962817f28b8ef3843a6c6cc49d8783b5507f250", size = 10474944 },
|
||||
{ url = "https://files.pythonhosted.org/packages/46/f4/7c27734ac2073aae8efb0119cae6931b6fb48017adf048fdf85c19337afc/ruff-0.11.13-py3-none-win_amd64.whl", hash = "sha256:29c3189895a8a6a657b7af4e97d330c8a3afd2c9c8f46c81e2fc5a31866517e3", size = 11548669 },
|
||||
{ url = "https://files.pythonhosted.org/packages/ec/bf/b273dd11673fed8a6bd46032c0ea2a04b2ac9bfa9c628756a5856ba113b0/ruff-0.11.13-py3-none-win_arm64.whl", hash = "sha256:b4385285e9179d608ff1d2fb9922062663c658605819a6876d8beef0c30b7f3b", size = 10683928 },
|
||||
{ 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/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/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/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/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/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/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/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/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/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/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/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/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/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/3e/b9/053d6445dc7544fb6594785056d8ece61daae7214859ada4a152ad56b6e0/ruff-0.12.5-py3-none-win32.whl", hash = "sha256:dfeb2627c459b0b78ca2bbdc38dd11cc9a0a88bf91db982058b26ce41714ffa9", size = 11751575 },
|
||||
{ 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/00/db/c376b0661c24cf770cb8815268190668ec1330eba8374a126ceef8c72d55/ruff-0.12.5-py3-none-win_arm64.whl", hash = "sha256:48cdbfc633de2c5c37d9f090ba3b352d1576b0015bfc3bc98eaf230275b7e805", size = 11951564 },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
|
|
@ -36,10 +36,10 @@ repos:
|
|||
|
||||
# Run the Ruff linter.
|
||||
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||||
rev: v0.11.13
|
||||
rev: v0.12.5
|
||||
hooks:
|
||||
# Linter
|
||||
- id: ruff
|
||||
- id: ruff-check
|
||||
args: [--fix, --exit-non-zero-on-fix]
|
||||
# Formatter
|
||||
- id: ruff-format
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
FROM docker.io/traefik:3.4.1
|
||||
FROM docker.io/traefik:3.5.0
|
||||
RUN mkdir -p /etc/traefik/acme \
|
||||
&& touch /etc/traefik/acme/acme.json \
|
||||
&& chmod 600 /etc/traefik/acme/acme.json
|
||||
|
|
|
@ -17,9 +17,9 @@ app.config_from_object("django.conf:settings", namespace="CELERY")
|
|||
|
||||
@setup_logging.connect
|
||||
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)
|
||||
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
# ruff: noqa: E501
|
||||
from .base import * # noqa: F403
|
||||
from .base import INSTALLED_APPS
|
||||
from .base import MIDDLEWARE
|
||||
|
@ -79,7 +78,7 @@ if env("USE_DOCKER") == "yes":
|
|||
import socket
|
||||
|
||||
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'] %}
|
||||
try:
|
||||
_, _, ips = socket.gethostbyname_ex("node")
|
||||
|
|
|
@ -15,7 +15,7 @@ from inside the `{{cookiecutter.project_slug}}/docs` directory.
|
|||
{% else %}
|
||||
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 %}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ def main():
|
|||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.local")
|
||||
|
||||
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:
|
||||
raise ImportError( # noqa: TRY003
|
||||
"Couldn't import Django. Are you sure it's installed and " # noqa: EM101
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
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.windows == 'y' and cookiecutter.use_docker == 'n' %}
|
||||
rcssmin==1.1.2 --install-option="--without-c-extensions" # https://github.com/ndparker/rcssmin
|
||||
|
@ -23,7 +23,7 @@ flower==2.0.1 # https://github.com/mher/flower
|
|||
{%- endif %}
|
||||
{%- endif %}
|
||||
{%- 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
|
||||
{%- endif %}
|
||||
|
||||
|
@ -32,13 +32,13 @@ uvicorn-worker==0.3.0 # https://github.com/Kludex/uvicorn-worker
|
|||
django==5.1.11 # pyup: < 5.2 # https://www.djangoproject.com/
|
||||
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-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
|
||||
crispy-bootstrap5==2025.6 # https://github.com/django-crispy-forms/crispy-bootstrap5
|
||||
{%- if cookiecutter.frontend_pipeline == 'Django Compressor' %}
|
||||
django-compressor==4.5.1 # https://github.com/django-compressor/django-compressor
|
||||
{%- 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' %}
|
||||
# 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
|
||||
{%- endif %}
|
||||
{%- 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 %}
|
||||
|
|
|
@ -8,14 +8,14 @@ psycopg[c]==3.2.9 # https://github.com/psycopg/psycopg
|
|||
psycopg[binary]==3.2.9 # https://github.com/psycopg/psycopg
|
||||
{%- endif %}
|
||||
{%- 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 %}
|
||||
|
||||
# Testing
|
||||
# ------------------------------------------------------------------------------
|
||||
mypy==1.15.0 # https://github.com/python/mypy
|
||||
django-stubs[compatible-mypy]==5.2.0 # https://github.com/typeddjango/django-stubs
|
||||
pytest==8.4.0 # https://github.com/pytest-dev/pytest
|
||||
mypy==1.17.0 # https://github.com/python/mypy
|
||||
django-stubs[compatible-mypy]==5.2.2 # https://github.com/typeddjango/django-stubs
|
||||
pytest==8.4.1 # https://github.com/pytest-dev/pytest
|
||||
pytest-sugar==1.0.0 # https://github.com/Teemu/pytest-sugar
|
||||
{%- if cookiecutter.use_drf == "y" %}
|
||||
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
|
||||
# ------------------------------------------------------------------------------
|
||||
ruff==0.11.13 # https://github.com/astral-sh/ruff
|
||||
coverage==7.8.2 # https://github.com/nedbat/coveragepy
|
||||
ruff==0.12.5 # https://github.com/astral-sh/ruff
|
||||
coverage==7.10.1 # https://github.com/nedbat/coveragepy
|
||||
djlint==1.36.4 # https://github.com/Riverside-Healthcare/djLint
|
||||
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-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
|
||||
|
|
|
@ -8,7 +8,7 @@ psycopg[c]==3.2.9 # https://github.com/psycopg/psycopg
|
|||
Collectfasta==3.3.0 # https://github.com/jasongi/collectfasta
|
||||
{%- endif %}
|
||||
{%- 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 %}
|
||||
{%- if cookiecutter.use_docker == "n" and cookiecutter.windows == "y" %}
|
||||
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
|
||||
{%- endif %}
|
||||
{%- 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' %}
|
||||
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' %}
|
||||
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' %}
|
||||
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' %}
|
||||
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' %}
|
||||
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' %}
|
||||
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' %}
|
||||
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' %}
|
||||
django-anymail==13.0 # https://github.com/anymail/django-anymail
|
||||
django-anymail==13.0.1 # https://github.com/anymail/django-anymail
|
||||
{%- endif %}
|
||||
|
|
|
@ -10,4 +10,4 @@ class UsersConfig(AppConfig):
|
|||
|
||||
def ready(self):
|
||||
with contextlib.suppress(ImportError):
|
||||
import {{ cookiecutter.project_slug }}.users.signals # noqa: F401
|
||||
import {{ cookiecutter.project_slug }}.users.signals # noqa: F401, PLC0415
|
||||
|
|
|
@ -60,7 +60,7 @@ class TestUserAdmin:
|
|||
def _force_allauth(self, settings):
|
||||
settings.DJANGO_ADMIN_FORCE_ALLAUTH = True
|
||||
# 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]
|
||||
reload(users_admin)
|
||||
|
|
Loading…
Reference in New Issue
Block a user