django>=1.8.4,<2.0

# Automatically renders Django forms in a pretty, Bootstrap-compatible way.
django-crispy-forms>=1.5.1

# Page data, answer data, ... all represented in JSON. This makes that editable
# in the Django admin.
jsonfield>=1.0.3,<1.1

# django-yamlfield
# but for
# https://github.com/datadesk/django-yamlfield/pull/12
# use
git+https://github.com/piotrpawlaczek/django-yamlfield.git@feature/dj-1.9.x

# For easy content formatting:
markdown>=2.6.3

# For rendering macros in content:
jinja2

six

# For math/symbolic questions
pymbolic
sympy

# Django timezone support
pytz

# Course content is stored in YAML.
pyyaml

# dulwich (git for Py3 support)
dulwich>=0.12
ecdsa
paramiko

# A date picker widget
git+https://github.com/inducer/django-bootstrap3-datetimepicker.git

# For in-class instant messaging
#dnspython  # Py2
dnspython3  # Py3
sleekxmpp

# To manage web dependencies
django-bower

# For comfortable code entry (git for py3 fix in git rev 8979538)
git+https://github.com/lambdalisue/django-codemirror-widget.git
#django-codemirror-widget

# Optional, used for caching, requires 'libmemcached-dev' (Debian package name)
# pylibmc

# For code isolation in code questions
docker-py

# For code highlighting, required via the CodeHilite extension to
# Python-Markdown
pygments

# For grade export
unicodecsv

# To support network matching for facility recognition
ipaddress

# For interoperation with SAML2/Shibboleth
pysaml2
git+https://github.com/knaperek/djangosaml2.git

# A task queue, used to execute long-running tasks
celery
# django-celery (release) is broken: https://github.com/celery/django-celery/issues/411
# but fixed in Debian.
git+https://anonscm.debian.org/git/python-modules/packages/django-celery.git

# For searchable select widgets
django_select2>=5.5.0

# Custom user migration created using
# https://bitbucket.org/spookylukey/django_custom_user_migration
# (but this package no longer needs to be installed)

# For query lexing
pytools
