-
-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathpyproject.toml
94 lines (77 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
[tool.poetry]
authors = ["jolpica <[email protected]>"]
description = ""
exclude = ["**/tests"]
name = "jolpica"
packages = [{ include = "jolpica" }]
version = "0.1.0"
[tool.poetry.dependencies]
python = ">=3.9,<3.13"
Django = "^4.2.14"
django-environ = "^0.11.2"
django-ratelimit = "^4.1.0"
django-redis = "^5.4.0"
django-rest-knox = "^5.0.1"
django-storages = "^1.14.4"
djangorestframework = "^3.15.2"
gunicorn = "^22.0.0"
psycopg = { extras = ["binary"], version = "^3.1.12" }
requests = "^2.32.3"
uvicorn = "^0.30.5"
opentelemetry-sdk = "^1.26.0"
opentelemetry-exporter-otlp = "^1.26.0"
django-cors-headers = "^4.4.0"
pydantic = "^2.10.6"
[tool.poetry.group.dev.dependencies]
django-dbml = "^0.9.2" # Generation of dbml file
django-debug-toolbar = "^4.4.6"
django-fixture-magic = "^0.1.5" # Generation of fixture file
django-stubs = { extras = ["compatible-mypy"], version = "^5.0.2" }
djangorestframework-stubs = { extras = ["compatible-mypy"], version = "^3.15.0" }
mypy = { extras = ["dmypy"], version = "^1.10.0" }
pytest-django = "^4.8.0"
ruff = ">=0.5.6"
pre-commit = "^4.0.1"
[tool.poetry.group.local.dependencies]
# Only for local development e.g. Jupyter notebook
ipykernel = "^6.29.5"
notebook = "^7.0.6"
[tool.poetry.group.import.dependencies]
# Only used in import scripts
pandas = "^2.1.1"
tqdm = "^4.66.3"
[tool.poetry.group.deploy.dependencies]
boto3 = "^1.34.11" # For upload via collectstatic with django-storages
[build-system]
build-backend = "poetry.core.masonry.api"
requires = ["poetry-core>=1.0.0"]
[tool.mypy]
exclude = ["^tests", "^jolpica_api/ergastapi/*"]
plugins = ["mypy_django_plugin.main", "mypy_drf_plugin.main"]
python_version = "3.11"
[tool.django-stubs]
django_settings_module = "jolpica_api.settings"
[tool.ruff]
extend-exclude = ["**/migrations", "jolpica/ergast/*"]
line-length = 120
src = ["jolpica", "jolpica_api"]
target-version = "py310"
[tool.ruff.lint]
ignore = ["TRY300", "TRY003", "RUF012"]
isort.known-first-party = ["jolpica", "jolpica_api"]
select = [
"RUF", # Ruff specific
"I", # isort - Import sorting
"S", # Bandit - Security Report
"F", # Pyflakes - Error Checker
"E", # Pycodestyle - Style Checker
"UP", # Pyupgrade - Update Old Syntax
"N", # pep8-naming - Naming Conventions
"TRY", # Tryceratops - Try Except Checking
]
pydocstyle.convention = "google"
[tool.ruff.lint.per-file-ignores]
"**/tests/*.py" = ["D", "S", "E501"]
[tool.pytest.ini_options]
DJANGO_SETTINGS_MODULE = "tests.settings"
addopts = ["--reuse-db"]