# This file was autogenerated by uv via the following command: # uv export --no-hashes --only-dev --output-file dev-requirements.txt alabaster==0.7.16 ; python_full_version < '3.10' # via sphinx alabaster==1.0.0 ; python_full_version >= '3.10' # via sphinx annotated-types==0.7.0 # via pydantic anyio==4.11.0 ; python_full_version >= '3.10' # via # httpx # mcp # sse-starlette # starlette attrs==25.4.0 # via # glom # jsonschema # outcome # referencing # reuse # semgrep # trio babel==2.17.0 # via sphinx binaryornot==0.4.4 ; python_full_version < '3.10' # via reuse boltons==21.0.0 # via # face # glom # semgrep boolean-py==5.0 # via # license-expression # reuse bracex==2.6 # via wcmatch certifi==2025.10.5 # via # httpcore # httpx # requests # selenium cffi==2.0.0 ; implementation_name != 'pypy' and os_name == 'nt' # via trio cfgv==3.4.0 # via pre-commit chardet==5.2.0 ; python_full_version < '3.10' # via binaryornot charset-normalizer==3.4.4 # via # python-debian # requests click==8.1.8 # via # click-option-group # reuse # semgrep # typer # uvicorn click-option-group==0.5.9 # via semgrep codespell==2.4.1 colorama==0.4.6 # via # click # pytest # semgrep # sphinx contourpy==1.3.0 ; python_full_version < '3.10' # via matplotlib contourpy==1.3.2 ; python_full_version == '3.10.*' # via matplotlib contourpy==1.3.3 ; python_full_version >= '3.11' # via matplotlib cycler==0.12.1 # via matplotlib defusedxml==0.7.1 ; python_full_version < '3.10' # via semgrep deprecated==1.3.1 ; python_full_version < '3.10' # via # opentelemetry-api # opentelemetry-exporter-otlp-proto-http distlib==0.4.0 # via virtualenv docutils==0.21.2 # via # rstcheck-core # sphinx # sphinx-rtd-theme exceptiongroup==1.2.2 # via # anyio # pytest # semgrep # trio # trio-websocket face==24.0.0 # via glom filelock==3.19.1 ; python_full_version < '3.10' # via virtualenv filelock==3.20.0 ; python_full_version >= '3.10' # via virtualenv fonttools==4.60.1 # via matplotlib glom==22.1.0 # via semgrep googleapis-common-protos==1.72.0 # via opentelemetry-exporter-otlp-proto-http gprof2dot==2025.4.14 h11==0.16.0 # via # httpcore # uvicorn # wsproto httpcore==1.0.9 ; python_full_version >= '3.10' # via httpx httpx==0.28.1 ; python_full_version >= '3.10' # via mcp httpx-sse==0.4.3 ; python_full_version >= '3.10' # via mcp identify==2.6.15 # via pre-commit idna==3.11 # via # anyio # httpx # requests # trio imagesize==1.4.1 # via sphinx importlib-metadata==7.1.0 ; python_full_version < '3.10' # via # opentelemetry-api # sphinx importlib-metadata==8.7.0 ; python_full_version >= '3.10' # via opentelemetry-api importlib-resources==6.5.2 ; python_full_version < '3.10' # via matplotlib iniconfig==2.1.0 ; python_full_version < '3.10' # via pytest iniconfig==2.3.0 ; python_full_version >= '3.10' # via pytest jinja2==3.1.6 # via # reuse # sphinx jsonschema==4.25.1 # via # mcp # semgrep jsonschema-specifications==2025.9.1 # via jsonschema kiwisolver==1.4.7 ; python_full_version < '3.10' # via matplotlib kiwisolver==1.4.9 ; python_full_version >= '3.10' # via matplotlib license-expression==30.4.4 # via reuse markdown-it-py==3.0.0 ; python_full_version < '3.10' # via rich markdown-it-py==4.0.0 ; python_full_version >= '3.10' # via rich markupsafe==3.0.3 # via jinja2 matplotlib==3.9.4 ; python_full_version < '3.10' matplotlib==3.10.7 ; python_full_version >= '3.10' mcp==1.16.0 ; python_full_version >= '3.10' # via semgrep mdurl==0.1.2 # via markdown-it-py memory-profiler==0.61.0 nodeenv==1.9.1 # via # pre-commit # pyright numpy==2.0.2 ; python_full_version < '3.10' # via # contourpy # matplotlib numpy==2.2.6 ; python_full_version == '3.10.*' # via # contourpy # matplotlib numpy==2.3.4 ; python_full_version >= '3.11' # via # contourpy # matplotlib opentelemetry-api==1.25.0 ; python_full_version < '3.10' # via # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions # semgrep opentelemetry-api==1.37.0 ; python_full_version >= '3.10' # via # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions # semgrep opentelemetry-exporter-otlp-proto-common==1.25.0 ; python_full_version < '3.10' # via opentelemetry-exporter-otlp-proto-http opentelemetry-exporter-otlp-proto-common==1.37.0 ; python_full_version >= '3.10' # via opentelemetry-exporter-otlp-proto-http opentelemetry-exporter-otlp-proto-http==1.25.0 ; python_full_version < '3.10' # via semgrep opentelemetry-exporter-otlp-proto-http==1.37.0 ; python_full_version >= '3.10' # via semgrep opentelemetry-instrumentation==0.46b0 ; python_full_version < '3.10' # via opentelemetry-instrumentation-requests opentelemetry-instrumentation==0.58b0 ; python_full_version >= '3.10' # via opentelemetry-instrumentation-requests opentelemetry-instrumentation-requests==0.46b0 ; python_full_version < '3.10' # via semgrep opentelemetry-instrumentation-requests==0.58b0 ; python_full_version >= '3.10' # via semgrep opentelemetry-proto==1.25.0 ; python_full_version < '3.10' # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-http opentelemetry-proto==1.37.0 ; python_full_version >= '3.10' # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-http opentelemetry-sdk==1.25.0 ; python_full_version < '3.10' # via # opentelemetry-exporter-otlp-proto-http # semgrep opentelemetry-sdk==1.37.0 ; python_full_version >= '3.10' # via # opentelemetry-exporter-otlp-proto-http # semgrep opentelemetry-semantic-conventions==0.46b0 ; python_full_version < '3.10' # via # opentelemetry-instrumentation-requests # opentelemetry-sdk opentelemetry-semantic-conventions==0.58b0 ; python_full_version >= '3.10' # via # opentelemetry-instrumentation # opentelemetry-instrumentation-requests # opentelemetry-sdk opentelemetry-util-http==0.46b0 ; python_full_version < '3.10' # via opentelemetry-instrumentation-requests opentelemetry-util-http==0.58b0 ; python_full_version >= '3.10' # via opentelemetry-instrumentation-requests outcome==1.3.0.post0 # via # trio # trio-websocket packaging==25.0 # via # matplotlib # opentelemetry-instrumentation # pytest # requirements-parser # semgrep # sphinx # webdriver-manager peewee==3.18.3 # via semgrep pillow==11.3.0 ; python_full_version < '3.10' # via matplotlib pillow==12.0.0 ; python_full_version >= '3.10' # via matplotlib platformdirs==4.4.0 ; python_full_version < '3.10' # via virtualenv platformdirs==4.5.0 ; python_full_version >= '3.10' # via virtualenv pluggy==1.6.0 # via pytest pre-commit==4.3.0 # via # googleapis-common-protos # opentelemetry-proto protobuf==6.33.0 ; python_full_version >= '3.10' protobuf==4.25.8 ; python_full_version < '3.10' # via # googleapis-common-protos # opentelemetry-proto psutil==7.1.3 # via memory-profiler py-spy==0.4.1 pycparser==2.23 ; implementation_name != 'PyPy' and implementation_name != 'pypy' and os_name == 'nt' # via cffi pydantic==2.12.4 # via # mcp # pydantic-settings # rstcheck-core pydantic-core==2.41.5 # via pydantic pydantic-settings==2.11.0 ; python_full_version >= '3.10' # via mcp pygments==2.19.2 # via # pytest # rich # sphinx pyinstrument==5.1.1 pyparsing==3.2.5 # via matplotlib pyright==1.1.407 pysocks==1.7.1 # via urllib3 pytest==8.4.2 python-dateutil==2.9.0.post0 # via matplotlib python-debian==1.0.1 # via reuse python-dotenv==1.2.1 # via # pydantic-settings # webdriver-manager python-magic==0.4.27 ; python_full_version >= '3.10' # via reuse python-multipart==0.0.20 ; python_full_version >= '3.10' # via mcp pywin32==311 ; python_full_version >= '3.10' and sys_platform == 'win32' # via # mcp # semgrep pyyaml==6.0.3 # via pre-commit referencing==0.36.2 ; python_full_version < '3.10' # via # jsonschema # jsonschema-specifications referencing==0.37.0 ; python_full_version >= '3.10' # via # jsonschema # jsonschema-specifications requests==2.32.5 # via # opentelemetry-exporter-otlp-proto-http # semgrep # sphinx # webdriver-manager requirements-parser==0.13.0 reuse==5.1.1 ; python_full_version < '3.10' reuse==6.2.0 ; python_full_version >= '3.10' rich==13.5.3 # via # semgrep # typer roman-numerals-py==3.1.0 ; python_full_version >= '3.11' # via sphinx rpds-py==0.27.1 ; python_full_version < '3.10' # via # jsonschema # referencing rpds-py==0.28.0 ; python_full_version >= '3.10' # via # jsonschema # referencing rstcheck==6.2.5 rstcheck-core==1.2.2 # via rstcheck ruamel-yaml==0.18.16 # via semgrep ruamel-yaml-clib==0.2.14 ; python_full_version >= '3.10' or platform_python_implementation == 'CPython' # via # ruamel-yaml # semgrep ruff==0.14.4 selenium==4.36.0 ; python_full_version < '3.10' selenium==4.38.0 ; python_full_version >= '3.10' semgrep==1.136.0 ; python_full_version < '3.10' semgrep==1.142.1 ; python_full_version >= '3.10' setuptools==80.9.0 # via opentelemetry-instrumentation shellingham==1.5.4 # via typer six==1.17.0 # via python-dateutil sniffio==1.3.1 # via # anyio # trio snowballstemmer==3.0.1 # via sphinx sortedcontainers==2.4.0 # via trio sphinx==7.4.7 ; python_full_version < '3.10' # via # sphinx-rtd-theme # sphinxcontrib-jquery sphinx==8.1.3 ; python_full_version == '3.10.*' # via # sphinx-rtd-theme # sphinxcontrib-jquery sphinx==8.2.3 ; python_full_version >= '3.11' # via # sphinx-rtd-theme # sphinxcontrib-jquery sphinx-rtd-theme==3.0.2 sphinxcontrib-applehelp==2.0.0 # via sphinx sphinxcontrib-devhelp==2.0.0 # via sphinx sphinxcontrib-htmlhelp==2.1.0 # via sphinx sphinxcontrib-jquery==4.1 # via sphinx-rtd-theme sphinxcontrib-jsmath==1.0.1 # via sphinx sphinxcontrib-qthelp==2.0.0 # via sphinx sphinxcontrib-serializinghtml==2.0.0 # via sphinx sse-starlette==3.0.3 ; python_full_version >= '3.10' # via mcp starlette==0.49.3 ; python_full_version >= '3.10' # via mcp tomli==2.0.2 # via # pytest # semgrep # sphinx tomlkit==0.13.3 # via reuse trio==0.31.0 ; python_full_version < '3.10' # via # selenium # trio-websocket trio==0.32.0 ; python_full_version >= '3.10' # via # selenium # trio-websocket trio-websocket==0.12.2 # via selenium typer==0.20.0 # via rstcheck typing-extensions==4.15.0 # via # anyio # opentelemetry-api # opentelemetry-exporter-otlp-proto-http # opentelemetry-sdk # opentelemetry-semantic-conventions # pydantic # pydantic-core # pyright # referencing # selenium # semgrep # starlette # typer # typing-inspection # uvicorn # virtualenv typing-inspection==0.4.2 # via # pydantic # pydantic-settings urllib3==2.5.0 # via # requests # selenium # semgrep uvicorn==0.38.0 ; python_full_version >= '3.10' and sys_platform != 'emscripten' # via mcp virtualenv==20.35.4 # via pre-commit wcmatch==8.5.2 # via semgrep webdriver-manager==4.0.2 websocket-client==1.9.0 # via selenium wrapt==1.17.3 # via # deprecated # opentelemetry-instrumentation wsproto==1.2.0 # via trio-websocket zipp==3.23.0 # via # importlib-metadata # importlib-resources