#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
#    pip-compile --allow-unsafe --output-file=constraints.txt --strip-extras requirements.in
#
asgiref==3.8.1
    # via
    #   django
    #   django-htmx
certifi==2024.8.30
    # via requests
charset-normalizer==3.4.0
    # via requests
contourpy==1.3.1
    # via matplotlib
crispy-bootstrap5==2024.10
    # via -r requirements.in
cycler==0.12.1
    # via matplotlib
django==5.1.4
    # via
    #   -r requirements.in
    #   crispy-bootstrap5
    #   django-anymail
    #   django-crispy-forms
    #   django-csp
    #   django-extensions
    #   django-htmx
    #   django-solo
django-anymail==12.0
    # via -r requirements.in
django-cleanup==9.0.0
    # via -r requirements.in
django-crispy-forms==2.3
    # via
    #   -r requirements.in
    #   crispy-bootstrap5
django-csp==3.8
    # via -r requirements.in
django-environ==0.11.2
    # via -r requirements.in
django-extensions==3.2.3
    # via -r requirements.in
django-htmx==1.21.0
    # via -r requirements.in
django-solo==2.4.0
    # via -r requirements.in
fonttools==4.55.2
    # via matplotlib
freezegun==1.5.1
    # via -r requirements.in
gunicorn==23.0.0
    # via -r requirements.in
idna==3.10
    # via requests
kiwisolver==1.4.7
    # via matplotlib
matplotlib==3.9.3
    # via -r requirements.in
numpy==2.2.0
    # via
    #   contourpy
    #   matplotlib
packaging==24.2
    # via
    #   gunicorn
    #   matplotlib
pillow==11.0.0
    # via
    #   -r requirements.in
    #   matplotlib
pyparsing==3.2.0
    # via matplotlib
python-dateutil==2.9.0.post0
    # via
    #   freezegun
    #   matplotlib
requests==2.32.3
    # via
    #   -r requirements.in
    #   django-anymail
six==1.17.0
    # via python-dateutil
sqlparse==0.5.2
    # via django
urllib3==2.2.3
    # via
    #   django-anymail
    #   requests
whitenoise==6.8.2
    # via -r requirements.in