# python 2 -> 3 compat.
six

# Python 3.12+ no longer bundles setuptools in venvs.
# Pyramid imports pkg_resources which was removed in setuptools 81+.
setuptools<81

# Pyramid with SQLAlchemy.
plaster_pastedeploy
pyramid
pyramid_jinja2
pyramid_debugtoolbar
waitress
pyramid_retry

# Model. 
pyramid_tm
SQLAlchemy
SQLAlchemy-Utils
transaction
zope.sqlalchemy
alembic

# boto3 is needed for AWS s3 or Digital Ocean Spaces.
boto3

# Create URI slugs from titles.
python-slugify

# Future proof, computationally complex password hashes.
bcrypt

# credit card storage and processing.
stripe

# PayPal REST API SDK for payments.
paypalrestsdk

# Adyen payment processing SDK.
Adyen

# DKIM Signed Email from Python, lot's of extras in here like async.
# https://git.launchpad.net/dkimpy/tree/setup.py#n84
dkimpy

# needed for signing with ed25519 keys.
dkimpy[ed25519]

# MarkDown is a popular and familair WYSIWYM markup language.
# python 3.
markdown

# human readable timestamps.
ago

# miniuri: The Universal URI Parser
miniuri

# Bleach sanitizes MarkDown (removes HTML/Javascript) to prevent XSS.
bleach>=6.0.0
bleach-allowlist
beautifulsoup4
html5lib

# HTTP client used by lib/crypto_watcher/wallet_http_clients.py to
# talk to the wallet beam at wallet.unturf.com over JSON-RPC 2.0
# (replaces the prior Erlang dist transport). Most other deps
# already pull `requests` transitively (stripe, boto3) — pinned
# here explicitly because wallet_http_clients is a top-level
# consumer of it.
requests>=2.28
