@@ -19,6 +19,9 @@ dependencies = [
1919 " strands-agents>=1.0.0" ,
2020 " strands-agents-tools>=0.1.0,<1.0.0" ,
2121 " typing-extensions>=4.0" ,
22+ " opentelemetry-api>=1.20.0" ,
23+ " opentelemetry-sdk>=1.20.0" ,
24+ " opentelemetry-instrumentation-threading>=0.51b0,<1.00b0" ,
2225]
2326
2427[tool .hatch .build .targets .wheel ]
@@ -34,18 +37,21 @@ test = [
3437
3538dev = [
3639 " hatch>=1.0.0,<2.0.0" ,
37- " mypy>=1.0" ,
40+ " mypy>=1.15.0,<2.0. 0" ,
3841 " pre-commit>=3.2.0,<4.2.0" ,
39- " ruff>=0.4.4,<1.0 .0" ,
42+ " ruff>=0.13.0,<0.14 .0" ,
4043]
4144
45+ otel = [" opentelemetry-exporter-otlp-proto-http>=1.30.0,<2.0.0" ]
46+
4247[tool .ruff ]
4348line-length = 120
4449include = [" src/**/*.py" , " tests/**/*.py" ]
4550
4651[tool .hatch .envs .hatch-test ]
4752installer = " uv"
4853extra-args = [" -n" , " auto" , " -vv" ]
54+ features = [" otel" ]
4955dependencies = [
5056 " pytest>=8.0.0,<9.0.0" ,
5157 " pytest-cov>=7.0.0,<8.0.0" ,
@@ -79,6 +85,17 @@ prepare = [
7985]
8086
8187
88+ [tool .hatch .envs .hatch-static-analysis ]
89+ installer = " uv"
90+ features = [" otel" ]
91+ dependencies = [
92+ " mypy>=1.15.0,<2.0.0" ,
93+ " ruff>=0.13.0,<0.14.0" ,
94+ # Include required pacakge dependencies for mypy
95+ " strands-agents-evals @ {root:uri}" ,
96+ ]
97+
98+
8299[tool .hatch .envs .hatch-static-analysis .scripts ]
83100format-check = [
84101 " ruff format --check"
@@ -137,9 +154,9 @@ dependencies = [
137154]
138155extra-dependencies = [
139156 " hatch>=1.0.0,<2.0.0" ,
140- " mypy>=1.0" ,
157+ " mypy>=1.15.0,<2.0. 0" ,
141158 " pre-commit>=3.2.0,<4.2.0" ,
142- " ruff>=0.4.4,<1.0 .0" ,
159+ " ruff>=0.13.0,<0.14 .0" ,
143160]
144161
145162[tool .coverage .run ]
0 commit comments