# python 2/3 compat
future>=0.15.2

# Flask and friends
Flask>=0.10.1
Flask-SQLAlchemy>1.0
Flask-Testing>=0.4.2
Flask-WTF>=0.9.4
Flask-Script
Flask-DebugToolbar>=0.10
Flask-Uploads
Flask-Migrate>=1.6.0
Flask-Babel>=0.9
Flask-Assets>=0.10
Flask-Mail>=0.9.1
blinker

# Flask-Security and Flask-Login are both pinned
Flask-Security==1.7.4
Flask-Login==0.2.11

# pathlib is included in python 3.4, and very useful
pathlib

# can parse isoformat / used in a jinja filter
python-dateutil>=2.4.0

# Databases / persistence
SQLAlchemy>=0.9,<1.0
psycopg2>=2.6.1
alembic>=0.7.7,<0.8

# requirement of jinja2; > 0.21 has an important fix for string format. See
# https://github.com/mitsuhiko/markupsafe/issues/28
MarkupSafe>0.21

# Indexing
Whoosh>=2.5,<2.6

# Task queue
celery>=3.1,<3.2
redis>=2.10.1

# Plugins (TODO: replace)
straight.plugin==1.4.0-post-1

# Security
bleach>=1.4.2
py-bcrypt

# Others (TODO: document)
Markdown
PyYAML
pygeoip

# "fork" of progressbar which is not installable with pip > 1.5
progressbar-latest

# Forms (TODO: need some updates)
WTForms-Alchemy==0.12.9
WTForms-Components<0.10
# required by wtforms-alchemy, but 0.24.0 needs sqlalchemy >= 0.9
SQLAlchemy-Utils<0.24.0

# for debug toolbar
sqlparse

# antivirus interface
clamd

# Content detection / transformation
Pillow>=2.7.0
python-magic

# Reporting
pandas>=0.17

#
# Assets management (might not be necessary if distributing compiled assets)
#
jsmin
cssmin
closure
cssselect
lxml

