From 5724432741c9b39ddedbb294f1b2bfdfbbd9fec5 Mon Sep 17 00:00:00 2001
From: edX requirements bot
 <49161187+edx-requirements-bot@users.noreply.github.com>
Date: Wed, 13 May 2020 16:24:30 -0400
Subject: [PATCH] Python Requirements Update (#23984)

* Updating Python Requirements

* Constrain django-cookies-samesite until dep bug fixed

* Fix PEP 8 problems revealed by pycodestyle upgrade

Co-authored-by: Tim McCormack <tmccormack@edx.org>
Co-authored-by: Jeremy Bowman <jbowman@edx.org>
---
 lms/djangoapps/shoppingcart/views.py          |  4 +--
 .../auth_exchange/tests/test_forms.py         |  1 +
 .../courseware_api/tests/test_views.py        |  1 +
 requirements/constraints.txt                  |  3 ++
 requirements/edx-sandbox/py35.txt             |  2 +-
 requirements/edx-sandbox/shared.txt           |  2 +-
 requirements/edx/base.txt                     | 20 ++++++------
 requirements/edx/development.txt              | 31 +++++++++----------
 requirements/edx/testing.txt                  | 31 +++++++++----------
 9 files changed, 48 insertions(+), 47 deletions(-)

diff --git a/lms/djangoapps/shoppingcart/views.py b/lms/djangoapps/shoppingcart/views.py
index bc7b3a15736..3a4a785e290 100644
--- a/lms/djangoapps/shoppingcart/views.py
+++ b/lms/djangoapps/shoppingcart/views.py
@@ -494,9 +494,7 @@ def use_registration_code(course_reg, user):
     else:
         applicable_cart_items = [
             cart_item for cart_item in cart_items
-            if (
-                (isinstance(cart_item, PaidCourseRegistration) or isinstance(cart_item, CourseRegCodeItem))and cart_item.qty == 1
-            )
+            if isinstance(cart_item, (CourseRegCodeItem, PaidCourseRegistration)) and cart_item.qty == 1
         ]
         if not applicable_cart_items:
             return HttpResponseNotFound(
diff --git a/openedx/core/djangoapps/auth_exchange/tests/test_forms.py b/openedx/core/djangoapps/auth_exchange/tests/test_forms.py
index a326ca6f06b..db135b68bb2 100644
--- a/openedx/core/djangoapps/auth_exchange/tests/test_forms.py
+++ b/openedx/core/djangoapps/auth_exchange/tests/test_forms.py
@@ -67,6 +67,7 @@ class DOTAccessTokenExchangeFormTestFacebook(
     """
     pass
 
+
 # This is necessary because cms does not implement third party auth
 @unittest.skipUnless(TPA_FEATURE_ENABLED, TPA_FEATURES_KEY + " not enabled")
 @httpretty.activate
diff --git a/openedx/core/djangoapps/courseware_api/tests/test_views.py b/openedx/core/djangoapps/courseware_api/tests/test_views.py
index 3ee764673af..19bf77f26d1 100644
--- a/openedx/core/djangoapps/courseware_api/tests/test_views.py
+++ b/openedx/core/djangoapps/courseware_api/tests/test_views.py
@@ -23,6 +23,7 @@ class BaseCoursewareTests(SharedModuleStoreTestCase):
     Base class for courseware API tests
     """
     MODULESTORE = TEST_DATA_SPLIT_MODULESTORE
+
     @classmethod
     def setUpClass(cls):
         super().setUpClass()
diff --git a/requirements/constraints.txt b/requirements/constraints.txt
index 53256b0a863..785c6319633 100644
--- a/requirements/constraints.txt
+++ b/requirements/constraints.txt
@@ -19,6 +19,9 @@ ddt<1.4.0
 # Stay on the latest LTS release of Django
 Django<2.3
 
+# Missing dependency declaration on ua-parser: https://github.com/jotes/django-cookies-samesite/issues/25
+django-cookies-samesite<0.6.0
+
 # The CORS_ORIGIN_WHITELIST changes in a backwards incompatible way in 3.0.0, needs matching configuration repo changes
 django-cors-headers<3.0.0
 
diff --git a/requirements/edx-sandbox/py35.txt b/requirements/edx-sandbox/py35.txt
index 938ef0e4382..233666dfaa6 100644
--- a/requirements/edx-sandbox/py35.txt
+++ b/requirements/edx-sandbox/py35.txt
@@ -27,7 +27,7 @@ pyparsing==2.2.0          # via -r requirements/edx-sandbox/py35.in, calc, chem,
 python-dateutil==2.4.0    # via -c requirements/edx-sandbox/../constraints.txt, matplotlib
 pytz==2020.1              # via matplotlib
 random2==1.0.1            # via -r requirements/edx-sandbox/py35.in
-regex==2020.5.7           # via -r requirements/edx-sandbox/shared.txt, nltk
+regex==2020.5.13          # via -r requirements/edx-sandbox/shared.txt, nltk
 scipy==1.2.1              # via -r requirements/edx-sandbox/py35.in, calc, chem
 six==1.14.0               # via -r requirements/edx-sandbox/shared.txt, calc, cryptography, cycler, matplotlib, python-dateutil
 sympy==1.4                # via -r requirements/edx-sandbox/py35.in, symmath
diff --git a/requirements/edx-sandbox/shared.txt b/requirements/edx-sandbox/shared.txt
index c8958e88db0..19319a6a783 100644
--- a/requirements/edx-sandbox/shared.txt
+++ b/requirements/edx-sandbox/shared.txt
@@ -11,6 +11,6 @@ joblib==0.14.1            # via nltk
 lxml==4.5.0               # via -r requirements/edx-sandbox/shared.in
 nltk==3.5                 # via -r requirements/edx-sandbox/shared.in
 pycparser==2.20           # via cffi
-regex==2020.5.7           # via nltk
+regex==2020.5.13          # via nltk
 six==1.14.0               # via cryptography
 tqdm==4.46.0              # via nltk
diff --git a/requirements/edx/base.txt b/requirements/edx/base.txt
index 42c732a3c36..affff4235b3 100644
--- a/requirements/edx/base.txt
+++ b/requirements/edx/base.txt
@@ -57,7 +57,7 @@ git+https://github.com/Zegocover/enmerkar.git@dbc113798aa4beabdfa2d00e6fef48248e
 django-celery==3.3.1      # via -r requirements/edx/base.in
 django-classy-tags==1.0.0  # via django-sekizai
 django-config-models==2.0.2  # via -r requirements/edx/base.in, edx-enterprise
-django-cookies-samesite==0.5.1  # via -r requirements/edx/base.in
+django-cookies-samesite==0.5.1  # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in
 django-cors-headers==2.5.3  # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in
 django-countries==5.5     # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in, edx-enterprise
 django-crum==0.7.6        # via -r requirements/edx/base.in, edx-enterprise, edx-proctoring, edx-rbac, super-csv
@@ -93,28 +93,28 @@ docutils==0.16            # via botocore
 drf-jwt==1.14.0           # via -c requirements/edx/../constraints.txt, edx-drf-extensions
 drf-yasg==1.17.0          # via -c requirements/edx/../constraints.txt, edx-api-doc-tools
 edx-ace==0.1.15           # via -r requirements/edx/base.in
-edx-analytics-data-api-client==0.16.0  # via -r requirements/edx/base.in
+edx-analytics-data-api-client==0.16.1  # via -r requirements/edx/base.in
 edx-api-doc-tools==1.3.0  # via -r requirements/edx/base.in
 edx-bulk-grades==0.6.8    # via -r requirements/edx/base.in, staff-graded-xblock
 edx-ccx-keys==1.1.0       # via -r requirements/edx/base.in
 edx-celeryutils==0.5.0    # via -r requirements/edx/base.in, super-csv
 edx-completion==3.2.0     # via -r requirements/edx/base.in
 edx-django-release-util==0.4.4  # via -r requirements/edx/base.in
-edx-django-sites-extensions==2.5.0  # via -r requirements/edx/base.in
+edx-django-sites-extensions==2.5.1  # via -r requirements/edx/base.in
 edx-django-utils==3.2.2   # via -r requirements/edx/base.in, django-config-models, edx-drf-extensions, edx-enterprise, edx-rest-api-client, edx-when
 edx-drf-extensions==6.0.0  # via -r requirements/edx/base.in, edx-completion, edx-enterprise, edx-organizations, edx-proctoring, edx-rbac, edx-when, edxval
 edx-enterprise==3.2.11    # via -r requirements/edx/base.in
-edx-i18n-tools==0.5.1     # via ora2
+edx-i18n-tools==0.5.3     # via ora2
 edx-milestones==0.3.0     # via -r requirements/edx/base.in
 edx-opaque-keys[django]==2.1.0  # via -r requirements/edx/paver.txt, edx-bulk-grades, edx-ccx-keys, edx-completion, edx-drf-extensions, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-user-state-client, edx-when, xmodule
 edx-organizations==5.2.0  # via -r requirements/edx/base.in
 edx-proctoring-proctortrack==1.0.5  # via -r requirements/edx/base.in
 edx-proctoring==2.4.0     # via -r requirements/edx/base.in, edx-proctoring-proctortrack
-edx-rbac==1.2.0           # via edx-enterprise
+edx-rbac==1.2.1           # via edx-enterprise
 edx-rest-api-client==5.2.0  # via -r requirements/edx/base.in, edx-enterprise, edx-proctoring
 edx-search==1.3.4         # via -r requirements/edx/base.in
 edx-sga==0.10.0           # via -r requirements/edx/base.in
-edx-submissions==3.1.4    # via -r requirements/edx/base.in, ora2
+edx-submissions==3.1.5    # via -r requirements/edx/base.in, ora2
 edx-tincan-py35==0.0.5    # via edx-enterprise
 edx-user-state-client==1.2.0  # via -r requirements/edx/base.in
 edx-when==1.2.3           # via -r requirements/edx/base.in, edx-proctoring
@@ -139,7 +139,7 @@ ipaddress==1.0.23         # via -r requirements/edx/base.in
 isodate==0.6.0            # via python3-saml
 itypes==1.2.0             # via coreapi
 jinja2==2.11.2            # via code-annotations, coreschema
-jmespath==0.9.5           # via boto3, botocore
+jmespath==0.10.0          # via boto3, botocore
 joblib==0.14.1            # via -r requirements/edx/../edx-sandbox/shared.txt, nltk
 jsondiff==1.2.0           # via edx-enterprise
 jsonfield2==3.0.3         # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in, edx-celeryutils, edx-enterprise, edx-proctoring, edx-submissions, ora2
@@ -169,7 +169,7 @@ nodeenv==1.3.5            # via -r requirements/edx/base.in
 numpy==1.18.4             # via chem, openedx-calc, scipy
 git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2  # via -r requirements/edx/github.in
 oauthlib==3.0.1           # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in, django-oauth-toolkit, lti-consumer-xblock, requests-oauthlib, social-auth-core
-openedx-calc==1.0.7       # via -r requirements/edx/base.in
+openedx-calc==1.0.9       # via -r requirements/edx/base.in
 git+https://github.com/edx/edx-ora2.git@2.6.25#egg=ora2==2.6.25  # via -r requirements/edx/github.in
 packaging==20.3           # via bleach, drf-yasg
 path.py==12.4.0           # via edx-enterprise, edx-i18n-tools, ora2, xmodule
@@ -194,7 +194,7 @@ pyjwkest==1.4.2           # via -r requirements/edx/base.in, edx-drf-extensions
 pyjwt==1.5.2              # via -r requirements/edx/base.in, drf-jwt, edx-rest-api-client, social-auth-core
 pymongo==3.9.0            # via -r requirements/edx/base.in, -r requirements/edx/paver.txt, edx-opaque-keys, event-tracking, mongodbproxy, mongoengine
 pynliner==0.8.0           # via -r requirements/edx/base.in
-pyparsing==2.2.0          # via chem, openedx-calc, packaging, pycontracts
+pyparsing==2.4.7          # via chem, openedx-calc, packaging, pycontracts
 pysrt==1.1.2              # via -r requirements/edx/base.in, edxval
 python-dateutil==2.4.0    # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in, analytics-python, botocore, edx-ace, edx-drf-extensions, edx-enterprise, edx-proctoring, icalendar, ora2, xblock
 python-levenshtein==0.12.0  # via -r requirements/edx/base.in
@@ -209,7 +209,7 @@ pyyaml==5.3.1             # via -r requirements/edx/base.in, code-annotations, e
 random2==1.0.1            # via -r requirements/edx/base.in
 recommender-xblock==1.4.8  # via -r requirements/edx/base.in
 redis==2.10.6             # via -r requirements/edx/base.in
-regex==2020.5.7           # via -r requirements/edx/../edx-sandbox/shared.txt, nltk
+regex==2020.5.13          # via -r requirements/edx/../edx-sandbox/shared.txt, nltk
 requests-oauthlib==1.3.0  # via -r requirements/edx/base.in, social-auth-core
 requests==2.23.0          # via -r requirements/edx/paver.txt, analytics-python, coreapi, django-oauth-toolkit, edx-analytics-data-api-client, edx-bulk-grades, edx-drf-extensions, edx-enterprise, edx-rest-api-client, geoip2, mailsnake, pyjwkest, python-swiftclient, requests-oauthlib, sailthru-client, slumber, social-auth-core
 rest-condition==1.0.3     # via -r requirements/edx/base.in, edx-drf-extensions
diff --git a/requirements/edx/development.txt b/requirements/edx/development.txt
index b88fcaefb87..e80cdcbb54f 100644
--- a/requirements/edx/development.txt
+++ b/requirements/edx/development.txt
@@ -68,7 +68,7 @@ git+https://github.com/Zegocover/enmerkar.git@dbc113798aa4beabdfa2d00e6fef48248e
 django-celery==3.3.1      # via -r requirements/edx/testing.txt
 django-classy-tags==1.0.0  # via -r requirements/edx/testing.txt, django-sekizai
 django-config-models==2.0.2  # via -r requirements/edx/testing.txt, edx-enterprise
-django-cookies-samesite==0.5.1  # via -r requirements/edx/testing.txt
+django-cookies-samesite==0.5.1  # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt
 django-cors-headers==2.5.3  # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt
 django-countries==5.5     # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, edx-enterprise
 django-crum==0.7.6        # via -r requirements/edx/testing.txt, edx-enterprise, edx-proctoring, edx-rbac, super-csv
@@ -105,44 +105,43 @@ docutils==0.16            # via -r requirements/edx/testing.txt, botocore, m2r,
 drf-jwt==1.14.0           # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, edx-drf-extensions
 drf-yasg==1.17.0          # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, edx-api-doc-tools
 edx-ace==0.1.15           # via -r requirements/edx/testing.txt
-edx-analytics-data-api-client==0.16.0  # via -r requirements/edx/testing.txt
+edx-analytics-data-api-client==0.16.1  # via -r requirements/edx/testing.txt
 edx-api-doc-tools==1.3.0  # via -r requirements/edx/testing.txt
 edx-bulk-grades==0.6.8    # via -r requirements/edx/testing.txt, staff-graded-xblock
 edx-ccx-keys==1.1.0       # via -r requirements/edx/testing.txt
 edx-celeryutils==0.5.0    # via -r requirements/edx/testing.txt, super-csv
 edx-completion==3.2.0     # via -r requirements/edx/testing.txt
 edx-django-release-util==0.4.4  # via -r requirements/edx/testing.txt
-edx-django-sites-extensions==2.5.0  # via -r requirements/edx/testing.txt
+edx-django-sites-extensions==2.5.1  # via -r requirements/edx/testing.txt
 edx-django-utils==3.2.2   # via -r requirements/edx/testing.txt, django-config-models, edx-drf-extensions, edx-enterprise, edx-rest-api-client, edx-when
 edx-drf-extensions==6.0.0  # via -r requirements/edx/testing.txt, edx-completion, edx-enterprise, edx-organizations, edx-proctoring, edx-rbac, edx-when, edxval
 edx-enterprise==3.2.11    # via -r requirements/edx/testing.txt
-edx-i18n-tools==0.5.1     # via -r requirements/edx/testing.txt, ora2
+edx-i18n-tools==0.5.3     # via -r requirements/edx/testing.txt, ora2
 edx-lint==1.4.1           # via -r requirements/edx/testing.txt
 edx-milestones==0.3.0     # via -r requirements/edx/testing.txt
 edx-opaque-keys[django]==2.1.0  # via -r requirements/edx/testing.txt, edx-bulk-grades, edx-ccx-keys, edx-completion, edx-drf-extensions, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-user-state-client, edx-when, xmodule
 edx-organizations==5.2.0  # via -r requirements/edx/testing.txt
 edx-proctoring-proctortrack==1.0.5  # via -r requirements/edx/testing.txt
 edx-proctoring==2.4.0     # via -r requirements/edx/testing.txt, edx-proctoring-proctortrack
-edx-rbac==1.2.0           # via -r requirements/edx/testing.txt, edx-enterprise
+edx-rbac==1.2.1           # via -r requirements/edx/testing.txt, edx-enterprise
 edx-rest-api-client==5.2.0  # via -r requirements/edx/testing.txt, edx-enterprise, edx-proctoring
 edx-search==1.3.4         # via -r requirements/edx/testing.txt
 edx-sga==0.10.0           # via -r requirements/edx/testing.txt
 edx-sphinx-theme==1.5.0   # via -r requirements/edx/development.in
-edx-submissions==3.1.4    # via -r requirements/edx/testing.txt, ora2
+edx-submissions==3.1.5    # via -r requirements/edx/testing.txt, ora2
 edx-tincan-py35==0.0.5    # via -r requirements/edx/testing.txt, edx-enterprise
 edx-user-state-client==1.2.0  # via -r requirements/edx/testing.txt
 edx-when==1.2.3           # via -r requirements/edx/testing.txt, edx-proctoring
 edxval==1.3.4             # via -r requirements/edx/testing.txt
 elasticsearch==1.9.0      # via -r requirements/edx/testing.txt, edx-search
-entrypoints==0.3          # via -r requirements/edx/testing.txt, flake8
 enum34==1.1.10            # via -r requirements/edx/testing.txt, edxval
 event-tracking==0.3.2     # via -r requirements/edx/testing.txt, edx-proctoring, edx-search
 execnet==1.7.1            # via -r requirements/edx/testing.txt, pytest-xdist
 factory-boy==2.8.1        # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt
-faker==4.0.3              # via -r requirements/edx/testing.txt, factory-boy
+faker==4.1.0              # via -r requirements/edx/testing.txt, factory-boy
 filelock==3.0.12          # via -r requirements/edx/testing.txt, tox, virtualenv
 flake8-polyfill==1.0.2    # via -r requirements/edx/testing.txt, radon
-flake8==3.7.9             # via -r requirements/edx/testing.txt, flake8-polyfill
+flake8==3.8.1             # via -r requirements/edx/testing.txt, flake8-polyfill
 freezegun==0.3.12         # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt
 fs-s3fs==0.1.8            # via -r requirements/edx/testing.txt, django-pyfs
 fs==2.0.18                # via -r requirements/edx/testing.txt, django-pyfs, fs-s3fs, xblock
@@ -157,7 +156,7 @@ httpretty==0.9.7          # via -c requirements/edx/../constraints.txt, -r requi
 icalendar==4.0.6          # via -r requirements/edx/testing.txt
 idna==2.9                 # via -r requirements/edx/testing.txt, requests
 imagesize==1.2.0          # via sphinx
-importlib-metadata==1.6.0  # via -r requirements/edx/testing.txt, importlib-resources, inflect, jsonschema, path, pluggy, pytest, pytest-randomly, tox, virtualenv
+importlib-metadata==1.6.0  # via -r requirements/edx/testing.txt, flake8, importlib-resources, inflect, jsonschema, path, pluggy, pytest, pytest-randomly, tox, virtualenv
 importlib-resources==1.5.0  # via -r requirements/edx/testing.txt, virtualenv
 inflect==3.0.2            # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, jinja2-pluralize
 inflection==0.4.0         # via -r requirements/edx/testing.txt, drf-yasg
@@ -167,7 +166,7 @@ isort==4.3.21             # via -r requirements/edx/testing.txt, pylint
 itypes==1.2.0             # via -r requirements/edx/testing.txt, coreapi
 jinja2-pluralize==0.3.0   # via -r requirements/edx/testing.txt, diff-cover
 jinja2==2.11.2            # via -r requirements/edx/testing.txt, code-annotations, coreschema, diff-cover, jinja2-pluralize, sphinx
-jmespath==0.9.5           # via -r requirements/edx/testing.txt, boto3, botocore
+jmespath==0.10.0          # via -r requirements/edx/testing.txt, boto3, botocore
 joblib==0.14.1            # via -r requirements/edx/testing.txt, nltk
 jsondiff==1.2.0           # via -r requirements/edx/testing.txt, edx-enterprise
 jsonfield2==3.0.3         # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, edx-celeryutils, edx-enterprise, edx-proctoring, edx-submissions, ora2
@@ -203,7 +202,7 @@ nodeenv==1.3.5            # via -r requirements/edx/testing.txt
 numpy==1.18.4             # via -r requirements/edx/testing.txt, chem, openedx-calc, pandas, scipy
 git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2  # via -r requirements/edx/testing.txt
 oauthlib==3.0.1           # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, django-oauth-toolkit, lti-consumer-xblock, requests-oauthlib, social-auth-core
-openedx-calc==1.0.7       # via -r requirements/edx/testing.txt
+openedx-calc==1.0.9       # via -r requirements/edx/testing.txt
 git+https://github.com/edx/edx-ora2.git@2.6.25#egg=ora2==2.6.25  # via -r requirements/edx/testing.txt
 packaging==20.3           # via -r requirements/edx/testing.txt, bleach, drf-yasg, pytest, sphinx, tox
 pandas==0.22.0            # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt
@@ -223,13 +222,13 @@ polib==1.1.0              # via -r requirements/edx/testing.txt, edx-i18n-tools
 psutil==1.2.1             # via -r requirements/edx/testing.txt, edx-django-utils
 py2neo==3.1.2             # via -r requirements/edx/testing.txt
 py==1.8.1                 # via -r requirements/edx/testing.txt, pytest, tox
-pycodestyle==2.5.0        # via -r requirements/edx/testing.txt, flake8
+pycodestyle==2.6.0        # via -r requirements/edx/testing.txt, flake8
 pycontracts==1.8.14       # via -r requirements/edx/testing.txt, edx-user-state-client
 pycountry==19.8.18        # via -r requirements/edx/testing.txt
 pycparser==2.20           # via -r requirements/edx/testing.txt, cffi
 pycryptodome==3.9.7       # via -r requirements/edx/testing.txt, pdfminer.six
 pycryptodomex==3.9.7      # via -r requirements/edx/testing.txt, edx-proctoring, pyjwkest
-pyflakes==2.1.1           # via -r requirements/edx/testing.txt, flake8
+pyflakes==2.2.0           # via -r requirements/edx/testing.txt, flake8
 pygments==2.6.1           # via -r requirements/edx/testing.txt, diff-cover, sphinx
 pyjwkest==1.4.2           # via -r requirements/edx/testing.txt, edx-drf-extensions
 pyjwt==1.5.2              # via -r requirements/edx/testing.txt, drf-jwt, edx-rest-api-client, social-auth-core
@@ -239,7 +238,7 @@ pylint-plugin-utils==0.6  # via -r requirements/edx/testing.txt, pylint-celery,
 pylint==2.4.2             # via -r requirements/edx/testing.txt, edx-lint, pylint-celery, pylint-django, pylint-plugin-utils
 pymongo==3.9.0            # via -r requirements/edx/testing.txt, edx-opaque-keys, event-tracking, mongodbproxy, mongoengine
 pynliner==0.8.0           # via -r requirements/edx/testing.txt
-pyparsing==2.2.0          # via -r requirements/edx/testing.txt, chem, openedx-calc, packaging, pycontracts
+pyparsing==2.4.7          # via -r requirements/edx/testing.txt, chem, openedx-calc, packaging, pycontracts
 pyquery==1.4.1            # via -r requirements/edx/testing.txt
 pyrsistent==0.16.0        # via jsonschema
 pysrt==1.1.2              # via -r requirements/edx/testing.txt, edxval
@@ -267,7 +266,7 @@ radon==4.1.0              # via -r requirements/edx/testing.txt
 random2==1.0.1            # via -r requirements/edx/testing.txt
 recommender-xblock==1.4.8  # via -r requirements/edx/testing.txt
 redis==2.10.6             # via -r requirements/edx/testing.txt
-regex==2020.5.7           # via -r requirements/edx/testing.txt, nltk
+regex==2020.5.13          # via -r requirements/edx/testing.txt, nltk
 requests-oauthlib==1.3.0  # via -r requirements/edx/testing.txt, social-auth-core
 requests==2.23.0          # via -r requirements/edx/testing.txt, analytics-python, coreapi, django-oauth-toolkit, edx-analytics-data-api-client, edx-bulk-grades, edx-drf-extensions, edx-enterprise, edx-rest-api-client, geoip2, mailsnake, pyjwkest, python-swiftclient, requests-oauthlib, sailthru-client, slumber, social-auth-core, sphinx, transifex-client
 rest-condition==1.0.3     # via -r requirements/edx/testing.txt, edx-drf-extensions
diff --git a/requirements/edx/testing.txt b/requirements/edx/testing.txt
index cb1cf78a088..7abd30ad6be 100644
--- a/requirements/edx/testing.txt
+++ b/requirements/edx/testing.txt
@@ -67,7 +67,7 @@ git+https://github.com/Zegocover/enmerkar.git@dbc113798aa4beabdfa2d00e6fef48248e
 django-celery==3.3.1      # via -r requirements/edx/base.txt
 django-classy-tags==1.0.0  # via -r requirements/edx/base.txt, django-sekizai
 django-config-models==2.0.2  # via -r requirements/edx/base.txt, edx-enterprise
-django-cookies-samesite==0.5.1  # via -r requirements/edx/base.txt
+django-cookies-samesite==0.5.1  # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt
 django-cors-headers==2.5.3  # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt
 django-countries==5.5     # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt, edx-enterprise
 django-crum==0.7.6        # via -r requirements/edx/base.txt, edx-enterprise, edx-proctoring, edx-rbac, super-csv
@@ -101,43 +101,42 @@ docutils==0.16            # via -r requirements/edx/base.txt, botocore
 drf-jwt==1.14.0           # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt, edx-drf-extensions
 drf-yasg==1.17.0          # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt, edx-api-doc-tools
 edx-ace==0.1.15           # via -r requirements/edx/base.txt
-edx-analytics-data-api-client==0.16.0  # via -r requirements/edx/base.txt
+edx-analytics-data-api-client==0.16.1  # via -r requirements/edx/base.txt
 edx-api-doc-tools==1.3.0  # via -r requirements/edx/base.txt
 edx-bulk-grades==0.6.8    # via -r requirements/edx/base.txt, staff-graded-xblock
 edx-ccx-keys==1.1.0       # via -r requirements/edx/base.txt
 edx-celeryutils==0.5.0    # via -r requirements/edx/base.txt, super-csv
 edx-completion==3.2.0     # via -r requirements/edx/base.txt
 edx-django-release-util==0.4.4  # via -r requirements/edx/base.txt
-edx-django-sites-extensions==2.5.0  # via -r requirements/edx/base.txt
+edx-django-sites-extensions==2.5.1  # via -r requirements/edx/base.txt
 edx-django-utils==3.2.2   # via -r requirements/edx/base.txt, django-config-models, edx-drf-extensions, edx-enterprise, edx-rest-api-client, edx-when
 edx-drf-extensions==6.0.0  # via -r requirements/edx/base.txt, edx-completion, edx-enterprise, edx-organizations, edx-proctoring, edx-rbac, edx-when, edxval
 edx-enterprise==3.2.11    # via -r requirements/edx/base.txt
-edx-i18n-tools==0.5.1     # via -r requirements/edx/base.txt, -r requirements/edx/testing.in, ora2
+edx-i18n-tools==0.5.3     # via -r requirements/edx/base.txt, -r requirements/edx/testing.in, ora2
 edx-lint==1.4.1           # via -r requirements/edx/testing.in
 edx-milestones==0.3.0     # via -r requirements/edx/base.txt
 edx-opaque-keys[django]==2.1.0  # via -r requirements/edx/base.txt, edx-bulk-grades, edx-ccx-keys, edx-completion, edx-drf-extensions, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-user-state-client, edx-when, xmodule
 edx-organizations==5.2.0  # via -r requirements/edx/base.txt
 edx-proctoring-proctortrack==1.0.5  # via -r requirements/edx/base.txt
 edx-proctoring==2.4.0     # via -r requirements/edx/base.txt, edx-proctoring-proctortrack
-edx-rbac==1.2.0           # via -r requirements/edx/base.txt, edx-enterprise
+edx-rbac==1.2.1           # via -r requirements/edx/base.txt, edx-enterprise
 edx-rest-api-client==5.2.0  # via -r requirements/edx/base.txt, edx-enterprise, edx-proctoring
 edx-search==1.3.4         # via -r requirements/edx/base.txt
 edx-sga==0.10.0           # via -r requirements/edx/base.txt
-edx-submissions==3.1.4    # via -r requirements/edx/base.txt, ora2
+edx-submissions==3.1.5    # via -r requirements/edx/base.txt, ora2
 edx-tincan-py35==0.0.5    # via -r requirements/edx/base.txt, edx-enterprise
 edx-user-state-client==1.2.0  # via -r requirements/edx/base.txt
 edx-when==1.2.3           # via -r requirements/edx/base.txt, edx-proctoring
 edxval==1.3.4             # via -r requirements/edx/base.txt
 elasticsearch==1.9.0      # via -r requirements/edx/base.txt, edx-search
-entrypoints==0.3          # via flake8
 enum34==1.1.10            # via -r requirements/edx/base.txt, edxval
 event-tracking==0.3.2     # via -r requirements/edx/base.txt, edx-proctoring, edx-search
 execnet==1.7.1            # via pytest-xdist
 factory-boy==2.8.1        # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.in
-faker==4.0.3              # via factory-boy
+faker==4.1.0              # via factory-boy
 filelock==3.0.12          # via tox, virtualenv
 flake8-polyfill==1.0.2    # via radon
-flake8==3.7.9             # via flake8-polyfill
+flake8==3.8.1             # via flake8-polyfill
 freezegun==0.3.12         # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.in
 fs-s3fs==0.1.8            # via -r requirements/edx/base.txt, django-pyfs
 fs==2.0.18                # via -r requirements/edx/base.txt, django-pyfs, fs-s3fs, xblock
@@ -151,7 +150,7 @@ httplib2==0.17.3          # via -r requirements/edx/base.txt, oauth2
 httpretty==0.9.7          # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.in
 icalendar==4.0.6          # via -r requirements/edx/base.txt
 idna==2.9                 # via -r requirements/edx/base.txt, requests
-importlib-metadata==1.6.0  # via -r requirements/edx/base.txt, -r requirements/edx/coverage.txt, importlib-resources, inflect, path, pluggy, pytest, pytest-randomly, tox, virtualenv
+importlib-metadata==1.6.0  # via -r requirements/edx/base.txt, -r requirements/edx/coverage.txt, flake8, importlib-resources, inflect, path, pluggy, pytest, pytest-randomly, tox, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 inflect==3.0.2            # via -c requirements/edx/../constraints.txt, -r requirements/edx/coverage.txt, jinja2-pluralize
 inflection==0.4.0         # via -r requirements/edx/base.txt, drf-yasg
@@ -161,7 +160,7 @@ isort==4.3.21             # via -r requirements/edx/testing.in, pylint
 itypes==1.2.0             # via -r requirements/edx/base.txt, coreapi
 jinja2-pluralize==0.3.0   # via -r requirements/edx/coverage.txt, diff-cover
 jinja2==2.11.2            # via -r requirements/edx/base.txt, -r requirements/edx/coverage.txt, code-annotations, coreschema, diff-cover, jinja2-pluralize
-jmespath==0.9.5           # via -r requirements/edx/base.txt, boto3, botocore
+jmespath==0.10.0          # via -r requirements/edx/base.txt, boto3, botocore
 joblib==0.14.1            # via -r requirements/edx/base.txt, nltk
 jsondiff==1.2.0           # via -r requirements/edx/base.txt, edx-enterprise
 jsonfield2==3.0.3         # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt, edx-celeryutils, edx-enterprise, edx-proctoring, edx-submissions, ora2
@@ -194,7 +193,7 @@ nodeenv==1.3.5            # via -r requirements/edx/base.txt
 numpy==1.18.4             # via -r requirements/edx/base.txt, -r requirements/edx/coverage.txt, chem, openedx-calc, pandas, scipy
 git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2  # via -r requirements/edx/base.txt
 oauthlib==3.0.1           # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt, django-oauth-toolkit, lti-consumer-xblock, requests-oauthlib, social-auth-core
-openedx-calc==1.0.7       # via -r requirements/edx/base.txt
+openedx-calc==1.0.9       # via -r requirements/edx/base.txt
 git+https://github.com/edx/edx-ora2.git@2.6.25#egg=ora2==2.6.25  # via -r requirements/edx/base.txt
 packaging==20.3           # via -r requirements/edx/base.txt, bleach, drf-yasg, pytest, tox
 pandas==0.22.0            # via -c requirements/edx/../constraints.txt, -r requirements/edx/coverage.txt
@@ -213,13 +212,13 @@ polib==1.1.0              # via -r requirements/edx/base.txt, -r requirements/ed
 psutil==1.2.1             # via -r requirements/edx/base.txt, edx-django-utils
 py2neo==3.1.2             # via -r requirements/edx/base.txt
 py==1.8.1                 # via pytest, tox
-pycodestyle==2.5.0        # via -r requirements/edx/testing.in, flake8
+pycodestyle==2.6.0        # via -r requirements/edx/testing.in, flake8
 pycontracts==1.8.14       # via -r requirements/edx/base.txt, edx-user-state-client
 pycountry==19.8.18        # via -r requirements/edx/base.txt
 pycparser==2.20           # via -r requirements/edx/base.txt, cffi
 pycryptodome==3.9.7       # via -r requirements/edx/base.txt, pdfminer.six
 pycryptodomex==3.9.7      # via -r requirements/edx/base.txt, edx-proctoring, pyjwkest
-pyflakes==2.1.1           # via flake8
+pyflakes==2.2.0           # via flake8
 pygments==2.6.1           # via -r requirements/edx/base.txt, -r requirements/edx/coverage.txt, diff-cover
 pyjwkest==1.4.2           # via -r requirements/edx/base.txt, edx-drf-extensions
 pyjwt==1.5.2              # via -r requirements/edx/base.txt, drf-jwt, edx-rest-api-client, social-auth-core
@@ -229,7 +228,7 @@ pylint-plugin-utils==0.6  # via pylint-celery, pylint-django
 pylint==2.4.2             # via edx-lint, pylint-celery, pylint-django, pylint-plugin-utils
 pymongo==3.9.0            # via -r requirements/edx/base.txt, edx-opaque-keys, event-tracking, mongodbproxy, mongoengine
 pynliner==0.8.0           # via -r requirements/edx/base.txt
-pyparsing==2.2.0          # via -r requirements/edx/base.txt, chem, openedx-calc, packaging, pycontracts
+pyparsing==2.4.7          # via -r requirements/edx/base.txt, chem, openedx-calc, packaging, pycontracts
 pyquery==1.4.1            # via -r requirements/edx/testing.in
 pysrt==1.1.2              # via -r requirements/edx/base.txt, edxval
 pytest-attrib==0.1.3      # via -r requirements/edx/testing.in
@@ -255,7 +254,7 @@ radon==4.1.0              # via -r requirements/edx/testing.in
 random2==1.0.1            # via -r requirements/edx/base.txt
 recommender-xblock==1.4.8  # via -r requirements/edx/base.txt
 redis==2.10.6             # via -r requirements/edx/base.txt
-regex==2020.5.7           # via -r requirements/edx/base.txt, nltk
+regex==2020.5.13          # via -r requirements/edx/base.txt, nltk
 requests-oauthlib==1.3.0  # via -r requirements/edx/base.txt, social-auth-core
 requests==2.23.0          # via -r requirements/edx/base.txt, analytics-python, coreapi, django-oauth-toolkit, edx-analytics-data-api-client, edx-bulk-grades, edx-drf-extensions, edx-enterprise, edx-rest-api-client, geoip2, mailsnake, pyjwkest, python-swiftclient, requests-oauthlib, sailthru-client, slumber, social-auth-core, transifex-client
 rest-condition==1.0.3     # via -r requirements/edx/base.txt, edx-drf-extensions
-- 
GitLab