# This file was autogenerated by uv via the following command:
#    uv export --frozen --no-emit-project --format requirements.txt --no-hashes --extra tests --extra optional -o requirements/locks/tests-optional.txt
affine==2.4.0
    # via kwimage
cmd-queue==0.2.3
    # via kwdagger
colorama==0.4.6 ; sys_platform == 'win32'
    # via pytest
contourpy==1.3.2 ; python_full_version < '3.11'
    # via matplotlib
contourpy==1.3.3 ; python_full_version >= '3.11' and python_full_version < '4'
    # via matplotlib
coverage==7.14.0
    # via
    #   kwdagger
    #   pytest-cov
cycler==0.12.1 ; python_full_version < '4'
    # via matplotlib
distinctipy==1.3.4 ; python_full_version < '4'
    # via kwimage
exceptiongroup==1.3.1 ; python_full_version < '3.11'
    # via pytest
fasteners==0.20
    # via kwdagger
flexcache==0.3 ; python_full_version < '4'
    # via pint
flexparser==0.4 ; python_full_version < '4'
    # via pint
fonttools==4.63.0 ; python_full_version < '4'
    # via matplotlib
imageio==2.37.3 ; python_full_version < '4'
    # via scikit-image
iniconfig==2.3.0
    # via pytest
kiwisolver==1.5.0 ; python_full_version < '4'
    # via matplotlib
kwarray==0.7.1
    # via
    #   kwdagger
    #   kwimage
    #   kwplot
kwimage==0.11.6
    # via kwplot
kwplot==0.5.4
    # via kwdagger
kwutil==0.3.8
    # via kwdagger
lazy-loader==0.5
    # via
    #   kwimage
    #   kwutil
    #   scikit-image
markdown-it-py==3.0.0 ; python_full_version < '3.11'
    # via rich
markdown-it-py==4.2.0 ; python_full_version >= '3.11'
    # via rich
matplotlib==3.10.9 ; python_full_version < '4'
    # via
    #   kwdagger
    #   kwplot
mdurl==0.1.2
    # via markdown-it-py
networkx==3.4.2 ; python_full_version < '3.11'
    # via
    #   cmd-queue
    #   kwdagger
    #   kwimage
    #   scikit-image
networkx==3.6.1 ; python_full_version >= '3.11' and python_full_version < '4'
    # via
    #   cmd-queue
    #   kwdagger
    #   kwimage
    #   scikit-image
numpy==2.2.6 ; python_full_version < '3.11'
    # via
    #   cmd-queue
    #   contourpy
    #   distinctipy
    #   imageio
    #   kwarray
    #   kwdagger
    #   kwimage
    #   kwplot
    #   matplotlib
    #   pandas
    #   scikit-image
    #   scipy
    #   shapely
    #   tifffile
numpy==2.4.6 ; python_full_version >= '3.11' and python_full_version < '4'
    # via
    #   cmd-queue
    #   contourpy
    #   distinctipy
    #   imageio
    #   kwarray
    #   kwdagger
    #   kwimage
    #   kwplot
    #   matplotlib
    #   pandas
    #   scikit-image
    #   scipy
    #   shapely
    #   tifffile
packaging==26.2
    # via
    #   kwarray
    #   lazy-loader
    #   matplotlib
    #   pytest
    #   scikit-image
pandas==2.3.3 ; python_full_version < '3.11'
    # via
    #   cmd-queue
    #   kwdagger
pandas==3.0.3 ; python_full_version >= '3.11' and python_full_version < '4'
    # via
    #   cmd-queue
    #   kwdagger
parse==1.22.0
    # via
    #   kwdagger
    #   kwimage
pillow==12.2.0 ; python_full_version < '4'
    # via
    #   imageio
    #   kwimage
    #   matplotlib
    #   scikit-image
pint==0.24.4 ; python_full_version < '3.11'
    # via kwdagger
pint==0.25.3 ; python_full_version >= '3.11' and python_full_version < '4'
    # via kwdagger
platformdirs==4.9.6 ; python_full_version < '4'
    # via pint
pluggy==1.6.0
    # via
    #   pytest
    #   pytest-cov
progiter==2.0.0
    # via kwutil
psutil==7.2.2 ; python_full_version < '4'
    # via
    #   cmd-queue
    #   kwdagger
pygments==2.20.0
    # via
    #   pytest
    #   rich
pygtrie==2.5.0
    # via kwdagger
pyparsing==3.3.2 ; python_full_version < '4'
    # via matplotlib
pytest==9.0.3
    # via
    #   kwdagger
    #   pytest-cov
    #   pytest-timeout
pytest-cov==7.1.0
    # via kwdagger
pytest-timeout==2.4.0 ; python_full_version < '4'
    # via kwdagger
python-dateutil==2.9.0.post0 ; python_full_version < '4'
    # via
    #   matplotlib
    #   pandas
pytz==2026.2 ; python_full_version < '3.11'
    # via pandas
pyyaml==6.0.3 ; python_full_version < '4'
    # via
    #   kwdagger
    #   scriptconfig
rich==15.0.0
    # via
    #   cmd-queue
    #   kwdagger
ruamel-yaml==0.19.1
    # via
    #   cmd-queue
    #   kwdagger
safer==5.4.0
    # via kwdagger
scikit-image==0.25.2 ; python_full_version < '3.11'
    # via kwimage
scikit-image==0.26.0 ; python_full_version >= '3.11' and python_full_version < '4'
    # via kwimage
scipy==1.15.3 ; python_full_version < '3.11'
    # via
    #   kwdagger
    #   kwimage
    #   scikit-image
scipy==1.17.1 ; python_full_version >= '3.11' and python_full_version < '4'
    # via
    #   kwdagger
    #   kwimage
    #   scikit-image
scriptconfig==0.9.1
    # via
    #   cmd-queue
    #   kwdagger
    #   kwplot
shapely==2.1.2 ; python_full_version < '4'
    # via kwimage
six==1.17.0 ; python_full_version < '4'
    # via python-dateutil
tifffile==2025.5.10 ; python_full_version < '3.11'
    # via scikit-image
tifffile==2026.3.3 ; python_full_version == '3.11.*'
    # via scikit-image
tifffile==2026.5.15 ; python_full_version >= '3.12' and python_full_version < '4'
    # via scikit-image
tomli==2.4.1 ; python_full_version <= '3.11'
    # via
    #   coverage
    #   pytest
typing-extensions==4.15.0 ; python_full_version < '4'
    # via
    #   exceptiongroup
    #   flexcache
    #   flexparser
    #   pint
tzdata==2026.2 ; (python_full_version < '4' and sys_platform == 'emscripten') or (python_full_version < '4' and sys_platform == 'win32') or (python_full_version < '3.11' and sys_platform != 'emscripten' and sys_platform != 'win32')
    # via pandas
ubelt==1.4.2
    # via
    #   cmd-queue
    #   kwarray
    #   kwdagger
    #   kwimage
    #   kwplot
    #   kwutil
    #   scriptconfig
wrapt==2.2.0
    # via kwdagger
xdoctest==1.3.2
    # via kwdagger
