forked from volcengine/ai-app-lab
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
103 lines (89 loc) · 2.78 KB
/
pyproject.toml
File metadata and controls
103 lines (89 loc) · 2.78 KB
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
[tool.poetry]
name = "arkitect"
packages = [{ include = "arkitect" }]
version = "0.1.5"
description = ""
authors = ["wangsen.0914 <wangsen.0914@bytedance.com>"]
readme = "README.md"
[tool.poetry.dependencies]
python = ">=3.8.1,<3.12.0"
langchain_core = "0.1.52"
langchain = ">=0.1.0,<=0.2.0"
fastapi = ">=0.100.0,<1.0.0"
uvicorn = ">=0.22.0,<0.30.0"
opentelemetry-api = ">=1.22.0,<2.0.0"
pydantic = ">=2.0.0,<3.0.0"
opentelemetry-exporter-otlp = ">=1.22.0,<2.0.0"
jinja2 = "^3.1.2"
structlog = ">=23.1.0,<25.0.0"
opentelemetry-sdk = ">=1.22.0,<2.0.0"
volcengine-python-sdk = ">=1.0.117"
httpx = ">=0.27.0"
pytz = "2020.5"
tenacity = "8.3.0"
uvloop = { version = ">=0.19.0", markers = "sys_platform != 'win32'" }
orjson = "<3.10.7"
aiofiles = "23.2.1"
websockets = "<=13.1"
tos = "^2.8.1"
[build-system]
requires = ["poetry"]
build-backend = "poetry.core.masonry.api"
[tool.poetry.group.lint]
optional = true
[tool.poetry.group.lint.dependencies]
ruff = "^0.1.5"
mypy = "^1.8.0"
[tool.poetry.group.typing]
optional = true
[tool.poetry.group.typing.dependencies]
types-pyyaml = "^6.0.12.2"
types-requests = "^2.28.11.5"
[tool.poetry.group.test]
optional = true
[tool.poetry.group.test.dependencies]
# The only dependencies that should be added are
# dependencies used for running tests (e.g., pytest, freezegun, response).
# Any dependencies that do not meet that criteria will be removed.
pytest = "^7.3.0"
freezegun = "^1.2.2"
pytest-mock = "^3.10.0"
syrupy = "^4.0.2"
pytest-watcher = "^0.3.4"
pytest-asyncio = "^0.21.1"
grandalf = "^0.8"
watchdog = "4.0.1"
[tool.ruff]
lint.select = [
"E", # pycodestyle
"F", # pyflakes
"I", # isort
]
exclude = ["ark/core/component/prompts"]
[tool.mypy]
disallow_untyped_defs = "True"
ignore_missing_imports = "True"
exclude = ["tests", "scripts", "ark/core/component/tts", "ark/core/component/asr"]
[tool.coverage.run]
omit = [
"tests/*",
]
[tool.pytest.ini_options]
# --strict-markers will raise errors on unknown marks.
# https://docs.pytest.org/en/7.1.x/how-to/mark.html#raising-errors-on-unknown-marks
#
# https://docs.pytest.org/en/7.1.x/reference/reference.html
# --strict-config any warnings encountered while parsing the `pytest`
# section of the configuration file raise errors.
#
# https://github.com/tophat/syrupy
# --snapshot-warn-unused Prints a warning on unused snapshots rather than fail the test suite.
addopts = "--snapshot-warn-unused --strict-markers --strict-config --durations=5"
# Registering custom markers.
# https://docs.pytest.org/en/7.1.x/example/markers.html#registering-markers
markers = [
"requires: mark tests as requiring a specific library",
"asyncio: mark tests as requiring asyncio",
"compile: mark placeholder test used to compile integration tests without running them",
]
asyncio_mode = "auto"