forked from docarray/docarray
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpyproject.toml
100 lines (86 loc) · 2.49 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
[tool.poetry]
name = "docarray"
version = '0.30.0a3'
description='The data structure for unstructured data'
authors=['DocArray']
license='Apache 2.0'
[tool.poetry.dependencies]
python = ">=3.7"
pydantic = ">=1.10.2"
numpy = ">=1.17.3"
protobuf = { version = ">=3.19.0", optional = true }
torch = { version = ">=1.0.0", optional = true }
orjson = ">=3.8.2"
pillow = {version = ">=9.3.0", optional = true }
types-pillow = {version = ">=9.3.0.1", optional = true }
trimesh = {version = ">=3.17.1", optional = true}
typing-inspect = ">=0.8.0"
types-requests = ">=2.28.11.6"
av = {version = ">=10.0.0", optional = true}
fastapi = {version = ">=0.87.0", optional = true }
rich = ">=13.1.0"
lz4 = {version= ">=1.0.0", optional = true}
pydub = {version = "^0.25.1", optional = true }
pandas = {version = ">=1.1.0", optional = true }
[tool.poetry.extras]
common = ["protobuf", "lz4"]
torch = ["torch"]
image = ["pillow", "types-pillow"]
video = ["av"]
audio = ["pydub"]
mesh = ["trimesh"]
web = ["fastapi"]
pandas = ["pandas"]
[tool.poetry.dev-dependencies]
pytest = ">=6.1"
pre-commit = ">=2.20.0"
jupyterlab = ">=3.5.0"
mypy = ">=1"
types-protobuf = ">=3.20.4"
black = ">=22.10.0"
isort = ">=5.10.1"
ruff = ">=0.0.243"
[tool.poetry.group.dev.dependencies]
uvicorn = ">=0.19.0"
httpx = ">=0.23.0"
pytest-asyncio = ">=0.20.2"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.mypy]
exclude = ['docarray/proto']
plugins = "pydantic.mypy"
check_untyped_defs = true
[[tool.mypy.overrides]]
module = "av"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "pandas"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "trimesh"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "typing_inspect"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "IPython.display"
ignore_missing_imports = true
[tool.black]
skip-string-normalization = true # equivalent to black -S
exclude = 'docarray/proto/pb2/*'
[tool.isort]
skip_glob= ['docarray/proto/pb2/*', 'docarray/proto/pb/*']
[tool.ruff]
exclude = ['docarray/proto/pb2/*', 'docarray/proto/pb/*', 'docs/*']
ignore = [
"E501", # line too long, handled by black
]
[tool.pytest.ini_options]
markers = [
"slow: marks tests as slow (deselect with '-m \"not slow\"')",
"internet: marks tests as requiring internet (deselect with '-m \"not internet\"')",
"asyncio: marks that run async tests",
"proto: mark tests that run with proto",
"tensorflow: marks test using tensorflow and proto 3"
]