-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpyproject.toml
106 lines (89 loc) · 2.35 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
[tool.ruff]
target-version = 'py311'
line-length = 100
exclude = [
'.git',
'venv',
'.mypy_cache',
'.pytest_cache',
'.github',
]
lint.select = ['ALL']
lint.ignore = [
'ANN101', # missing-type-self
'EM', # flake8-errmsg
'D100', 'D101', 'D102', 'D103', 'D104', 'D105', 'D106', 'D107', 'D203', 'D212', # pydocstyle
'TRY003', # Avoid specifying long messages outside the exception class
'PD011', # False positive, see https://github.com/astral-sh/ruff/issues/2480
]
[tool.ruff.lint.flake8-quotes]
inline-quotes = 'single'
[tool.ruff.lint.isort]
lines-after-imports = 2
known-first-party = ['app']
[tool.ruff.lint.per-file-ignores]
'tests/*' = [
'ANN', # flake8-annotations
'PT001', # Use @pytest.fixture{expected} over @pytest.fixture{actual}
'S101', # Use of assert detected
'PT018', # Assertion should be broken down into multiple parts
'RUF018', # Avoid assignment expressions in `assert` statements
]
[tool.black]
line-length = 100
target-version = ['py311']
exclude = '''
/(
| \.git
| venv
| \.mypy_cache
| \.pytest_cache
| \.ruff_cache
| \.github
)/
'''
skip-string-normalization = true
[tool.mypy]
python_version = '3.12'
show_error_context = true
check_untyped_defs = true
exclude = ['^.git/', '^venv/', '^.mypy_cache/', '^.pytest_cache/', '^.ruff_cache/', '^.github/',]
plugins = ['pydantic.mypy']
[tool.bandit]
exclude_dirs = ['tests',]
[tool.pytest.ini_options]
minversion = '8.2'
addopts = '-s -n auto --dup-fixtures'
asyncio_default_fixture_loop_scope = 'function'
testpaths = ['tests']
[tool.poetry]
name = 'CaraConnect'
version = '0.1.0'
description = 'My cool project'
authors = ['Sanchoyzer']
readme = 'README.md'
repository = 'https://github.com/Sanchoyzer/caraconnect'
[tool.poetry.dependencies]
python = '^3.12'
fastapi = {extras = ['all'], version = '^0'}
uvicorn = {extras = ['standard'], version = '^0.30.0'}
gunicorn = '^23.0.0'
sentry-sdk = '^2.10.0'
httpx = '^0.27.0'
[tool.poetry.group.dev.dependencies]
mypy = '^1.8.0'
ruff = '^0.6.0'
black = '^24.8.0'
bandit = '^1.7.5'
[tool.poetry.group.test.dependencies]
faker = '^29.0.0'
pytest = '^8.3.1'
pytest-sugar = '^1.0.0'
pytest-xdist = '^3.3.1'
pytest-cov = '^5.0.0'
pytest-asyncio = '^0.24.0'
pytest-randomly = '^3.15.0'
pytest-deadfixtures = '^2.2.1'
[build-system]
requires = ['poetry-core']
build-backend = 'poetry.core.masonry.api'