diff --git a/requirements/base.txt b/requirements/base.txt
index bfcff3d34d06c4301e344dbbf9b178cabdb9211f..e98e10479c833099ce287dde50945c06d8807bbc 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -6,7 +6,7 @@
 #
 appdirs==1.4.4
     # via fs
-bleach==4.0.0
+bleach==4.1.0
     # via -r requirements/base.in
 certifi==2021.5.30
     # via requests
@@ -36,7 +36,7 @@ djangorestframework==3.12.4
     # via
     #   -c requirements/constraints.txt
     #   django-config-models
-edx-django-utils==4.2.0
+edx-django-utils==4.3.0
     # via django-config-models
 edx-opaque-keys[django]==2.2.2
     # via -r requirements/base.in
@@ -56,7 +56,7 @@ lxml==4.6.3
     # via
     #   -r requirements/base.in
     #   xblock
-mako==1.1.4
+mako==1.1.5
     # via
     #   -r requirements/base.in
     #   xblock-utils
@@ -64,7 +64,7 @@ markupsafe==2.0.1
     # via
     #   mako
     #   xblock
-newrelic==6.8.0.163
+newrelic==6.8.1.164
     # via edx-django-utils
 oauthlib==3.1.1
     # via -r requirements/base.in
@@ -95,7 +95,7 @@ pyyaml==5.4.1
     # via xblock
 requests==2.26.0
     # via pyjwkest
-simplejson==3.17.3
+simplejson==3.17.5
     # via xblock-utils
 six==1.16.0
     # via
@@ -105,7 +105,7 @@ six==1.16.0
     #   python-dateutil
 sqlparse==0.4.1
     # via django
-stevedore==3.3.0
+stevedore==3.4.0
     # via
     #   edx-django-utils
     #   edx-opaque-keys
diff --git a/requirements/common_constraints.txt b/requirements/common_constraints.txt
index 2c5bedd8d6232202b2e77d125d126ec5c146568a..cc16c07b9b07a3bf629ad7906e0fd0c50271188e 100644
--- a/requirements/common_constraints.txt
+++ b/requirements/common_constraints.txt
@@ -16,10 +16,28 @@
 Django<2.3
 
 # latest version is causing e2e failures in edx-platform.
+# See pyjwt[crypto]<2.0.0 comment.
 drf-jwt<1.19.1
 
-# Newer versions causing tests failures in multiple repos.
-pyjwt[crypto]==1.7.1
+# 4.0.0 requires pyjwt[crypto] 2.1.0. See pyjwt[crypto]<2.0.0 comment.
+edx-auth-backends<4.0.0
 
-# latest version requires PyJWT>=2.0.0 but drf-jwt requires PyJWT[crypto]<2.0.0,>=1.5.2
+# 7.0.0 requires pyjwt[crypto] 2.1.0. See pyjwt[crypto]<2.0.0 comment.
+edx-drf-extensions<7.0.0
+
+# PyJWT[crypto] 2.0.0 has a number of breaking changes that we are
+# actively working to fix. A number of the active constraints are all related
+# to this effort. Additionally, your IDA/service may also be affected directly
+# by these changes. You should not upgrade without knowing what you are doing.
+pyjwt[crypto]<2.0.0
+
+# 5.0.0+ of social-auth-app-django requires social-auth-core>=4.1.0
+social-auth-app-django<5.0.0
+
+# latest version requires PyJWT>=2.0.0 but drf-jwt requires PyJWT[crypto]<2.0.0,>=1.5.2.
+# See pyjwt[crypto]<2.0.0 comment.
 social-auth-core<4.0.3
+
+# elasticsearch>=7.14.0 includes breaking changes in it which caused issues in discovery upgrade process.
+# elastic search changelog: https://www.elastic.co/guide/en/enterprise-search/master/release-notes-7.14.0.html
+elasticsearch<7.14.0
diff --git a/requirements/dev.txt b/requirements/dev.txt
index 300f9790d791d963c6c4b901b8fa4abd6ec90e7c..625e90f65525f0dc16c8bc335080263be0d4bc91 100644
--- a/requirements/dev.txt
+++ b/requirements/dev.txt
@@ -8,7 +8,7 @@ appdirs==1.4.4
     # via
     #   -r requirements/base.txt
     #   fs
-bleach==4.0.0
+bleach==4.1.0
     # via -r requirements/base.txt
 certifi==2021.5.30
     # via
@@ -44,7 +44,7 @@ djangorestframework==3.12.4
     # via
     #   -r requirements/base.txt
     #   django-config-models
-edx-django-utils==4.2.0
+edx-django-utils==4.3.0
     # via
     #   -r requirements/base.txt
     #   django-config-models
@@ -72,7 +72,7 @@ lxml==4.6.3
     # via
     #   -r requirements/base.txt
     #   xblock
-mako==1.1.4
+mako==1.1.5
     # via
     #   -r requirements/base.txt
     #   xblock-utils
@@ -81,7 +81,7 @@ markupsafe==2.0.1
     #   -r requirements/base.txt
     #   mako
     #   xblock
-newrelic==6.8.0.163
+newrelic==6.8.1.164
     # via
     #   -r requirements/base.txt
     #   edx-django-utils
@@ -138,7 +138,7 @@ requests==2.26.0
     # via
     #   -r requirements/base.txt
     #   pyjwkest
-simplejson==3.17.3
+simplejson==3.17.5
     # via
     #   -r requirements/base.txt
     #   xblock-utils
@@ -154,7 +154,7 @@ sqlparse==0.4.1
     # via
     #   -r requirements/base.txt
     #   django
-stevedore==3.3.0
+stevedore==3.4.0
     # via
     #   -r requirements/base.txt
     #   edx-django-utils
diff --git a/requirements/pip_tools.txt b/requirements/pip_tools.txt
index 7d7a92cd0fc1da77d79deef74eff8e11c1cd5267..ac3012fad7ec35b13a08b892e8d7ecc26b9e68cf 100644
--- a/requirements/pip_tools.txt
+++ b/requirements/pip_tools.txt
@@ -12,7 +12,7 @@ pip-tools==6.2.0
     # via -r requirements/pip_tools.in
 tomli==1.2.1
     # via pep517
-wheel==0.36.2
+wheel==0.37.0
     # via pip-tools
 
 # The following packages are considered to be unsafe in a requirements file:
diff --git a/requirements/test.txt b/requirements/test.txt
index c99890c849fb5c82842b5423e60d83ee08f502fa..55b1623fc1529d9384e170c357041e9425912e51 100644
--- a/requirements/test.txt
+++ b/requirements/test.txt
@@ -8,17 +8,17 @@ appdirs==1.4.4
     # via
     #   -r requirements/base.txt
     #   fs
-astroid==2.6.6
+astroid==2.7.2
     # via
     #   pylint
     #   pylint-celery
-bleach==4.0.0
+bleach==4.1.0
     # via
     #   -r requirements/base.txt
     #   readme-renderer
-boto3==1.18.15
+boto3==1.18.30
     # via fs-s3fs
-botocore==1.21.15
+botocore==1.21.30
     # via
     #   boto3
     #   s3transfer
@@ -47,7 +47,7 @@ coverage==5.5
     # via coveralls
 coveralls==3.2.0
     # via -r requirements/test.in
-cryptography==3.4.7
+cryptography==3.4.8
     # via secretstorage
 ddt==1.4.2
     # via -r requirements/test.in
@@ -89,7 +89,7 @@ docopt==0.6.2
     # via coveralls
 docutils==0.17.1
     # via readme-renderer
-edx-django-utils==4.2.0
+edx-django-utils==4.3.0
     # via
     #   -r requirements/base.txt
     #   django-config-models
@@ -113,7 +113,7 @@ idna==3.2
     # via
     #   -r requirements/base.txt
     #   requests
-importlib-metadata==4.6.3
+importlib-metadata==4.7.1
     # via
     #   keyring
     #   twine
@@ -133,7 +133,7 @@ jsonfield2==3.0.3
     # via
     #   -c requirements/constraints.txt
     #   -r requirements/base.txt
-keyring==23.0.1
+keyring==23.1.0
     # via twine
 lazy==1.4
     # via -r requirements/base.txt
@@ -143,7 +143,7 @@ lxml==4.6.3
     # via
     #   -r requirements/base.txt
     #   xblock
-mako==1.1.4
+mako==1.1.5
     # via
     #   -r requirements/base.txt
     #   xblock-utils
@@ -157,7 +157,7 @@ mccabe==0.6.1
     # via pylint
 mock==4.0.3
     # via -r requirements/test.in
-newrelic==6.8.0.163
+newrelic==6.8.1.164
     # via
     #   -r requirements/base.txt
     #   edx-django-utils
@@ -173,6 +173,8 @@ pbr==5.6.0
     #   stevedore
 pkginfo==1.7.1
     # via twine
+platformdirs==2.2.0
+    # via pylint
 psutil==5.8.0
     # via
     #   -r requirements/base.txt
@@ -185,11 +187,11 @@ pycryptodomex==3.10.1
     # via
     #   -r requirements/base.txt
     #   pyjwkest
-pygments==2.9.0
+pygments==2.10.0
     # via readme-renderer
 pyjwkest==1.4.2
     # via -r requirements/base.txt
-pylint==2.9.6
+pylint==2.10.2
     # via
     #   edx-lint
     #   pylint-celery
@@ -248,7 +250,7 @@ s3transfer==0.5.0
     # via boto3
 secretstorage==3.3.1
     # via keyring
-simplejson==3.17.3
+simplejson==3.17.5
     # via
     #   -r requirements/base.txt
     #   xblock-utils
@@ -266,7 +268,7 @@ sqlparse==0.4.1
     # via
     #   -r requirements/base.txt
     #   django
-stevedore==3.3.0
+stevedore==3.4.0
     # via
     #   -r requirements/base.txt
     #   code-annotations
@@ -276,7 +278,7 @@ text-unidecode==1.3
     # via python-slugify
 toml==0.10.2
     # via pylint
-tqdm==4.62.0
+tqdm==4.62.2
     # via twine
 twine==3.4.2
     # via -r requirements/test.in
diff --git a/requirements/tox.txt b/requirements/tox.txt
index 2507f679e311ff4926e73b3187b70e0672d7478b..496768af98ebcde0440caeb0319c97152d720669 100644
--- a/requirements/tox.txt
+++ b/requirements/tox.txt
@@ -16,7 +16,7 @@ packaging==21.0
     # via tox
 platformdirs==2.2.0
     # via virtualenv
-pluggy==0.13.1
+pluggy==1.0.0
     # via tox
 py==1.10.0
     # via tox
@@ -28,7 +28,7 @@ six==1.16.0
     #   virtualenv
 toml==0.10.2
     # via tox
-tox==3.24.1
+tox==3.24.3
     # via -r requirements/tox.in
-virtualenv==20.7.0
+virtualenv==20.7.2
     # via tox
diff --git a/requirements/travis.txt b/requirements/travis.txt
index 533ab48569f38f32e75c6424f94bf88745088eff..244f69b353d61bd5d110bed32eeb00c3c88908cb 100644
--- a/requirements/travis.txt
+++ b/requirements/travis.txt
@@ -8,7 +8,7 @@ appdirs==1.4.4
     # via
     #   -r requirements/test.txt
     #   fs
-astroid==2.6.6
+astroid==2.7.2
     # via
     #   -r requirements/test.txt
     #   pylint
@@ -17,15 +17,15 @@ backports.entry-points-selectable==1.1.0
     # via
     #   -r requirements/tox.txt
     #   virtualenv
-bleach==4.0.0
+bleach==4.1.0
     # via
     #   -r requirements/test.txt
     #   readme-renderer
-boto3==1.18.15
+boto3==1.18.30
     # via
     #   -r requirements/test.txt
     #   fs-s3fs
-botocore==1.21.15
+botocore==1.21.30
     # via
     #   -r requirements/test.txt
     #   boto3
@@ -66,7 +66,7 @@ coverage==5.5
     #   coveralls
 coveralls==3.2.0
     # via -r requirements/test.txt
-cryptography==3.4.7
+cryptography==3.4.8
     # via
     #   -r requirements/test.txt
     #   secretstorage
@@ -118,7 +118,7 @@ docutils==0.17.1
     # via
     #   -r requirements/test.txt
     #   readme-renderer
-edx-django-utils==4.2.0
+edx-django-utils==4.3.0
     # via
     #   -r requirements/test.txt
     #   django-config-models
@@ -149,7 +149,7 @@ idna==3.2
     # via
     #   -r requirements/test.txt
     #   requests
-importlib-metadata==4.6.3
+importlib-metadata==4.7.1
     # via
     #   -r requirements/test.txt
     #   keyring
@@ -176,7 +176,7 @@ jsonfield2==3.0.3
     # via
     #   -c requirements/constraints.txt
     #   -r requirements/test.txt
-keyring==23.0.1
+keyring==23.1.0
     # via
     #   -r requirements/test.txt
     #   twine
@@ -190,7 +190,7 @@ lxml==4.6.3
     # via
     #   -r requirements/test.txt
     #   xblock
-mako==1.1.4
+mako==1.1.5
     # via
     #   -r requirements/test.txt
     #   xblock-utils
@@ -206,7 +206,7 @@ mccabe==0.6.1
     #   pylint
 mock==4.0.3
     # via -r requirements/test.txt
-newrelic==6.8.0.163
+newrelic==6.8.1.164
     # via
     #   -r requirements/test.txt
     #   edx-django-utils
@@ -228,9 +228,11 @@ pkginfo==1.7.1
     #   twine
 platformdirs==2.2.0
     # via
+    #   -r requirements/test.txt
     #   -r requirements/tox.txt
+    #   pylint
     #   virtualenv
-pluggy==0.13.1
+pluggy==1.0.0
     # via
     #   -r requirements/tox.txt
     #   tox
@@ -252,13 +254,13 @@ pycryptodomex==3.10.1
     # via
     #   -r requirements/test.txt
     #   pyjwkest
-pygments==2.9.0
+pygments==2.10.0
     # via
     #   -r requirements/test.txt
     #   readme-renderer
 pyjwkest==1.4.2
     # via -r requirements/test.txt
-pylint==2.9.6
+pylint==2.10.2
     # via
     #   -r requirements/test.txt
     #   edx-lint
@@ -334,7 +336,7 @@ secretstorage==3.3.1
     # via
     #   -r requirements/test.txt
     #   keyring
-simplejson==3.17.3
+simplejson==3.17.5
     # via
     #   -r requirements/test.txt
     #   xblock-utils
@@ -355,7 +357,7 @@ sqlparse==0.4.1
     # via
     #   -r requirements/test.txt
     #   django
-stevedore==3.3.0
+stevedore==3.4.0
     # via
     #   -r requirements/test.txt
     #   code-annotations
@@ -371,9 +373,9 @@ toml==0.10.2
     #   -r requirements/tox.txt
     #   pylint
     #   tox
-tox==3.24.1
+tox==3.24.3
     # via -r requirements/tox.txt
-tqdm==4.62.0
+tqdm==4.62.2
     # via
     #   -r requirements/test.txt
     #   twine
@@ -384,7 +386,7 @@ urllib3==1.26.6
     #   -r requirements/test.txt
     #   botocore
     #   requests
-virtualenv==20.7.0
+virtualenv==20.7.2
     # via
     #   -r requirements/tox.txt
     #   tox