-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathpyproject.toml
More file actions
106 lines (98 loc) · 2.26 KB
/
pyproject.toml
File metadata and controls
106 lines (98 loc) · 2.26 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
[tool.black]
py36 = true
exclude = '''
/(
\.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
| migrations
# The following are specific to Black, you probably don't want those.
| blib2to3
| tests/data
| profiling
)/
'''
[tool.poetry]
name = "kaavapino-api"
version = "0.0.1"
description = "Project management system for city planning projects."
package-mode = true
authors = [
"Helsingin Kaupunki"
]
readme = ["README", "LICENSE"]
[tool.poetry.dependencies]
# --no-binary psycopg2
python = ">=3.12,<=3.14"
setuptools = "73.0.1"
Django = "4.2.16"
djangorestframework = "3.16.1"
django-helusers = "0.12.0"
django-environ = "0.12.0"
drf-extensions = "0.8.0"
drf-oidc-auth = "3.0.0"
psycopg2 = "2.9.9"
docxtpl = "0.16.7"
xltpl = "0.21"
openpyxl = "3.1.2"
python-pptx = "1.0.2"
django-allauth = "65.11.2"
pillow = "10.3.0"
django-admin-sortable2 = "2.2.8"
django-private-storage = "3.1.1"
django-extended-choices = "1.3.3"
django-cors-headers = "3.14.0"
raven = "6.10.0"
sentry-sdk = "1.22.2"
django-activity-stream = "1.4.2"
django-jsonfield-compat = "0.4.4"
django-filter = "25.1"
djangorestframework-gis = "1.2.0"
social-auth-app-django = "5.4.1"
workalendar = "17.0.0"
django-q2 = "1.8.0"
croniter = "1.3.14"
numpy = "1.26.4"
elastic-apm = "6.15.1"
drf-spectacular = "0.26.2"
pyrsistent = "0.19.3"
django-redis = "5.4.0"
django-db-connection-pool = "^1.2.4"
pytz = "2025.2"
django-resilient-logger = "2.1.0"
django-auditlog = "3.4.1"
[tool.poetry.group.dev.dependencies]
flake8 = "4.0.1"
flake8-print = "4.0.1"
isort = "5.12.0"
ipython = "8.10.0"
pytest = "6.2.5"
pytest-cov = "3.0.0"
pytest-django = "4.5.2"
pytest-lazy-fixture = "0.6.3"
factory_boy = "3.2.1"
pytest-factoryboy = "2.1.0"
[tool.coverage.run]
omit = ["*/migrations/*", "schema.py", "wsgi.py", "louhi.py", "manage.py", "*/tests/*"]
[tool.coverage.report]
# Coverage thresholds - fail CI if coverage drops below these
fail_under = 30
exclude_lines = [
"pragma: no cover",
"def __repr__",
"raise AssertionError",
"raise NotImplementedError",
]
[tool.pytest.ini_options]
# Register custom markers
markers = [
"unit: marks tests as unit tests (not requiring database)",
"integration: marks tests as integration tests (requiring database)",
]
addopts = "--reuse-db"