Merge branch '2.2-dev' into 'master'

2.2 Release

Closes #130, #68, #140, #143, #113, #114, #111, #55, #54, #76, #122, #43, #119, #108, #39, #124, #131, and #57

See merge request !100
5 jobs for 2.2.1 in 2 minutes and 11 seconds (queued for 1 second)
Status Job ID Name Coverage
  Test
passed #2840
Go-py2.7

00:02:11

passed #2841
Go-py3.4

00:01:56

passed #2842
Go-py3.5

00:02:10

failed #2843
Go-py3.6

00:01:54

 
  Lint
skipped #2844
Go-flake8
 
Name Stage Failure
failed
Go-py3.6 Test There is an unknown failure, please try again
  Applying sites.0001_initial... OK
Applying sites.0002_alter_domain_unique... OK
$ echo "from django.contrib.auth import get_user_model; User = get_user_model(); User.objects.create_superuser('root', 'root@srct.gmu.edu', 'root') " | python manage.py shell
$ if pip list --outdated | grep "Latest" | wc -l > 0; then pip list --outdated && exit 1; else exit 0; fi
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
requests (2.13.0) - Latest: 2.14.2 [wheel]
setuptools (35.0.1) - Latest: 35.0.2 [wheel]
ERROR: Job failed: exit code 1