-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
104 lines (87 loc) · 2.68 KB
/
pyproject.toml
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
[tool.poetry]
name = "drunc_ui"
version = "0.1.0"
description = "[Description for project.]"
authors = [
"Ryan Smith <ryan.smith@imperial.ac.uk>",
"Imperial College London RSE Team <ict-rse-team@imperial.ac.uk>",
]
[tool.poetry.dependencies]
python = ">=3.10,<3.12"
django = "^5.1"
whitenoise = "^6.8.2"
drunc = { git = "https://github.com/DUNE-DAQ/drunc.git", rev = "1848d8494d5583e1a551134d3cd3a38aea810cd0" }
druncschema = { git = "https://github.com/DUNE-DAQ/druncschema.git", rev = "91dbf64ef91c31df9fc1d2872d07f484880e5921" }
django-tables2 = "^2.7.1"
django-bootstrap5 = "^24.3"
pytest-asyncio = "^0.25.0"
django-crispy-forms = "^2.3"
crispy-bootstrap5 = "^2024.10"
django-stubs-ext = "^5.1.1"
requests = "^2.32.3"
[tool.poetry.group.dev.dependencies]
pytest = "^8.3"
pytest-cov = "^6.0.0"
pytest-mypy = "^0.10.0"
pytest-mock = "^3.7.0"
pre-commit = "^4.0.1"
ruff = "^0.8.4"
djlint = "^1.36.3"
django-stubs = { extras = ["compatible-mypy"], version = "^5.1.1" }
pytest-django = "^4.9.0"
[tool.poetry.group.docs.dependencies]
mkdocs = "^1.6.1"
mkdocstrings = "^0.27.0"
mkdocstrings-python = "^1.12.2"
mkdocs-material = "^9.5.49"
mkdocs-gen-files = "^0.5.0"
mkdocs-literate-nav = "^0.6.1"
mkdocs-section-index = "^0.3.9"
[tool.poetry.group.postgres.dependencies]
psycopg = { extras = ["binary"], version = "^3.2.3" }
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.mypy]
disallow_any_explicit = true
disallow_any_generics = true
warn_unreachable = true
warn_unused_ignores = true
disallow_untyped_defs = true
exclude = [".venv/", "manage.py", "*/migrations/"]
plugins = ["mypy_django_plugin.main"]
[[tool.mypy.overrides]]
module = "tests.*"
disallow_untyped_defs = false
[[tool.mypy.overrides]]
module = ["druncschema.*", "drunc.*", "django_tables2.*", "kafka.*"]
ignore_missing_imports = true
[tool.django-stubs]
django_settings_module = "drunc_ui.settings"
[tool.pytest.ini_options]
addopts = "-v --mypy -p no:warnings --cov=. --cov-report=html --doctest-modules --ignore=manage.py --ignore=drunc_ui/settings/ --ignore=docs/ --ignore=example_deployment/"
DJANGO_SETTINGS_MODULE = "drunc_ui.settings"
FAIL_INVALID_TEMPLATE_VARS = true
[tool.ruff]
exclude = ["*/migrations", "example_deployment/*"]
target-version = "py310"
[tool.ruff.lint]
select = [
"D", # pydocstyle
"E", # pycodestyle
"F", # Pyflakes
"I", # isort
"UP", # pyupgrade
"RUF", # ruff
]
pydocstyle.convention = "google"
[tool.ruff.lint.per-file-ignores]
"tests/*" = [
"D100",
"D104",
] # Missing docstring in public module, Missing docstring in public package
[tool.djlint]
profile = "django"
indent = 2
[tool.coverage.run]
omit = ["tests/*", "scripts/*"]