typing_extensions<5,>=4.13.0
grpc-stubs==1.53.0.6
frequenz-api-reporting<0.11,>=0.10.0
frequenz-client-common<0.4,>=0.3.7
grpcio<2,>=1.72.1
protobuf<8,>=6.33.1
frequenz-client-base<0.12.0,>=0.11.0

[dev]
frequenz-client-reporting[dev-flake8,dev-formatting,dev-mkdocs,dev-mypy,dev-noxfile,dev-pylint,dev-pytest]

[dev-flake8]
flake8==7.3.0
flake8-datetimez==20.10.0
flake8-docstrings==1.7.0
flake8-pyproject==1.2.4
pydoclint==0.8.4
pydocstyle==6.3.0

[dev-formatting]
black==26.5.1
isort==8.0.1

[dev-mkdocs]
black==26.5.1
Markdown==3.10.2
mike==2.2.0
mkdocs-gen-files==0.6.1
mkdocs-literate-nav==0.6.3
mkdocs-macros-plugin==1.5.0
mkdocs-material==9.7.6
mkdocstrings[python]==1.0.4
mkdocstrings-python==2.0.3
frequenz-repo-config[lib]==0.17.0

[dev-mypy]
mypy==2.1.0
types-Markdown==3.10.2.20260518
types-protobuf==7.34.1.20260518
frequenz-client-reporting[dev-mkdocs,dev-noxfile,dev-pytest]
pandas-stubs<4,>=2

[dev-noxfile]
nox==2026.4.10
frequenz-repo-config[lib]==0.17.0

[dev-pylint]
pylint==4.0.5
frequenz-client-reporting[dev-mkdocs,dev-noxfile,dev-pytest]
pandas<3,>=2

[dev-pytest]
pytest==9.0.3
frequenz-repo-config[extra-lint-examples]==0.17.0
pytest-mock==3.15.1
pytest-asyncio==1.4.0
async-solipsism==0.9

[examples]
pandas<3,>=2
