Files
TimeTracker/requirements.txt
T
Dries Peeters e34a668ddc feat(auth): add LDAP directory authentication
Introduce AUTH_METHOD values ldap and all, with LDAP_* environment settings, ldap3-based LDAPService (search, optional groupOfNames checks, user bind, DB sync), and users.auth_provider (local|oidc|ldap) via migration 153_add_user_auth_provider.

Login supports LDAP-only and combined all (local then LDAP where appropriate); OIDC callback sets auth_provider. Forgot/reset/change password flows skip LDAP-managed accounts. Admin System Settings gains a read-only LDAP summary and POST /admin/ldap/test. Production env validation requires core LDAP variables when LDAP is enabled; OIDC registration and docs recognize all.

Documentation: new docs/admin/configuration/LDAP_SETUP.md; updates to OIDC_SETUP, GETTING_STARTED, Docker guides, Render deploy notes, docs README, and CHANGELOG. Tests: tests/test_ldap_auth.py; test_oidc_logout allows auth_method all.
2026-04-27 19:08:08 +02:00

95 lines
1.6 KiB
Plaintext

# Core Flask dependencies
Flask==3.0.0
Flask-SQLAlchemy==3.1.1
Flask-Migrate==4.0.5
Flask-Login==0.6.3
Flask-SocketIO==5.3.6
# OAuth / OIDC
Authlib==1.3.1
PyJWT==2.8.0
# LDAP (directory authentication)
ldap3==2.9.1
# Database
SQLAlchemy==2.0.23
alembic==1.13.1
psycopg2-binary==2.9.9
# Web server
gunicorn==23.0.0
eventlet==0.40.3
# Security and forms
Flask-WTF==1.2.1
Flask-Limiter==3.8.0
# Utilities
python-dotenv==1.0.0
tzdata>=2023.3
python-dateutil==2.8.2
Werkzeug==3.0.6
requests==2.32.4
packaging==24.2
# Email
Flask-Mail==0.9.1
# Excel export
openpyxl==3.1.2
# PDF Generation
WeasyPrint==60.2
pydyf==0.10.0
Pillow==10.4.0
reportlab==4.0.7
pikepdf>=8.0.0
# Background tasks
APScheduler==3.10.4
# Internationalization
Flask-Babel==4.0.0
Babel==2.14.0
# Security
cryptography==45.0.6
markdown==3.6
bleach==6.1.0
pyotp==2.9.0
# Analytics and Monitoring
python-json-logger==2.0.7
sentry-sdk==1.40.0
prometheus-client==0.19.0
# OpenTelemetry (OTLP traces + metrics; aligns instrumentation 0.48 with SDK 1.27)
opentelemetry-api==1.27.0
opentelemetry-sdk==1.27.0
opentelemetry-exporter-otlp-proto-http==1.27.0
opentelemetry-instrumentation==0.48b0
opentelemetry-instrumentation-flask==0.48b0
opentelemetry-instrumentation-sqlalchemy==0.48b0
opentelemetry-semantic-conventions==0.48b0
# API Documentation
flask-swagger-ui==5.21.0
apispec==6.3.0
marshmallow==3.20.1
# OCR for receipt scanning
pytesseract==0.3.10
# Payment Gateway Integration
stripe==7.0.0
# Calendar Integration
google-api-python-client==2.100.0
google-auth-httplib2==0.1.1
google-auth-oauthlib==1.1.0
icalendar==6.3.1
# Redis for caching
redis==5.0.1
hiredis==2.2.3