# This file was autogenerated by uv via the following command:
#    uv pip compile requirements.in -o requirements.txt
bidict==0.23.1
    # via python-socketio
blinker==1.9.0
    # via flask
brotli==1.2.0
    # via geventhttpclient
certifi==2025.8.3
    # via
    #   geventhttpclient
    #   requests
charset-normalizer==3.4.3
    # via requests
click==8.3.0
    # via flask
configargparse==1.7.1
    # via locust
faker==40.1.0
    # via -r requirements.in
flask==3.1.3
    # via
    #   flask-cors
    #   flask-login
    #   locust
flask-cors==6.0.1
    # via locust
flask-login==0.6.3
    # via locust
gevent==25.9.1
    # via
    #   geventhttpclient
    #   locust
geventhttpclient==2.3.4
    # via locust
greenlet==3.2.4
    # via gevent
h11==0.16.0
    # via wsproto
idna==3.10
    # via requests
iniconfig==2.1.0
    # via pytest
itsdangerous==2.2.0
    # via flask
jinja2==3.1.6
    # via flask
locust==2.43.0
    # via -r requirements.in
markupsafe==3.0.2
    # via
    #   flask
    #   jinja2
    #   werkzeug
msgpack==1.1.1
    # via locust
packaging==25.0
    # via pytest
pluggy==1.6.0
    # via pytest
psutil==7.1.0
    # via locust
pygments==2.19.2
    # via pytest
pytest==8.4.2
    # via locust
python-engineio==4.12.2
    # via
    #   locust
    #   python-socketio
python-socketio[client]==5.13.0
    # via locust
pyzmq==27.1.0
    # via locust
requests==2.32.5
    # via
    #   locust
    #   python-socketio
simple-websocket==1.1.0
    # via python-engineio
tzdata==2025.2
    # via faker
urllib3==2.6.3
    # via
    #   geventhttpclient
    #   requests
websocket-client==1.8.0
    # via python-socketio
werkzeug==3.1.6
    # via
    #   flask
    #   flask-cors
    #   flask-login
    #   locust
wsproto==1.2.0
    # via simple-websocket
zope-event==6.0
    # via gevent
zope-interface==8.0
    # via gevent
