Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
109 lines (95 loc) · 2.33 KB
/
Copy pathpyproject.toml
File metadata and controls
109 lines (95 loc) · 2.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
[project]
name = "animals-healthcare-application"
version = "0.1.0"
description = "Animals Healthcare Application — pet health data management"
requires-python = ">=3.14"
dependencies = [
"django>=6.0.7,<6.1",
"djangorestframework>=3.17.2,<3.18",
"psycopg[binary]>=3.2",
"celery>=5.4",
"redis>=5.0",
"flower",
"discord",
"python-decouple",
"pillow>=12.3.0",
"cryptography>=50",
"cffi>=1.17",
"django-taggit",
"django-timezone-field>=6.1",
"tzdata",
"python3-openid",
"requests",
"requests-oauthlib",
"python-dateutil",
"pyjwt",
"defusedxml",
"aiohttp>=3.14.3",
"gunicorn>=26.0.0",
"whitenoise>=6.12.0",
"pyturso>=0.6.1",
]
[dependency-groups]
dev = [
"pre-commit>=4.2.0",
"ruff>=0.11.6",
"ty>=0.0.20",
"codespell>=2.4.1",
"bandit[toml]",
"pytest>=9.0.2",
"pytest-django",
"pytest-cov>=6.1.1",
"icecream",
"commitizen>=4.13.9",
"django-stubs>=5.0",
]
[tool.uv]
package = false
[tool.ruff]
line-length = 124
[tool.ruff.lint]
select = ["E", "F", "UP", "B", "SIM", "I", "RUF", "DJ"]
ignore = [
"DJ001",
"DJ008",
"RUF012",
]
[tool.ruff.lint.per-file-ignores]
"tests/**" = ["F401", "F841"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
docstring-code-format = true
docstring-code-line-length = 124
[tool.pytest.ini_options]
DJANGO_SETTINGS_MODULE = "ahc.settings"
pythonpath = ["src"]
python_files = ["test_*.py"]
addopts = "--strict-markers"
markers = [
"unit: isolated component test; no DB, Django test client or external services (tmp_path is fine)",
"integration: collaboration of layers or real infrastructure: ORM/DB, Django client, signals, commands",
"regression: guards a previously fixed bug; added on top of unit or integration",
"slow: tests that take more than a few seconds",
]
[tool.ty.environment]
python-version = "3.14"
extra-paths = ["src"]
[tool.ty.src]
exclude = ["src/ahc/apps/*/migrations/*"]
[tool.codespell]
skip = "uv.lock,./static,./static_collected"
builtin = "clear"
quiet-level = 3
[tool.bandit]
exclude_dirs = [".venv"]
skips = ["B101", "B404", "B603", "B607"]
[tool.coverage.run]
data_file = "tests/result/.coverage"
[tool.commitizen]
name = "cz_conventional_commits"
version = "0.1.0"
tag_format = "v$version"
version_files = [
"pyproject.toml:version",
]