-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathpyproject.toml
More file actions
117 lines (105 loc) · 3.07 KB
/
pyproject.toml
File metadata and controls
117 lines (105 loc) · 3.07 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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
[project]
name = "humanloop"
[tool.poetry]
name = "humanloop"
version = "0.8.40b6"
description = ""
readme = "README.md"
authors = []
keywords = []
classifiers = [
"Intended Audience :: Developers",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Operating System :: POSIX",
"Operating System :: MacOS",
"Operating System :: POSIX :: Linux",
"Operating System :: Microsoft :: Windows",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
]
packages = [
{ include = "humanloop", from = "src"}
]
[project.urls]
Repository = 'https://github.com/humanloop/humanloop-python'
[tool.poetry.dependencies]
python = ">=3.9,<4"
click = "^8.0.0"
deepdiff = "^8.2.0"
httpx = ">=0.21.2"
httpx-sse = "0.4.0"
mmh3 = "^5.1.0"
opentelemetry-api = ">=1.27.0"
opentelemetry-instrumentation-anthropic = ">=0.20"
opentelemetry-instrumentation-bedrock = ">=0.15"
opentelemetry-instrumentation-cohere = ">=0.20"
opentelemetry-instrumentation-groq = ">=0.29"
opentelemetry-instrumentation-openai = ">=0.20"
opentelemetry-instrumentation-replicate = ">=0.20"
opentelemetry-proto = ">=1.30.0"
opentelemetry-sdk = ">=1.27.0"
parse = ">=1"
protobuf = ">=5.29.3"
pydantic = ">= 1.9.2"
pydantic-core = "^2.18.2"
python-dotenv = "^1.1.0"
typing_extensions = ">= 4.0.0"
[tool.poetry.group.dev.dependencies]
mypy = "==1.13.0"
pytest = "^7.4.0"
pytest-asyncio = "^0.23.5"
python-dateutil = "^2.9.0"
types-python-dateutil = "^2.9.0.20240316"
anthropic = ">=0.37.1"
cohere = "^5.11.2"
groq = ">=0.11.0"
jsonschema = "^4.23.0"
numpy = "<2.0.0"
openai = "^1.52.2"
pandas = "^2.2.0"
parse-type = ">=0.6.4"
pyarrow = "^19.0.0"
pytest-retry = "^1.6.3"
pytest-xdist = "^3.6.1"
replicate = "^1.0.3"
ruff = "==0.11.5"
types-jsonschema = "^4.23.0.20240813"
types-protobuf = "^5.29.1.20250208"
[tool.pytest.ini_options]
testpaths = [ "tests" ]
asyncio_mode = "auto"
[tool.mypy]
plugins = ["pydantic.mypy"]
[tool.ruff]
line-length = 120
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"F", # pyflakes
"I", # isort
]
ignore = [
"E402", # Module level import not at top of file
"E501", # Line too long
"E711", # Comparison to `None` should be `cond is not None`
"E712", # Avoid equality comparisons to `True`; use `if ...:` checks
"E721", # Use `is` and `is not` for type comparisons, or `isinstance()` for insinstance checks
"E722", # Do not use bare `except`
"E731", # Do not assign a `lambda` expression, use a `def`
"F821", # Undefined name
"F841" # Local variable ... is assigned to but never used
]
[tool.ruff.lint.isort]
section-order = ["future", "standard-library", "third-party", "first-party"]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.poetry.scripts]
humanloop = "humanloop.cli.__main__:cli"