# wrinkleFE runtime dependencies (Streamlit Cloud + local CLI/test).
# Compatible-release ranges: pyproject declares requires-python >= 3.10, but
# the absolute latest numpy / scipy lines (2.4 / 1.17) require Python >= 3.11.
# The ranges below pick the most recent series that supports the full
# 3.10-3.13 matrix.
#
# stdlib modules and dev tools (pytest, ruff, mypy) are excluded by design.
# This project is Streamlit-first (web) and CLI-only — there is no desktop GUI,
# so PyQt6 / pyvistaqt deliberately do not appear here.

# --- Core (numerical + plotting) ---
numpy>=2.1,<3
scipy>=1.14,<2
matplotlib>=3.9,<4

# --- Web app ---
# Tracks the `streamlit` extra in pyproject.toml. The floors here must
# satisfy pyproject's constraints (they may be tighter, never looser) —
# enforced by tests/test_requirements_consistency.py rather than by this
# comment alone.
streamlit>=1.57.0
plotly>=6.7.0

# --- Optional: acknowledgment-gate usage logging to Google Sheets ---
# Used by usage_tracking.py. Import is fail-soft: if these are absent or no
# gcp_service_account secret is configured, the app still runs and logging is
# silently skipped (see usage_tracking.py and docs/internal/DEPLOYMENT_STREAMLIT.md).
gspread>=6.2.1
google-auth>=2.61.0
