-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
125 lines (115 loc) · 2.9 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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
[tool.poetry]
name = "fft"
version = "0.1.0"
description = ""
authors = ["Live Services <[email protected]>"]
license = "MIT"
readme = "README.md"
package-mode = false
[tool.poetry.dependencies]
python = "^3.12"
celery = "^5.3.6"
dj-database-url = "^2.1.0"
django = "^5.1.4"
django-admin-list-filter-dropdown = "^1.0.3"
django-autocomplete-light = "^3.11.0"
django-axes = "^6.4.0"
django-environ = "^0.11.2"
django-extensions = "^3.2.3"
django-filter = "^24.1"
django-guardian = "^2.4.0"
django-log-formatter-ecs = "^0.0.5"
django-pivot = "^1.10"
django-reversion = "^5.0.12"
django-settings-export = "^1.2.1"
django-simple-history = "^3.5.0"
django-staff-sso-client = "^4.2.2"
django-tables2 = "^2.4.0"
djangorestframework = "^3.15.2"
elastic-apm = "^6.2.2"
django-chunk-upload-handlers = "^0.0.15"
sentry-sdk = "^2.8.0"
whitenoise = "^6.6.0"
mohawk = "^1.1.0"
boto3 = "^1.17.89"
django-storages = "^1.14.2"
openpyxl = "^3.0.5"
requests = "^2.32.0"
redis = "^5.0.3"
granian = "^1.6.3"
numpy = "^2.1.3"
django-csp = "^3.8"
psycopg = { extras = ["binary"], version = "^3.2.3" }
django-audit-log-middleware = "^0.0.5"
dbt-copilot-python = "^0.2.1"
django-import-export = "^3.3.07"
django-log-formatter-asim = "^0.0.6"
[tool.poetry.group.dev]
optional = true
[tool.poetry.group.dev.dependencies]
selenium = "^4.18.1"
beautifulsoup4 = "^4.9.1"
soupsieve = "^2.5"
faker = "^24.4.0"
factory-boy = "^3.3.0"
black = "^24.3.0"
pytest = "^7.4.4"
pytest-cov = "^4.1.0"
pytest-django = "^4.8.0"
pytest-xdist = "^3.5.0"
behave-django = "^1.4.0"
pytest-random-order = "^1.1.1"
pyperclip = "^1.8.0"
freezegun = "^1.0.0"
isort = "^5.10.1"
ruff = "^0.3.4"
mypy = "^1.13.0"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.isort]
profile = "black"
multi_line_output = 3
skip_gitignore = true
line_length = 88
lines_after_imports = 2
[tool.black]
target-version = ["py312"]
exclude = '''
(
\.direnv
| \.env
| \.git
| \.venv
| venv
| _build
| build
| dist
| node_modules
| chartofaccountDIT/filters.py
| chartofaccountDIT/models.py
| data_lake/views/fco_mapping.py
| forecast/views/base.py
| upload_split_file/downloads.py
)
'''
[tool.ruff]
# Same as Black.
line-length = 88
indent-width = 4
# Target python 3.12.
target-version = "py312"
# In addition to the standard set of exclusions, omit all tests, plus a specific file.
extend-exclude = ["config/*", "features/*", "migrations", "manage.py"]
[tool.ruff.lint]
# Enable flake8-bugbear (`B`) rules.
select = ["E", "F", "B"]
# Never enforce `E501` (line length violations).
ignore = ["E501", "B904"]
[tool.pytest.ini_options]
minversion = "7.0"
addopts = "--ignore=front_end --ignore=features --ignore=staticfiles --ds=config.settings.ci --reuse-db"
python_files = ["test_*.py", "*_test.py", "tests.py"]
filterwarnings = ["ignore::DeprecationWarning"]
[tool.mypy]
enable_incomplete_feature = ["NewGenericSyntax"]