#######################################################################################
# Copyright ETSI Contributors and Others.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
a2wsgi==1.10.10
    # via connexion
aiohappyeyeballs==2.6.1
    # via aiohttp
aiohttp==3.13.0
    # via apache-airflow-providers-http
aiokafka==0.12.0
    # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
aiosignal==1.4.0
    # via aiohttp
alembic==1.16.5
    # via apache-airflow
anyio==4.11.0
    # via
    #   httpx
    #   starlette
apache-airflow==2.5.3
    # via
    #   -r requirements-dev.in
    #   apache-airflow-providers-common-sql
    #   apache-airflow-providers-ftp
    #   apache-airflow-providers-http
    #   apache-airflow-providers-imap
    #   apache-airflow-providers-sqlite
apache-airflow-providers-common-sql==1.8.1
    # via
    #   apache-airflow
    #   apache-airflow-providers-sqlite
apache-airflow-providers-ftp==3.6.1
    # via apache-airflow
apache-airflow-providers-http==4.7.0
    # via apache-airflow
apache-airflow-providers-imap==3.4.0
    # via apache-airflow
apache-airflow-providers-sqlite==3.5.0
    # via apache-airflow
apispec[yaml]==3.3.2
    # via
    #   apispec
    #   flask-appbuilder
argcomplete==3.6.2
    # via apache-airflow
asgiref==3.10.0
    # via
    #   apache-airflow-providers-http
    #   connexion
    #   flask
async-timeout==4.0.3
    # via
    #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
    #   aiohttp
    #   aiokafka
attrs==25.4.0
    # via
    #   aiohttp
    #   apache-airflow
    #   cattrs
    #   jsonschema
    #   referencing
babel==2.17.0
    # via flask-babel
blinker==1.9.0
    # via apache-airflow
cachelib==0.13.0
    # via
    #   flask-caching
    #   flask-session
cattrs==25.3.0
    # via apache-airflow
certifi==2025.10.5
    # via
    #   httpcore
    #   httpx
    #   requests
cffi==2.0.0
    # via cryptography
charset-normalizer==3.4.3
    # via requests
click==8.3.0
    # via
    #   flask
    #   flask-appbuilder
colorama==0.4.6
    # via flask-appbuilder
colorlog==4.8.0
    # via apache-airflow
configupdater==3.2
    # via apache-airflow
connexion[flask]==3.2.0
    # via
    #   apache-airflow
    #   connexion
cron-descriptor==2.0.6
    # via apache-airflow
croniter==6.0.0
    # via apache-airflow
cryptography==46.0.2
    # via apache-airflow
dataclasses==0.6
    # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
deprecated==1.2.18
    # via apache-airflow
dill==0.4.0
    # via apache-airflow
dnspython==2.8.0
    # via
    #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
    #   email-validator
    #   pymongo
email-validator==1.3.1
    # via flask-appbuilder
exceptiongroup==1.3.0
    # via
    #   anyio
    #   cattrs
flask[async]==2.2.5
    # via
    #   apache-airflow
    #   connexion
    #   flask-appbuilder
    #   flask-babel
    #   flask-caching
    #   flask-jwt-extended
    #   flask-login
    #   flask-session
    #   flask-sqlalchemy
    #   flask-wtf
flask-appbuilder==4.1.4
    # via apache-airflow
flask-babel==2.0.0
    # via flask-appbuilder
flask-caching==2.3.1
    # via apache-airflow
flask-jwt-extended==4.7.1
    # via flask-appbuilder
flask-login==0.6.3
    # via
    #   apache-airflow
    #   flask-appbuilder
flask-session==0.8.0
    # via apache-airflow
flask-sqlalchemy==2.5.1
    # via flask-appbuilder
flask-wtf==1.2.2
    # via
    #   apache-airflow
    #   flask-appbuilder
frozenlist==1.8.0
    # via
    #   aiohttp
    #   aiosignal
graphviz==0.21
    # via apache-airflow
greenlet==3.2.4
    # via sqlalchemy
gunicorn==23.0.0
    # via apache-airflow
h11==0.16.0
    # via httpcore
httpcore==1.0.9
    # via httpx
httpx==0.28.1
    # via
    #   apache-airflow
    #   connexion
idna==3.10
    # via
    #   anyio
    #   email-validator
    #   httpx
    #   requests
    #   yarl
inflection==0.5.1
    # via connexion
itsdangerous==2.2.0
    # via
    #   apache-airflow
    #   flask
    #   flask-wtf
jinja2==3.1.6
    # via
    #   apache-airflow
    #   connexion
    #   flask
    #   flask-babel
    #   python-nvd3
jsonschema==4.25.1
    # via
    #   apache-airflow
    #   connexion
    #   flask-appbuilder
jsonschema-specifications==2025.9.1
    # via jsonschema
lazy-object-proxy==1.12.0
    # via apache-airflow
linkify-it-py==2.0.3
    # via apache-airflow
lockfile==0.12.2
    # via
    #   apache-airflow
    #   python-daemon
mako==1.3.10
    # via alembic
markdown==3.9
    # via apache-airflow
markdown-it-py==4.0.0
    # via
    #   apache-airflow
    #   mdit-py-plugins
    #   rich
markupsafe==3.0.3
    # via
    #   apache-airflow
    #   jinja2
    #   mako
    #   werkzeug
    #   wtforms
marshmallow==3.26.1
    # via
    #   flask-appbuilder
    #   marshmallow-enum
    #   marshmallow-oneofschema
    #   marshmallow-sqlalchemy
marshmallow-enum==1.5.1
    # via flask-appbuilder
marshmallow-oneofschema==3.2.0
    # via apache-airflow
marshmallow-sqlalchemy==0.26.1
    # via flask-appbuilder
mdit-py-plugins==0.5.0
    # via apache-airflow
mdurl==0.1.2
    # via markdown-it-py
motor==3.7.1
    # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
msgspec==0.19.0
    # via flask-session
multidict==6.7.0
    # via
    #   aiohttp
    #   yarl
osm-common @ git+https://osm.etsi.org/gerrit/osm/common.git@v18.0
    # via -r requirements-dev.in
packaging==25.0
    # via
    #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
    #   aiokafka
    #   apache-airflow
    #   gunicorn
    #   marshmallow
pathspec==0.9.0
    # via apache-airflow
pendulum==3.1.0
    # via apache-airflow
pluggy==1.6.0
    # via apache-airflow
prison==0.2.1
    # via flask-appbuilder
propcache==0.4.0
    # via
    #   aiohttp
    #   yarl
psutil==7.1.0
    # via apache-airflow
pycparser==2.23
    # via cffi
pycryptodome==3.23.0
    # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
pygments==2.19.2
    # via
    #   apache-airflow
    #   rich
pyjwt==2.10.1
    # via
    #   apache-airflow
    #   flask-appbuilder
    #   flask-jwt-extended
pymongo==4.15.2
    # via
    #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
    #   motor
python-daemon==3.1.2
    # via apache-airflow
python-dateutil==2.9.0.post0
    # via
    #   apache-airflow
    #   croniter
    #   flask-appbuilder
    #   pendulum
python-multipart==0.0.20
    # via connexion
python-nvd3==0.16.0
    # via apache-airflow
python-slugify==8.0.4
    # via
    #   apache-airflow
    #   python-nvd3
pytz==2025.2
    # via
    #   croniter
    #   flask-babel
pyyaml==6.0.3
    # via
    #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
    #   apispec
    #   connexion
referencing==0.36.2
    # via
    #   jsonschema
    #   jsonschema-specifications
requests==2.32.5
    # via
    #   apache-airflow-providers-http
    #   connexion
    #   requests-toolbelt
requests-toolbelt==1.0.0
    # via apache-airflow-providers-http
rfc3339-validator==0.1.4
    # via apache-airflow
rich==14.1.0
    # via apache-airflow
rpds-py==0.27.1
    # via
    #   jsonschema
    #   referencing
setproctitle==1.3.7
    # via apache-airflow
six==1.17.0
    # via
    #   prison
    #   python-dateutil
    #   rfc3339-validator
sniffio==1.3.1
    # via anyio
sqlalchemy==1.4.54
    # via
    #   alembic
    #   apache-airflow
    #   flask-appbuilder
    #   flask-sqlalchemy
    #   marshmallow-sqlalchemy
    #   sqlalchemy-jsonfield
    #   sqlalchemy-utils
sqlalchemy-jsonfield==1.0.2
    # via apache-airflow
sqlalchemy-utils==0.42.0
    # via flask-appbuilder
sqlparse==0.5.3
    # via apache-airflow-providers-common-sql
starlette==0.48.0
    # via connexion
tabulate==0.9.0
    # via apache-airflow
tenacity==9.1.2
    # via apache-airflow
termcolor==3.1.0
    # via apache-airflow
text-unidecode==1.3
    # via python-slugify
tomli==2.2.1
    # via alembic
typing-extensions==4.15.0
    # via
    #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=v18.0
    #   a2wsgi
    #   aiokafka
    #   aiosignal
    #   alembic
    #   anyio
    #   apache-airflow
    #   asgiref
    #   cattrs
    #   connexion
    #   cron-descriptor
    #   cryptography
    #   exceptiongroup
    #   multidict
    #   referencing
    #   starlette
tzdata==2025.2
    # via pendulum
uc-micro-py==1.0.3
    # via linkify-it-py
unicodecsv==0.14.1
    # via apache-airflow
urllib3==2.5.0
    # via requests
werkzeug==3.1.3
    # via
    #   apache-airflow
    #   connexion
    #   flask
    #   flask-jwt-extended
    #   flask-login
wrapt==1.17.3
    # via deprecated
wtforms==3.2.1
    # via
    #   flask-appbuilder
    #   flask-wtf
yarl==1.22.0
    # via aiohttp
