# Optional features.  Each "# extra:" line names one feature, "default" when a
# new install takes it without being asked, and after "locks:" every package
# in requirements.lock.txt that only this feature uses.  The requirement lines
# under it are what `install_dependencies.sh compile` resolves into the one
# lock, beside requirements.txt.
#
# `install_dependencies.sh install` takes a feature's packages only when
# SAVI_EXTRAS names it (a list, "all" or "none"), when SAVI_EXTRAS is unset
# and the feature is a default, or when the environment already has it.
#
# extra: encryption default  locks: sqlcipher3
# The index database, encrypted at rest (C26).  A new store starts encrypted,
# so a new install takes it.  A self-contained wheel with SQLCipher built in,
# for macOS and Linux;  imported only when the index is, or is about to be,
# encrypted.
sqlcipher3==0.6.2
# extra: postgres  locks: psycopg psycopg-binary
# The external database a buyer may point the product at with one setting
# (SAVI_COMMS_DATABASE_URL).  Imported only when that setting names Postgres.
psycopg[binary]>=3.2
# extra: email  locks: azure-communication-email
# Outgoing mail through an Azure Communication Services resource.  Imported
# only when the mail way connected is that resource.
azure-communication-email
