# This file was autogenerated by uv via the following command:
#    uv pip compile pyproject.toml -o dev-requirements.txt --extra dev
attrs==25.3.0
    # via usort
black==25.9.0
    # via
    #   clusterscope (pyproject.toml)
    #   ufmt
build==1.3.0
    # via clusterscope (pyproject.toml)
cfgv==3.4.0
    # via pre-commit
click==8.3.0
    # via
    #   clusterscope (pyproject.toml)
    #   black
    #   moreorless
    #   ufmt
    #   usort
distlib==0.4.0
    # via virtualenv
filelock==3.19.1
    # via virtualenv
flake8==7.3.0
    # via clusterscope (pyproject.toml)
identify==2.6.14
    # via pre-commit
libcst==1.8.5
    # via
    #   ufmt
    #   usort
mccabe==0.7.0
    # via flake8
moreorless==0.5.0
    # via
    #   ufmt
    #   usort
mypy==1.18.2
    # via clusterscope (pyproject.toml)
mypy-extensions==1.1.0
    # via
    #   black
    #   mypy
nodeenv==1.9.1
    # via pre-commit
packaging==25.0
    # via
    #   black
    #   build
pathspec==0.12.1
    # via
    #   black
    #   mypy
    #   trailrunner
platformdirs==4.4.0
    # via
    #   black
    #   virtualenv
pre-commit==4.3.0
    # via clusterscope (pyproject.toml)
pycodestyle==2.14.0
    # via flake8
pyflakes==3.4.0
    # via flake8
pyproject-hooks==1.2.0
    # via build
pytokens==0.1.10
    # via black
pyyaml==6.0.3
    # via
    #   libcst
    #   pre-commit
stdlibs==2025.5.10
    # via usort
toml==0.10.2
    # via usort
tomli==2.2.1
    # via
    #   black
    #   build
    #   mypy
tomlkit==0.13.2
    # via ufmt
trailrunner==1.4.0
    # via
    #   ufmt
    #   usort
types-click==7.1.8
    # via clusterscope (pyproject.toml)
typing-extensions==4.15.0
    # via
    #   black
    #   mypy
    #   ufmt
    #   virtualenv
ufmt==2.8.0
    # via clusterscope (pyproject.toml)
usort==1.0.8.post1
    # via
    #   clusterscope (pyproject.toml)
    #   ufmt
virtualenv==20.34.0
    # via pre-commit
