-
Notifications
You must be signed in to change notification settings - Fork 1
/
pyproject.toml
64 lines (52 loc) · 1.39 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
[tool.poetry]
name = "outbox-streaming"
version = "0.1.0"
description = ""
authors = ["Yevhenii Hyzyla <[email protected]>"]
readme = "README.md"
packages = [{include = "outbox_streaming"}]
[tool.poetry.dependencies]
python = "^3.10"
# Optional dependencies
aiokafka = {version = "^0.7.2", optional = true}
SQLAlchemy = {version = "^1.4, <2,", extras = ["asyncio"], optional = true}
kafka-python = {version = "^2.0.2", optional = true}
celery = {extras = ["pytest"], version = "^5.2.7"}
psycopg2-binary = {version = "^2.9.3", optional = true}
redis = "^4.4.2"
rq = "^1.12.0"
types-redis = "^4.4.0"
[tool.poetry.extras]
test = ["aiokafka", "SQLAlchemy", "kafka-python", "celery", "psycopg2-binary"]
[tool.poetry.dev-dependencies]
pytest = "^7.1.2"
wait-for-it = "^2.2.1"
black = "^22.6.0"
mypy = "^0.971"
flake8 = "^5.0.4"
isort = "^5.10.1"
rich = "^12.5.1"
python-dotenv = "^0.20.0"
dirty-equals = "^0.4"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
# ===================
# Tools configuration
[tool.black]
line-length = 88
target-version = ['py310']
[tool.isort]
profile = "black"
[tool.mypy]
exclude = 'app/migrations'
strict = true
# disable few strict flags
ignore_missing_imports = true
disallow_subclassing_any = false
warn_return_any = false
implicit_reexport = true
# disable mypy for a test at all
[[tool.mypy.overrides]]
module = ["tests.*"]
ignore_errors = true