numpy<3.0.0,>=1.24.0
typer<1.0.0,>=0.12.0

[all]
cryptography<51.0.0,>=50.0.2
flwr<2.0.0,>=1.19.0
grpcio<2.0.0,>=1.57.0
grpcio-health-checking<2.0.0,>=1.57.0
grpcio-tools<2.0.0,>=1.57.0
jsonschema<5.0.0,>=4.0.0
opentelemetry-exporter-otlp-proto-grpc<2.0.0,>=1.22.0
opentelemetry-sdk<2.0.0,>=1.22.0
pandas<3.0.0,>=2.0.0
phe<2.0.0,>=1.4.0
prometheus-client<1.0.0,>=0.16.0
pynvml<12.0.0,>=11.5.0
PyYAML<7.0.0,>=6.0.0
ray<3.0.0,>=2.9.0
scikit-learn<2.0.0,>=1.3.0
scipy<2.0.0,>=1.11.0
sentence-transformers<6.0.0,>=2.2.0
websockets<15.0,>=11.0

[benchmarks]
pandas<3.0.0,>=2.0.0
scikit-learn<2.0.0,>=1.3.0
scipy<2.0.0,>=1.11.0

[dev]
pytest<10.0.0,>=9.0.3
pytest-cov<6.0.0,>=4.0.0
pytest-asyncio<2.0.0,>=1.4.0
PyYAML<7.0.0,>=6.0.0
mypy<2.0.0,>=1.8.0
ruff<1.0.0,>=0.3.0
build<2.0.0,>=1.0.0
twine<7.0.0,>=6.0.0

[docs]
mkdocs<2.0.0,>=1.6.0
mkdocs-material<10.0.0,>=9.5.0

[enterprise]
cryptography<51.0.0,>=50.0.2
grpcio<2.0.0,>=1.57.0
grpcio-health-checking<2.0.0,>=1.57.0
jsonschema<5.0.0,>=4.0.0
pandas<3.0.0,>=2.0.0
prometheus-client<1.0.0,>=0.16.0
PyYAML<7.0.0,>=6.0.0
scikit-learn<2.0.0,>=1.3.0
scipy<2.0.0,>=1.11.0

[flower]
flwr<2.0.0,>=1.19.0

[gpu]
pynvml<12.0.0,>=11.5.0

[grpc]
grpcio<2.0.0,>=1.57.0
grpcio-health-checking<2.0.0,>=1.57.0
grpcio-tools<2.0.0,>=1.57.0
cryptography<51.0.0,>=50.0.2

[knowledge]
sentence-transformers<6.0.0,>=2.2.0

[mpc]
phe<2.0.0,>=1.4.0

[mpc-paillier]
phe<2.0.0,>=1.4.0

[observability]
prometheus-client<1.0.0,>=0.16.0
opentelemetry-sdk<2.0.0,>=1.22.0
opentelemetry-exporter-otlp-proto-grpc<2.0.0,>=1.22.0

[privacy]
scipy<2.0.0,>=1.11.0
pandas<3.0.0,>=2.0.0

[ray]
ray<3.0.0,>=2.9.0

[robust]
scikit-learn<2.0.0,>=1.3.0
scipy<2.0.0,>=1.11.0

[security]
cryptography<51.0.0,>=50.0.2
jsonschema<5.0.0,>=4.0.0

[test]
pytest<10.0.0,>=9.0.3
pytest-cov<6.0.0,>=4.0.0
pytest-asyncio<2.0.0,>=1.4.0
PyYAML<7.0.0,>=6.0.0

[websocket]
websockets<15.0,>=11.0
