-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathpyproject.toml
109 lines (97 loc) · 2.46 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
[tool.poetry]
name = "bel"
version = "2.0.0"
description = ""
authors = ["William Hayes <[email protected]>"]
[tool.poetry.dependencies]
python = "^3.7"
jinja2 = "^2.11.2"
pyyaml = "^5.3.1"
lxml = "^4.5.0"
cityhash = "^0.2.3"
python-dateutil = "^2.8.1"
elasticsearch = "~6"
cachetools = "^4.1.0"
redis = "^3.4.1"
boltons = "^20.1.0"
pydantic = "^1.5"
typer = "^0.1.1"
semver = "^2.9.1"
loguru = "^0.5.1"
pytest = "^6.0.1"
fastapi = {version = "^0.61.0", extras = ["api"]}
gunicorn = {version = "^20.0.4", extras = ["api"]}
python-multipart = {version = "^0.0.5", extras = ["api"]}
starlette_prometheus = {version = "^0.7.0", extras = ["api"]}
ulid-py = "^1.1.0"
aiofiles = "^0.6.0"
uvicorn = "^0.12.3"
httpx = "^0.16.1"
python-arango = "^6.1.0"
python-dotenv = "^0.15.0"
[tool.poetry.dev-dependencies]
pytest = "^6"
pytest-pep8 = "^1.0.6"
pytest-sugar = "^0.9.3"
pytest-cache = "^1.0"
pytest-cov = "^2.10.0"
pytest-env = "^0.6.2"
pytest-mypy = "^0.6.2"
pylint = "^2.5.3"
pydocstyle = "^5.0.2"
colorama = "^0.4.3"
pygments = "^2.6.1"
black = {version = "^20.8b1", allow-prereleases = true}
[tool.poetry.extras]
api = ["fastapi^0.61.0", "gunicorn^20.0.4", "uvicorn^0.11.8", "python-multipart^0.0.5", "starlette_prometheus^0.7.0", "aiofiles^0.5.0"]
[tool.black]
line-length = 100
target-version = ['py37', 'py38']
include = '\.pyi?$'
exclude = '''
/(
\.eggs
| \.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
# The following are specific to Black, you probably don't want those.
| blib2to3
| tests/data
| profiling
)/
'''
[tool.isort]
profile = "black"
src_paths = ["./bel", "./api/app"]
import_heading_stdlib = "Standard Library"
import_heading_thirdparty = "Third Party"
import_heading_firstparty = "Local"
[tool.coverage.run]
source = ["bel"]
[tool.coverage.report]
exclude_lines = [
# Have to re-enable the standard pragma
"pragma: no cover",
# Don't complain about missing debug-only code:
"def __repr__",
"if self.debug",
# Don't complain if tests don't hit defensive assertion code:
"raise AssertionError",
"raise NotImplementedError",
# Don't complain if non-runnable code isn't run:
"if 0:",
"if __name__ == .__main__.:",
]
[tool.pytest.ini_options]
minversion = "6.0"
# Ignore E501=line too long, W391=end of file blank lines E128 continuation line under-indented
pep8ignore = "*.py E501 W391 E128 W503 E402"
[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"