# 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 --extra airflow -o requirements/locks/tests-optional-airflow.txt
a2wsgi==1.10.10 ; python_full_version < '3.14'
    # via apache-airflow-core
aiosmtplib==5.1.0 ; python_full_version < '3.14'
    # via apache-airflow-providers-smtp
aiosqlite==0.21.0 ; python_full_version < '3.14'
    # via apache-airflow-core
alembic==1.18.4 ; python_full_version < '3.14'
    # via apache-airflow-core
annotated-doc==0.0.4 ; python_full_version < '3.14'
    # via
    #   fastapi
    #   typer
annotated-types==0.7.0 ; python_full_version < '3.14'
    # via pydantic
anyio==4.13.0 ; python_full_version < '3.14'
    # via
    #   httpx
    #   starlette
    #   watchfiles
apache-airflow==3.2.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-providers-common-compat
    #   apache-airflow-providers-common-io
    #   apache-airflow-providers-common-sql
    #   apache-airflow-providers-smtp
    #   apache-airflow-providers-standard
    #   cmd-queue
apache-airflow-core==3.2.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow
    #   apache-airflow-task-sdk
apache-airflow-providers-common-compat==1.14.3 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-providers-common-io
    #   apache-airflow-providers-common-sql
    #   apache-airflow-providers-smtp
    #   apache-airflow-providers-standard
apache-airflow-providers-common-io==1.7.2 ; python_full_version < '3.14'
    # via apache-airflow-core
apache-airflow-providers-common-sql==1.36.0 ; python_full_version < '3.14'
    # via apache-airflow-core
apache-airflow-providers-smtp==3.0.0 ; python_full_version < '3.14'
    # via apache-airflow-core
apache-airflow-providers-standard==1.13.0 ; python_full_version < '3.14'
    # via apache-airflow-core
apache-airflow-task-sdk==1.2.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow
    #   apache-airflow-core
argcomplete==3.6.3 ; python_full_version < '3.14'
    # via apache-airflow-core
asgiref==3.11.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-providers-common-compat
    #   apache-airflow-task-sdk
attrs==26.1.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   jsonschema
    #   outcome
    #   referencing
    #   svcs
babel==2.18.0 ; python_full_version < '3.14'
    # via apache-airflow-task-sdk
backports-strenum==1.3.1 ; python_full_version < '3.11'
    # via cadwyn
cadwyn==6.2.2 ; python_full_version < '3.14'
    # via apache-airflow-core
certifi==2026.5.20 ; python_full_version < '3.14'
    # via
    #   httpcore
    #   httpx
    #   requests
cffi==2.0.0 ; python_full_version < '3.14' and platform_python_implementation != 'PyPy'
    # via cryptography
charset-normalizer==3.4.7 ; python_full_version < '3.14'
    # via requests
click==8.4.0 ; python_full_version < '3.14'
    # via
    #   rich-toolkit
    #   typer
    #   uvicorn
colorama==0.4.6 ; python_full_version < '4' and sys_platform == 'win32'
    # via
    #   click
    #   colorlog
    #   pytest
    #   uvicorn
colorlog==6.10.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
coverage==7.14.0 ; python_full_version < '4'
    # via
    #   cmd-queue
    #   pytest-cov
cron-descriptor==2.0.8 ; python_full_version < '3.14'
    # via apache-airflow-core
croniter==6.2.2 ; python_full_version < '3.14'
    # via apache-airflow-core
cryptography==48.0.0 ; python_full_version < '3.14'
    # via apache-airflow-core
deprecated==1.3.1 ; python_full_version < '3.14'
    # via apache-airflow-core
dill==0.4.1 ; python_full_version < '3.14'
    # via apache-airflow-core
dnspython==2.8.0 ; python_full_version < '3.14'
    # via email-validator
email-validator==2.3.0 ; python_full_version < '3.14'
    # via fastapi
exceptiongroup==1.3.1 ; python_full_version < '3.11'
    # via
    #   anyio
    #   pytest
fastapi==0.136.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   cadwyn
fastapi-cli==0.0.24 ; python_full_version < '3.14'
    # via fastapi
flexcache==0.3 ; python_full_version < '4'
    # via pint
flexparser==0.4 ; python_full_version < '4'
    # via pint
fsspec==2026.4.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-task-sdk
    #   universal-pathlib
googleapis-common-protos==1.75.0 ; python_full_version < '3.14'
    # via
    #   opentelemetry-exporter-otlp-proto-grpc
    #   opentelemetry-exporter-otlp-proto-http
greenback==1.3.0 ; python_full_version < '3.14'
    # via apache-airflow-task-sdk
greenlet==3.5.1 ; python_full_version < '3.14'
    # via
    #   greenback
    #   sqlalchemy
grpcio==1.80.0 ; python_full_version < '3.14'
    # via opentelemetry-exporter-otlp-proto-grpc
h11==0.16.0 ; python_full_version < '3.14'
    # via
    #   httpcore
    #   uvicorn
httpcore==1.0.9 ; python_full_version < '3.14'
    # via httpx
httptools==0.7.1 ; python_full_version < '3.14'
    # via uvicorn
httpx==0.28.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   fastapi
idna==3.15 ; python_full_version < '3.14'
    # via
    #   anyio
    #   email-validator
    #   httpx
    #   requests
importlib-metadata==9.0.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
iniconfig==2.3.0 ; python_full_version < '4'
    # via pytest
itsdangerous==2.2.0 ; python_full_version < '3.14'
    # via apache-airflow-core
jinja2==3.1.6 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   cadwyn
    #   fastapi
jsonschema==4.26.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
jsonschema-specifications==2025.9.1 ; python_full_version < '3.14'
    # via jsonschema
kwutil==0.3.8
    # via cmd-queue
lazy-loader==0.5
    # via kwutil
lazy-object-proxy==1.12.0 ; python_full_version < '3.14'
    # via apache-airflow-core
libcst==1.8.6 ; python_full_version < '3.14'
    # via apache-airflow-core
linkify-it-py==2.1.0 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   markdown-it-py
lockfile==0.12.2 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   python-daemon
mako==1.3.12 ; python_full_version < '3.14'
    # via alembic
markdown-it-py==3.0.0 ; python_full_version < '3.11'
    # via
    #   mdit-py-plugins
    #   rich
    #   textual
markdown-it-py==4.2.0 ; python_full_version >= '3.11' and python_full_version < '4'
    # via
    #   mdit-py-plugins
    #   rich
    #   textual
markupsafe==3.0.3 ; python_full_version < '3.14'
    # via
    #   jinja2
    #   mako
mdit-py-plugins==0.6.1 ; python_full_version < '4'
    # via textual
mdurl==0.1.2 ; python_full_version < '4'
    # via markdown-it-py
methodtools==0.4.7 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-providers-common-sql
    #   apache-airflow-task-sdk
more-itertools==11.0.2 ; python_full_version < '3.14'
    # via apache-airflow-providers-common-sql
msgspec==0.21.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
natsort==8.4.0 ; python_full_version < '3.14'
    # via apache-airflow-core
networkx==3.4.2 ; python_full_version < '3.11'
    # via cmd-queue
networkx==3.6.1 ; python_full_version >= '3.11' and python_full_version < '4'
    # via cmd-queue
numpy==2.2.6 ; python_full_version < '3.11'
    # via
    #   cmd-queue
    #   pandas
numpy==2.4.6 ; python_full_version >= '3.11' and python_full_version < '4'
    # via
    #   cmd-queue
    #   pandas
opentelemetry-api==1.42.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   opentelemetry-exporter-otlp-proto-grpc
    #   opentelemetry-exporter-otlp-proto-http
    #   opentelemetry-sdk
    #   opentelemetry-semantic-conventions
opentelemetry-exporter-otlp==1.42.1 ; python_full_version < '3.14'
    # via apache-airflow-core
opentelemetry-exporter-otlp-proto-common==1.42.1 ; python_full_version < '3.14'
    # via
    #   opentelemetry-exporter-otlp-proto-grpc
    #   opentelemetry-exporter-otlp-proto-http
opentelemetry-exporter-otlp-proto-grpc==1.42.1 ; python_full_version < '3.14'
    # via opentelemetry-exporter-otlp
opentelemetry-exporter-otlp-proto-http==1.42.1 ; python_full_version < '3.14'
    # via opentelemetry-exporter-otlp
opentelemetry-proto==1.42.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   opentelemetry-exporter-otlp-proto-common
    #   opentelemetry-exporter-otlp-proto-grpc
    #   opentelemetry-exporter-otlp-proto-http
opentelemetry-sdk==1.42.1 ; python_full_version < '3.14'
    # via
    #   opentelemetry-exporter-otlp-proto-grpc
    #   opentelemetry-exporter-otlp-proto-http
opentelemetry-semantic-conventions==0.63b1 ; python_full_version < '3.14'
    # via opentelemetry-sdk
outcome==1.3.0.post0 ; python_full_version < '3.14'
    # via greenback
packaging==26.2
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   lazy-loader
    #   pytest
pandas==2.3.3 ; python_full_version < '3.11'
    # via cmd-queue
pandas==3.0.3 ; python_full_version >= '3.11' and python_full_version < '4'
    # via cmd-queue
pathlib-abc==0.5.2 ; python_full_version < '3.14'
    # via universal-pathlib
pathspec==1.1.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
pendulum==3.2.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
pint==0.24.4 ; python_full_version < '3.11'
    # via cmd-queue
pint==0.25.3 ; python_full_version >= '3.11' and python_full_version < '4'
    # via cmd-queue
platformdirs==4.9.6 ; python_full_version < '4'
    # via
    #   pint
    #   textual
pluggy==1.6.0 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   pytest
    #   pytest-cov
progiter==2.0.0
    # via kwutil
protobuf==6.33.6 ; python_full_version < '3.14'
    # via
    #   googleapis-common-protos
    #   opentelemetry-proto
psutil==7.2.2 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   cmd-queue
pycparser==3.0 ; python_full_version < '3.14' and implementation_name != 'PyPy' and platform_python_implementation != 'PyPy'
    # via cffi
pydantic==2.13.4 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   cadwyn
    #   fastapi
    #   pydantic-extra-types
    #   pydantic-settings
pydantic-core==2.46.4 ; python_full_version < '3.14'
    # via pydantic
pydantic-extra-types==2.11.1 ; python_full_version < '3.14'
    # via fastapi
pydantic-settings==2.14.1 ; python_full_version < '3.14'
    # via fastapi
pygments==2.20.0 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   pytest
    #   rich
    #   textual
pygtrie==2.5.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
pyjwt==2.13.0 ; python_full_version < '3.14'
    # via apache-airflow-core
pytest==9.0.3 ; python_full_version < '4'
    # via
    #   cmd-queue
    #   pytest-cov
pytest-cov==7.1.0 ; python_full_version < '4'
    # via cmd-queue
python-daemon==3.1.2 ; python_full_version < '3.14'
    # via apache-airflow-core
python-dateutil==2.9.0.post0 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   croniter
    #   pandas
    #   pendulum
python-dotenv==1.2.2 ; python_full_version < '3.14'
    # via
    #   pydantic-settings
    #   uvicorn
python-multipart==0.0.29 ; python_full_version < '3.14'
    # via fastapi
python-slugify==8.0.4 ; python_full_version < '3.14'
    # via apache-airflow-core
pytz==2026.2 ; python_full_version < '3.11'
    # via pandas
pyyaml==6.0.3 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   libcst
    #   scriptconfig
    #   uvicorn
pyyaml-ft==8.0.0 ; python_full_version == '3.13.*'
    # via libcst
referencing==0.37.0 ; python_full_version < '3.14'
    # via
    #   jsonschema
    #   jsonschema-specifications
requests==2.34.2 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   opentelemetry-exporter-otlp-proto-http
rich==15.0.0 ; python_full_version < '4'
    # via
    #   apache-airflow-core
    #   cmd-queue
    #   rich-argparse
    #   rich-toolkit
    #   textual
    #   typer
rich-argparse==1.8.0 ; python_full_version < '3.14'
    # via apache-airflow-core
rich-toolkit==0.19.10 ; python_full_version < '3.14'
    # via fastapi-cli
rpds-py==0.30.0 ; python_full_version < '3.14'
    # via
    #   jsonschema
    #   referencing
ruamel-yaml==0.19.1
    # via cmd-queue
scriptconfig==0.9.1
    # via cmd-queue
setproctitle==1.3.7 ; python_full_version < '3.14'
    # via apache-airflow-core
shellingham==1.5.4 ; python_full_version < '3.14'
    # via typer
six==1.17.0 ; python_full_version < '4'
    # via
    #   python-dateutil
    #   wirerope
sniffio==1.3.1 ; python_full_version < '3.14'
    # via greenback
sqlalchemy==2.0.49 ; python_full_version < '3.14'
    # via
    #   alembic
    #   apache-airflow-core
sqlparse==0.5.5 ; python_full_version < '3.14'
    # via apache-airflow-providers-common-sql
starlette==0.52.1 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   cadwyn
    #   fastapi
structlog==25.5.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
svcs==25.1.0 ; python_full_version < '3.14'
    # via apache-airflow-core
tabulate==0.10.0 ; python_full_version < '3.14'
    # via apache-airflow-core
tenacity==9.1.4 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   apache-airflow-task-sdk
termcolor==3.3.0 ; python_full_version < '3.14'
    # via apache-airflow-core
text-unidecode==1.3 ; python_full_version < '3.14'
    # via python-slugify
textual==8.2.7 ; python_full_version < '4'
    # via cmd-queue
tomli==2.4.1 ; python_full_version <= '3.11'
    # via
    #   alembic
    #   coverage
    #   fastapi-cli
    #   pytest
typer==0.25.1 ; python_full_version < '3.14'
    # via fastapi-cli
typing-extensions==4.15.0 ; python_full_version < '4'
    # via
    #   a2wsgi
    #   aiosqlite
    #   alembic
    #   anyio
    #   apache-airflow-core
    #   apache-airflow-task-sdk
    #   asgiref
    #   cadwyn
    #   cron-descriptor
    #   cryptography
    #   exceptiongroup
    #   fastapi
    #   flexcache
    #   flexparser
    #   grpcio
    #   opentelemetry-api
    #   opentelemetry-exporter-otlp-proto-grpc
    #   opentelemetry-exporter-otlp-proto-http
    #   opentelemetry-sdk
    #   opentelemetry-semantic-conventions
    #   pint
    #   pydantic
    #   pydantic-core
    #   pydantic-extra-types
    #   pyjwt
    #   referencing
    #   rich-toolkit
    #   sqlalchemy
    #   starlette
    #   structlog
    #   textual
    #   typing-inspection
    #   uvicorn
typing-inspection==0.4.2 ; python_full_version < '3.14'
    # via
    #   cadwyn
    #   fastapi
    #   pydantic
    #   pydantic-settings
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.14' and sys_platform != 'emscripten' and sys_platform != 'win32')
    # via
    #   pandas
    #   pendulum
ubelt==1.4.2
    # via
    #   cmd-queue
    #   kwutil
    #   scriptconfig
uc-micro-py==2.0.0 ; python_full_version < '4'
    # via linkify-it-py
universal-pathlib==0.3.10 ; python_full_version < '3.14'
    # via apache-airflow-core
urllib3==2.7.0 ; python_full_version < '3.14'
    # via requests
uuid6==2025.0.1 ; python_full_version < '3.14'
    # via apache-airflow-core
uvicorn==0.47.0 ; python_full_version < '3.14'
    # via
    #   apache-airflow-core
    #   fastapi
    #   fastapi-cli
uvloop==0.22.1 ; python_full_version < '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32'
    # via uvicorn
watchfiles==1.2.0 ; python_full_version < '3.14'
    # via uvicorn
websockets==16.0 ; python_full_version < '3.14'
    # via uvicorn
wirerope==1.0.0 ; python_full_version < '3.14'
    # via methodtools
wrapt==2.2.0 ; python_full_version < '3.14'
    # via deprecated
xdoctest==1.3.2
    # via cmd-queue
zipp==4.1.0 ; python_full_version < '3.14'
    # via importlib-metadata
