typing-extensions<5,>=4.6.0
watchfiles<1.2.0,>=0.15.0

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

[dev-flake8]
flake8==7.3.0
flake8-docstrings==1.7.0
flake8-pyproject==1.2.4
pydoclint==0.7.6
pydocstyle==6.3.0

[dev-formatting]
black==25.9.0
isort==7.0.0

[dev-mkdocs]
Markdown==3.9
black==25.9.0
frequenz-repo-config[lib]==0.14.0
markdown-callouts==0.4.0
markdown-svgbob==202406.1023
mike==2.1.3
mkdocs-gen-files==0.5.0
mkdocs-include-markdown-plugin==7.2.0
mkdocs-literate-nav==0.6.2
mkdocs-macros-plugin==1.4.1
mkdocs-material==9.6.23
mkdocstrings[python]==0.30.1
mkdocstrings-python==1.18.2
pymdownx-superfence-filter-lines==0.1.0
griffe==1.15.0

[dev-mypy]
frequenz-channels[dev-mkdocs,dev-noxfile,dev-pytest]
mypy==1.18.2
types-Markdown==3.9.0.20250906

[dev-noxfile]
nox==2025.10.16
frequenz-repo-config[lib]==0.14.0

[dev-pylint]
frequenz-channels[dev-mkdocs,dev-noxfile,dev-pytest]
pylint==4.0.4

[dev-pytest]
async-solipsism==0.9
frequenz-repo-config[extra-lint-examples]==0.14.0
hypothesis==6.143.0
pytest==8.4.2
pytest-asyncio==1.1.0
pytest-mock==3.15.1
