From 8f7c40f5a8a6465a3211692bf43978af5dc5fc38 Mon Sep 17 00:00:00 2001
From: edX requirements bot
 <49161187+edx-requirements-bot@users.noreply.github.com>
Date: Tue, 9 Mar 2021 13:13:01 -0500
Subject: [PATCH] Add Common Constraint (#139)

* Python code cleanup by the cleanup-python-code Jenkins job.

This pull request was generated by the cleanup-python-code Jenkins job, which ran
```
add_common_constraint; make upgrade
```

The following packages were installed:
`edx-repo-tools`

* Added --django-settings-module to pylint

* Changed position

* Remove django-settings-module from pylint command

* Add django-not-configured in pylintrc

Co-authored-by: Muhammad Soban Javed <58461728+iamsobanjaved@users.noreply.github.com>
---
 pylintrc                     |   1 +
 requirements/base.txt        | 138 +++++++++----
 requirements/constraints.txt |   6 +-
 requirements/django.txt      |   2 +-
 requirements/pip_tools.txt   |   6 +-
 requirements/test.txt        | 301 +++++++++++++++++++++------
 requirements/tox.txt         |  37 +++-
 requirements/travis.txt      | 382 ++++++++++++++++++++++++++++-------
 8 files changed, 689 insertions(+), 184 deletions(-)

diff --git a/pylintrc b/pylintrc
index 80e6a0a..7bb43b6 100644
--- a/pylintrc
+++ b/pylintrc
@@ -289,6 +289,7 @@ disable =
 	unused-wildcard-import,
 	global-statement,
 	no-else-return,
+    django-not-configured,
 	
 	apply-builtin,
 	backtick,
diff --git a/requirements/base.txt b/requirements/base.txt
index 6a07b76..db83d32 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -4,42 +4,108 @@
 #
 #    make upgrade
 #
-appdirs==1.4.4            # via fs
-bleach==3.2.2             # via -r requirements/base.in
-certifi==2020.12.5        # via requests
-chardet==4.0.0            # via requests
-django-filter==2.4.0      # via -r requirements/base.in
-django==2.2.17            # via -c requirements/constraints.txt, -r requirements/base.in, django-filter, edx-opaque-keys, jsonfield2
-edx-opaque-keys[django]==2.1.1  # via -r requirements/base.in
-fs==2.4.12                # via xblock
-future==0.18.2            # via pyjwkest
-idna==2.10                # via requests
-jsonfield2==3.0.3         # via -c requirements/constraints.txt, -r requirements/base.in
-lazy==1.4                 # via -r requirements/base.in
-lxml==4.6.2               # via -r requirements/base.in, xblock
-mako==1.1.4               # via -r requirements/base.in, xblock-utils
-markupsafe==1.1.1         # via mako, xblock
-oauthlib==3.1.0           # via -r requirements/base.in
-packaging==20.8           # via bleach
-pbr==5.5.1                # via stevedore
-pycryptodomex==3.9.9      # via -r requirements/base.in, pyjwkest
-pyjwkest==1.4.2           # via -r requirements/base.in
-pymongo==3.11.2           # via edx-opaque-keys
-pyparsing==2.4.7          # via packaging
-python-dateutil==2.8.1    # via xblock
-pytz==2020.5              # via django, fs, xblock
-pyyaml==5.4.1             # via xblock
-requests==2.25.1          # via pyjwkest
-simplejson==3.17.2        # via xblock-utils
-six==1.15.0               # via bleach, edx-opaque-keys, fs, pyjwkest, python-dateutil, stevedore, xblock
-sqlparse==0.4.1           # via django
-stevedore==1.32.0         # via -c requirements/constraints.txt, edx-opaque-keys
-urllib3==1.26.2           # via requests
-web-fragments==0.3.2      # via xblock, xblock-utils
-webencodings==0.5.1       # via bleach
-webob==1.8.6              # via xblock
-xblock-utils==2.1.2       # via -r requirements/base.in
-xblock==1.4.0             # via -r requirements/base.in, xblock-utils
+appdirs==1.4.4
+    # via fs
+bleach==3.2.3
+    # via -r requirements/base.in
+certifi==2020.12.5
+    # via requests
+chardet==4.0.0
+    # via requests
+django-filter==2.4.0
+    # via -r requirements/base.in
+django==2.2.17
+    # via
+    #   -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
+    #   -r requirements/base.in
+    #   django-filter
+    #   edx-opaque-keys
+    #   jsonfield2
+edx-opaque-keys[django]==2.2.0
+    # via -r requirements/base.in
+fs==2.4.12
+    # via xblock
+future==0.18.2
+    # via pyjwkest
+idna==2.10
+    # via requests
+jsonfield2==3.0.3
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/base.in
+lazy==1.4
+    # via -r requirements/base.in
+lxml==4.6.2
+    # via
+    #   -r requirements/base.in
+    #   xblock
+mako==1.1.4
+    # via
+    #   -r requirements/base.in
+    #   xblock-utils
+markupsafe==1.1.1
+    # via
+    #   mako
+    #   xblock
+oauthlib==3.1.0
+    # via -r requirements/base.in
+packaging==20.8
+    # via bleach
+pbr==5.5.1
+    # via stevedore
+pycryptodomex==3.9.9
+    # via
+    #   -r requirements/base.in
+    #   pyjwkest
+pyjwkest==1.4.2
+    # via -r requirements/base.in
+pymongo==3.11.2
+    # via edx-opaque-keys
+pyparsing==2.4.7
+    # via packaging
+python-dateutil==2.8.1
+    # via xblock
+pytz==2020.5
+    # via
+    #   django
+    #   fs
+    #   xblock
+pyyaml==5.4.1
+    # via xblock
+requests==2.25.1
+    # via pyjwkest
+simplejson==3.17.2
+    # via xblock-utils
+six==1.15.0
+    # via
+    #   bleach
+    #   fs
+    #   pyjwkest
+    #   python-dateutil
+    #   stevedore
+    #   xblock
+sqlparse==0.4.1
+    # via django
+stevedore==1.32.0
+    # via
+    #   -c requirements/constraints.txt
+    #   edx-opaque-keys
+urllib3==1.26.3
+    # via requests
+web-fragments==1.0.0
+    # via
+    #   xblock
+    #   xblock-utils
+webencodings==0.5.1
+    # via bleach
+webob==1.8.6
+    # via xblock
+xblock-utils==2.1.2
+    # via -r requirements/base.in
+xblock==1.4.0
+    # via
+    #   -r requirements/base.in
+    #   xblock-utils
 
 # The following packages are considered to be unsafe in a requirements file:
 # setuptools
diff --git a/requirements/constraints.txt b/requirements/constraints.txt
index b609a50..769dc5b 100644
--- a/requirements/constraints.txt
+++ b/requirements/constraints.txt
@@ -8,11 +8,11 @@
 # pin when possible.  Writing an issue against the offending project and
 # linking to it here is good.
 
+# Common constraints for edx repos
+-c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
+ 
 # TODO: Many pinned dependencies should be unpinned and/or moved to this constraints file.
 
-# Use latest Django LTS version
-Django<2.3.0
-
 # mock version 4.0.0 drops support for python 3.5
 mock<4.0.0
 
diff --git a/requirements/django.txt b/requirements/django.txt
index 9da49cd..34249f7 100644
--- a/requirements/django.txt
+++ b/requirements/django.txt
@@ -1 +1 @@
-django==2.2.17            # via -c requirements/constraints.txt, -r requirements/base.txt, django-filter, django-pyfs, edx-opaque-keys, jsonfield2, xblock-sdk
+django==2.2.17
diff --git a/requirements/pip_tools.txt b/requirements/pip_tools.txt
index a6f6c30..53310ee 100644
--- a/requirements/pip_tools.txt
+++ b/requirements/pip_tools.txt
@@ -4,8 +4,10 @@
 #
 #    make upgrade
 #
-click==7.1.2              # via pip-tools
-pip-tools==5.5.0          # via -r requirements/pip_tools.in
+click==7.1.2
+    # via pip-tools
+pip-tools==5.5.0
+    # via -r requirements/pip_tools.in
 
 # The following packages are considered to be unsafe in a requirements file:
 # pip
diff --git a/requirements/test.txt b/requirements/test.txt
index b32edd2..df9008a 100644
--- a/requirements/test.txt
+++ b/requirements/test.txt
@@ -4,68 +4,245 @@
 #
 #    make upgrade
 #
-appdirs==1.4.4            # via -r requirements/base.txt, fs
-astroid==2.4.2            # via pylint, pylint-celery
-bleach==3.2.2             # via -r requirements/base.txt
-boto3==1.16.57            # via fs-s3fs
-botocore==1.19.57         # via boto3, s3transfer
-certifi==2020.12.5        # via -r requirements/base.txt, requests
-chardet==4.0.0            # via -r requirements/base.txt, requests
-click-log==0.3.2          # via edx-lint
-click==7.1.2              # via click-log, edx-lint
-coverage==5.3.1           # via coveralls
-coveralls==3.0.0          # via -r requirements/test.in
-ddt==1.4.1                # via -r requirements/test.in
-django-filter==2.4.0      # via -r requirements/base.txt
-django-pyfs==3.0          # via -r requirements/test.in
-djangorestframework==3.9.4  # via -c requirements/constraints.txt, -r requirements/test.in
-docopt==0.6.2             # via coveralls
-edx-lint==1.6             # via -r requirements/test.in
-edx-opaque-keys[django]==2.1.1  # via -r requirements/base.txt
-fs-s3fs==1.1.1            # via django-pyfs
-fs==2.4.12                # via -r requirements/base.txt, django-pyfs, fs-s3fs, xblock
-future==0.18.2            # via -r requirements/base.txt, pyjwkest
-idna==2.10                # via -r requirements/base.txt, requests
-isort==5.7.0              # via pylint
-jmespath==0.10.0          # via boto3, botocore
-jsonfield2==3.0.3         # via -c requirements/constraints.txt, -r requirements/base.txt
-lazy-object-proxy==1.4.3  # via astroid
-lazy==1.4                 # via -r requirements/base.txt
-lxml==4.6.2               # via -r requirements/base.txt, xblock
-mako==1.1.4               # via -r requirements/base.txt, xblock-utils
-markupsafe==1.1.1         # via -r requirements/base.txt, mako, xblock
-mccabe==0.6.1             # via pylint
-mock==3.0.5               # via -c requirements/constraints.txt, -r requirements/test.in
-oauthlib==3.1.0           # via -r requirements/base.txt
-packaging==20.8           # via -r requirements/base.txt, bleach
-pbr==5.5.1                # via -r requirements/base.txt, stevedore
-pycodestyle==2.6.0        # via -r requirements/test.in
-pycryptodomex==3.9.9      # via -r requirements/base.txt, pyjwkest
-pyjwkest==1.4.2           # via -r requirements/base.txt
-pylint-celery==0.3        # via edx-lint
-pylint-django==2.3.0      # via edx-lint
-pylint-plugin-utils==0.6  # via pylint-celery, pylint-django
-pylint==2.6.0             # via edx-lint, pylint-celery, pylint-django, pylint-plugin-utils
-pymongo==3.11.2           # via -r requirements/base.txt, edx-opaque-keys
-pyparsing==2.4.7          # via -r requirements/base.txt, packaging
-python-dateutil==2.8.1    # via -r requirements/base.txt, botocore, xblock
-pytz==2020.5              # via -r requirements/base.txt, django, fs, xblock
-pyyaml==5.4.1             # via -r requirements/base.txt, xblock
-requests==2.25.1          # via -r requirements/base.txt, coveralls, pyjwkest
-s3transfer==0.3.4         # via boto3
-simplejson==3.17.2        # via -r requirements/base.txt, xblock-utils
-six==1.15.0               # via -r requirements/base.txt, astroid, bleach, edx-lint, edx-opaque-keys, fs, fs-s3fs, mock, pyjwkest, python-dateutil, stevedore, xblock
-sqlparse==0.4.1           # via -r requirements/base.txt, django
-stevedore==1.32.0         # via -c requirements/constraints.txt, -r requirements/base.txt, edx-opaque-keys
-toml==0.10.2              # via pylint
-urllib3==1.26.2           # via -r requirements/base.txt, botocore, requests
-web-fragments==0.3.2      # via -r requirements/base.txt, xblock, xblock-utils
-webencodings==0.5.1       # via -r requirements/base.txt, bleach
-webob==1.8.6              # via -r requirements/base.txt, xblock
-wrapt==1.12.1             # via astroid
-xblock-sdk==0.2.2         # via -r requirements/test.in
-xblock-utils==2.1.2       # via -r requirements/base.txt
-xblock==1.4.0             # via -r requirements/base.txt, xblock-utils
+appdirs==1.4.4
+    # via
+    #   -r requirements/base.txt
+    #   fs
+astroid==2.4.2
+    # via
+    #   pylint
+    #   pylint-celery
+bleach==3.2.3
+    # via -r requirements/base.txt
+boto3==1.16.62
+    # via fs-s3fs
+botocore==1.19.62
+    # via
+    #   boto3
+    #   s3transfer
+certifi==2020.12.5
+    # via
+    #   -r requirements/base.txt
+    #   requests
+chardet==4.0.0
+    # via
+    #   -r requirements/base.txt
+    #   requests
+click-log==0.3.2
+    # via edx-lint
+click==7.1.2
+    # via
+    #   click-log
+    #   code-annotations
+    #   edx-lint
+code-annotations==1.0.2
+    # via edx-lint
+coverage==5.4
+    # via coveralls
+coveralls==3.0.0
+    # via -r requirements/test.in
+ddt==1.4.1
+    # via -r requirements/test.in
+django-filter==2.4.0
+    # via -r requirements/base.txt
+django-pyfs==3.0
+    # via -r requirements/test.in
+    # via
+    #   -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
+    #   -r requirements/base.txt
+    #   code-annotations
+    #   django-filter
+    #   django-pyfs
+    #   edx-lint
+    #   edx-opaque-keys
+    #   jsonfield2
+    #   xblock-sdk
+djangorestframework==3.9.4
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/test.in
+docopt==0.6.2
+    # via coveralls
+edx-lint==3.0.2
+    # via -r requirements/test.in
+edx-opaque-keys[django]==2.2.0
+    # via -r requirements/base.txt
+fs-s3fs==1.1.1
+    # via django-pyfs
+fs==2.4.12
+    # via
+    #   -r requirements/base.txt
+    #   django-pyfs
+    #   fs-s3fs
+    #   xblock
+future==0.18.2
+    # via
+    #   -r requirements/base.txt
+    #   pyjwkest
+idna==2.10
+    # via
+    #   -r requirements/base.txt
+    #   requests
+isort==5.7.0
+    # via pylint
+jinja2==2.11.2
+    # via code-annotations
+jmespath==0.10.0
+    # via
+    #   boto3
+    #   botocore
+jsonfield2==3.0.3
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/base.txt
+lazy-object-proxy==1.4.3
+    # via astroid
+lazy==1.4
+    # via -r requirements/base.txt
+lxml==4.6.2
+    # via
+    #   -r requirements/base.txt
+    #   xblock
+mako==1.1.4
+    # via
+    #   -r requirements/base.txt
+    #   xblock-utils
+markupsafe==1.1.1
+    # via
+    #   -r requirements/base.txt
+    #   jinja2
+    #   mako
+    #   xblock
+mccabe==0.6.1
+    # via pylint
+mock==3.0.5
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/test.in
+oauthlib==3.1.0
+    # via -r requirements/base.txt
+packaging==20.8
+    # via
+    #   -r requirements/base.txt
+    #   bleach
+pbr==5.5.1
+    # via
+    #   -r requirements/base.txt
+    #   stevedore
+pycodestyle==2.6.0
+    # via -r requirements/test.in
+pycryptodomex==3.9.9
+    # via
+    #   -r requirements/base.txt
+    #   pyjwkest
+pyjwkest==1.4.2
+    # via -r requirements/base.txt
+pylint-celery==0.3
+    # via edx-lint
+pylint-django==2.4.2
+    # via edx-lint
+pylint-plugin-utils==0.6
+    # via
+    #   pylint-celery
+    #   pylint-django
+pylint==2.6.0
+    # via
+    #   edx-lint
+    #   pylint-celery
+    #   pylint-django
+    #   pylint-plugin-utils
+pymongo==3.11.2
+    # via
+    #   -r requirements/base.txt
+    #   edx-opaque-keys
+pyparsing==2.4.7
+    # via
+    #   -r requirements/base.txt
+    #   packaging
+python-dateutil==2.8.1
+    # via
+    #   -r requirements/base.txt
+    #   botocore
+    #   xblock
+python-slugify==4.0.1
+    # via code-annotations
+pytz==2020.5
+    # via
+    #   -r requirements/base.txt
+    #   django
+    #   fs
+    #   xblock
+pyyaml==5.4.1
+    # via
+    #   -r requirements/base.txt
+    #   code-annotations
+    #   xblock
+requests==2.25.1
+    # via
+    #   -r requirements/base.txt
+    #   coveralls
+    #   pyjwkest
+s3transfer==0.3.4
+    # via boto3
+simplejson==3.17.2
+    # via
+    #   -r requirements/base.txt
+    #   xblock-utils
+six==1.15.0
+    # via
+    #   -r requirements/base.txt
+    #   astroid
+    #   bleach
+    #   edx-lint
+    #   fs
+    #   fs-s3fs
+    #   mock
+    #   pyjwkest
+    #   python-dateutil
+    #   stevedore
+    #   xblock
+sqlparse==0.4.1
+    # via
+    #   -r requirements/base.txt
+    #   django
+stevedore==1.32.0
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/base.txt
+    #   code-annotations
+    #   edx-opaque-keys
+text-unidecode==1.3
+    # via python-slugify
+toml==0.10.2
+    # via pylint
+urllib3==1.26.3
+    # via
+    #   -r requirements/base.txt
+    #   botocore
+    #   requests
+web-fragments==1.0.0
+    # via
+    #   -r requirements/base.txt
+    #   xblock
+    #   xblock-utils
+webencodings==0.5.1
+    # via
+    #   -r requirements/base.txt
+    #   bleach
+webob==1.8.6
+    # via
+    #   -r requirements/base.txt
+    #   xblock
+wrapt==1.12.1
+    # via astroid
+xblock-sdk==0.2.2
+    # via -r requirements/test.in
+xblock-utils==2.1.2
+    # via -r requirements/base.txt
+xblock==1.4.0
+    # via
+    #   -r requirements/base.txt
+    #   xblock-utils
 
 # The following packages are considered to be unsafe in a requirements file:
 # setuptools
diff --git a/requirements/tox.txt b/requirements/tox.txt
index e265eff..e595e9c 100644
--- a/requirements/tox.txt
+++ b/requirements/tox.txt
@@ -4,14 +4,29 @@
 #
 #    make upgrade
 #
-appdirs==1.4.4            # via virtualenv
-distlib==0.3.1            # via virtualenv
-filelock==3.0.12          # via tox, virtualenv
-packaging==20.8           # via tox
-pluggy==0.13.1            # via tox
-py==1.10.0                # via tox
-pyparsing==2.4.7          # via packaging
-six==1.15.0               # via tox, virtualenv
-toml==0.10.2              # via tox
-tox==3.21.2               # via -r requirements/tox.in
-virtualenv==20.4.0        # via tox
+appdirs==1.4.4
+    # via virtualenv
+distlib==0.3.1
+    # via virtualenv
+filelock==3.0.12
+    # via
+    #   tox
+    #   virtualenv
+packaging==20.8
+    # via tox
+pluggy==0.13.1
+    # via tox
+py==1.10.0
+    # via tox
+pyparsing==2.4.7
+    # via packaging
+six==1.15.0
+    # via
+    #   tox
+    #   virtualenv
+toml==0.10.2
+    # via tox
+tox==3.21.3
+    # via -r requirements/tox.in
+virtualenv==20.4.0
+    # via tox
diff --git a/requirements/travis.txt b/requirements/travis.txt
index 432c01c..50bea58 100644
--- a/requirements/travis.txt
+++ b/requirements/travis.txt
@@ -4,75 +4,319 @@
 #
 #    make upgrade
 #
-appdirs==1.4.4            # via -r requirements/test.txt, -r requirements/tox.txt, fs, virtualenv
-astroid==2.4.2            # via -r requirements/test.txt, pylint, pylint-celery
-bleach==3.2.2             # via -r requirements/test.txt
-boto3==1.16.57            # via -r requirements/test.txt, fs-s3fs
-botocore==1.19.57         # via -r requirements/test.txt, boto3, s3transfer
-certifi==2020.12.5        # via -r requirements/test.txt, requests
-chardet==4.0.0            # via -r requirements/test.txt, requests
-click-log==0.3.2          # via -r requirements/test.txt, edx-lint
-click==7.1.2              # via -r requirements/test.txt, click-log, edx-lint
-coverage==5.3.1           # via -r requirements/test.txt, coveralls
-coveralls==3.0.0          # via -r requirements/test.txt
-ddt==1.4.1                # via -r requirements/test.txt
-distlib==0.3.1            # via -r requirements/tox.txt, virtualenv
-django-filter==2.4.0      # via -r requirements/test.txt
-django-pyfs==3.0          # via -r requirements/test.txt
-django==2.2.17            # via -c requirements/constraints.txt, -r requirements/test.txt, django-filter, django-pyfs, edx-opaque-keys, jsonfield2, xblock-sdk
-djangorestframework==3.9.4  # via -c requirements/constraints.txt, -r requirements/test.txt
-docopt==0.6.2             # via -r requirements/test.txt, coveralls
-edx-lint==1.6             # via -r requirements/test.txt
-edx-opaque-keys[django]==2.1.1  # via -r requirements/test.txt
-filelock==3.0.12          # via -r requirements/tox.txt, tox, virtualenv
-fs-s3fs==1.1.1            # via -r requirements/test.txt, django-pyfs
-fs==2.4.12                # via -r requirements/test.txt, django-pyfs, fs-s3fs, xblock
-future==0.18.2            # via -r requirements/test.txt, pyjwkest
-idna==2.10                # via -r requirements/test.txt, requests
-isort==5.7.0              # via -r requirements/test.txt, pylint
-jmespath==0.10.0          # via -r requirements/test.txt, boto3, botocore
-jsonfield2==3.0.3         # via -c requirements/constraints.txt, -r requirements/test.txt
-lazy-object-proxy==1.4.3  # via -r requirements/test.txt, astroid
-lazy==1.4                 # via -r requirements/test.txt
-lxml==4.6.2               # via -r requirements/test.txt, xblock
-mako==1.1.4               # via -r requirements/test.txt, xblock-utils
-markupsafe==1.1.1         # via -r requirements/test.txt, mako, xblock
-mccabe==0.6.1             # via -r requirements/test.txt, pylint
-mock==3.0.5               # via -c requirements/constraints.txt, -r requirements/test.txt
-oauthlib==3.1.0           # via -r requirements/test.txt
-packaging==20.8           # via -r requirements/test.txt, -r requirements/tox.txt, bleach, tox
-pbr==5.5.1                # via -r requirements/test.txt, stevedore
-pluggy==0.13.1            # via -r requirements/tox.txt, tox
-py==1.10.0                # via -r requirements/tox.txt, tox
-pycodestyle==2.6.0        # via -r requirements/test.txt
-pycryptodomex==3.9.9      # via -r requirements/test.txt, pyjwkest
-pyjwkest==1.4.2           # via -r requirements/test.txt
-pylint-celery==0.3        # via -r requirements/test.txt, edx-lint
-pylint-django==2.3.0      # via -r requirements/test.txt, edx-lint
-pylint-plugin-utils==0.6  # via -r requirements/test.txt, pylint-celery, pylint-django
-pylint==2.6.0             # via -r requirements/test.txt, edx-lint, pylint-celery, pylint-django, pylint-plugin-utils
-pymongo==3.11.2           # via -r requirements/test.txt, edx-opaque-keys
-pyparsing==2.4.7          # via -r requirements/test.txt, -r requirements/tox.txt, packaging
-python-dateutil==2.8.1    # via -r requirements/test.txt, botocore, xblock
-pytz==2020.5              # via -r requirements/test.txt, django, fs, xblock
-pyyaml==5.4.1             # via -r requirements/test.txt, xblock
-requests==2.25.1          # via -r requirements/test.txt, coveralls, pyjwkest
-s3transfer==0.3.4         # via -r requirements/test.txt, boto3
-simplejson==3.17.2        # via -r requirements/test.txt, xblock-utils
-six==1.15.0               # via -r requirements/test.txt, -r requirements/tox.txt, astroid, bleach, edx-lint, edx-opaque-keys, fs, fs-s3fs, mock, pyjwkest, python-dateutil, stevedore, tox, virtualenv, xblock
-sqlparse==0.4.1           # via -r requirements/test.txt, django
-stevedore==1.32.0         # via -c requirements/constraints.txt, -r requirements/test.txt, edx-opaque-keys
-toml==0.10.2              # via -r requirements/test.txt, -r requirements/tox.txt, pylint, tox
-tox==3.21.2               # via -r requirements/tox.txt
-urllib3==1.26.2           # via -r requirements/test.txt, botocore, requests
-virtualenv==20.4.0        # via -r requirements/tox.txt, tox
-web-fragments==0.3.2      # via -r requirements/test.txt, xblock, xblock-utils
-webencodings==0.5.1       # via -r requirements/test.txt, bleach
-webob==1.8.6              # via -r requirements/test.txt, xblock
-wrapt==1.12.1             # via -r requirements/test.txt, astroid
-xblock-sdk==0.2.2         # via -r requirements/test.txt
-xblock-utils==2.1.2       # via -r requirements/test.txt
-xblock==1.4.0             # via -r requirements/test.txt, xblock-utils
+appdirs==1.4.4
+    # via
+    #   -r requirements/test.txt
+    #   -r requirements/tox.txt
+    #   fs
+    #   virtualenv
+astroid==2.4.2
+    # via
+    #   -r requirements/test.txt
+    #   pylint
+    #   pylint-celery
+bleach==3.2.3
+    # via -r requirements/test.txt
+boto3==1.16.62
+    # via
+    #   -r requirements/test.txt
+    #   fs-s3fs
+botocore==1.19.62
+    # via
+    #   -r requirements/test.txt
+    #   boto3
+    #   s3transfer
+certifi==2020.12.5
+    # via
+    #   -r requirements/test.txt
+    #   requests
+chardet==4.0.0
+    # via
+    #   -r requirements/test.txt
+    #   requests
+click-log==0.3.2
+    # via
+    #   -r requirements/test.txt
+    #   edx-lint
+click==7.1.2
+    # via
+    #   -r requirements/test.txt
+    #   click-log
+    #   code-annotations
+    #   edx-lint
+code-annotations==1.0.2
+    # via
+    #   -r requirements/test.txt
+    #   edx-lint
+coverage==5.4
+    # via
+    #   -r requirements/test.txt
+    #   coveralls
+coveralls==3.0.0
+    # via -r requirements/test.txt
+ddt==1.4.1
+    # via -r requirements/test.txt
+distlib==0.3.1
+    # via
+    #   -r requirements/tox.txt
+    #   virtualenv
+django-filter==2.4.0
+    # via -r requirements/test.txt
+django-pyfs==3.0
+    # via -r requirements/test.txt
+django==2.2.17
+    # via
+    #   -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
+    #   -r requirements/test.txt
+    #   code-annotations
+    #   django-filter
+    #   django-pyfs
+    #   edx-lint
+    #   edx-opaque-keys
+    #   jsonfield2
+    #   xblock-sdk
+djangorestframework==3.9.4
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/test.txt
+docopt==0.6.2
+    # via
+    #   -r requirements/test.txt
+    #   coveralls
+edx-lint==3.0.2
+    # via -r requirements/test.txt
+edx-opaque-keys[django]==2.2.0
+    # via -r requirements/test.txt
+filelock==3.0.12
+    # via
+    #   -r requirements/tox.txt
+    #   tox
+    #   virtualenv
+fs-s3fs==1.1.1
+    # via
+    #   -r requirements/test.txt
+    #   django-pyfs
+fs==2.4.12
+    # via
+    #   -r requirements/test.txt
+    #   django-pyfs
+    #   fs-s3fs
+    #   xblock
+future==0.18.2
+    # via
+    #   -r requirements/test.txt
+    #   pyjwkest
+idna==2.10
+    # via
+    #   -r requirements/test.txt
+    #   requests
+isort==5.7.0
+    # via
+    #   -r requirements/test.txt
+    #   pylint
+jinja2==2.11.2
+    # via
+    #   -r requirements/test.txt
+    #   code-annotations
+jmespath==0.10.0
+    # via
+    #   -r requirements/test.txt
+    #   boto3
+    #   botocore
+jsonfield2==3.0.3
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/test.txt
+lazy-object-proxy==1.4.3
+    # via
+    #   -r requirements/test.txt
+    #   astroid
+lazy==1.4
+    # via -r requirements/test.txt
+lxml==4.6.2
+    # via
+    #   -r requirements/test.txt
+    #   xblock
+mako==1.1.4
+    # via
+    #   -r requirements/test.txt
+    #   xblock-utils
+markupsafe==1.1.1
+    # via
+    #   -r requirements/test.txt
+    #   jinja2
+    #   mako
+    #   xblock
+mccabe==0.6.1
+    # via
+    #   -r requirements/test.txt
+    #   pylint
+mock==3.0.5
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/test.txt
+oauthlib==3.1.0
+    # via -r requirements/test.txt
+packaging==20.8
+    # via
+    #   -r requirements/test.txt
+    #   -r requirements/tox.txt
+    #   bleach
+    #   tox
+pbr==5.5.1
+    # via
+    #   -r requirements/test.txt
+    #   stevedore
+pluggy==0.13.1
+    # via
+    #   -r requirements/tox.txt
+    #   tox
+py==1.10.0
+    # via
+    #   -r requirements/tox.txt
+    #   tox
+pycodestyle==2.6.0
+    # via -r requirements/test.txt
+pycryptodomex==3.9.9
+    # via
+    #   -r requirements/test.txt
+    #   pyjwkest
+pyjwkest==1.4.2
+    # via -r requirements/test.txt
+pylint-celery==0.3
+    # via
+    #   -r requirements/test.txt
+    #   edx-lint
+pylint-django==2.4.2
+    # via
+    #   -r requirements/test.txt
+    #   edx-lint
+pylint-plugin-utils==0.6
+    # via
+    #   -r requirements/test.txt
+    #   pylint-celery
+    #   pylint-django
+pylint==2.6.0
+    # via
+    #   -r requirements/test.txt
+    #   edx-lint
+    #   pylint-celery
+    #   pylint-django
+    #   pylint-plugin-utils
+pymongo==3.11.2
+    # via
+    #   -r requirements/test.txt
+    #   edx-opaque-keys
+pyparsing==2.4.7
+    # via
+    #   -r requirements/test.txt
+    #   -r requirements/tox.txt
+    #   packaging
+python-dateutil==2.8.1
+    # via
+    #   -r requirements/test.txt
+    #   botocore
+    #   xblock
+python-slugify==4.0.1
+    # via
+    #   -r requirements/test.txt
+    #   code-annotations
+pytz==2020.5
+    # via
+    #   -r requirements/test.txt
+    #   django
+    #   fs
+    #   xblock
+pyyaml==5.4.1
+    # via
+    #   -r requirements/test.txt
+    #   code-annotations
+    #   xblock
+requests==2.25.1
+    # via
+    #   -r requirements/test.txt
+    #   coveralls
+    #   pyjwkest
+s3transfer==0.3.4
+    # via
+    #   -r requirements/test.txt
+    #   boto3
+simplejson==3.17.2
+    # via
+    #   -r requirements/test.txt
+    #   xblock-utils
+six==1.15.0
+    # via
+    #   -r requirements/test.txt
+    #   -r requirements/tox.txt
+    #   astroid
+    #   bleach
+    #   edx-lint
+    #   fs
+    #   fs-s3fs
+    #   mock
+    #   pyjwkest
+    #   python-dateutil
+    #   stevedore
+    #   tox
+    #   virtualenv
+    #   xblock
+sqlparse==0.4.1
+    # via
+    #   -r requirements/test.txt
+    #   django
+stevedore==1.32.0
+    # via
+    #   -c requirements/constraints.txt
+    #   -r requirements/test.txt
+    #   code-annotations
+    #   edx-opaque-keys
+text-unidecode==1.3
+    # via
+    #   -r requirements/test.txt
+    #   python-slugify
+toml==0.10.2
+    # via
+    #   -r requirements/test.txt
+    #   -r requirements/tox.txt
+    #   pylint
+    #   tox
+tox==3.21.3
+    # via -r requirements/tox.txt
+urllib3==1.26.3
+    # via
+    #   -r requirements/test.txt
+    #   botocore
+    #   requests
+virtualenv==20.4.0
+    # via
+    #   -r requirements/tox.txt
+    #   tox
+web-fragments==1.0.0
+    # via
+    #   -r requirements/test.txt
+    #   xblock
+    #   xblock-utils
+webencodings==0.5.1
+    # via
+    #   -r requirements/test.txt
+    #   bleach
+webob==1.8.6
+    # via
+    #   -r requirements/test.txt
+    #   xblock
+wrapt==1.12.1
+    # via
+    #   -r requirements/test.txt
+    #   astroid
+xblock-sdk==0.2.2
+    # via -r requirements/test.txt
+xblock-utils==2.1.2
+    # via -r requirements/test.txt
+xblock==1.4.0
+    # via
+    #   -r requirements/test.txt
+    #   xblock-utils
 
 # The following packages are considered to be unsafe in a requirements file:
 # setuptools
-- 
GitLab