diff --git a/requirements/base.txt b/requirements/base.txt
index 127b0629baa5047ca50b33bd50d36b5d7e9154d1..84101d44a2c4047d6eacdc79073f49ef07cdaa09 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -10,7 +10,7 @@ asgiref==3.6.0
     # via django
 attrs==22.2.0
     # via -r requirements/base.in
-bleach==5.0.1
+bleach==6.0.0
     # via -r requirements/base.in
 certifi==2022.12.7
     # via requests
@@ -63,7 +63,7 @@ mako==1.2.4
     # via
     #   -r requirements/base.in
     #   xblock-utils
-markupsafe==2.1.1
+markupsafe==2.1.2
     # via
     #   mako
     #   xblock
@@ -71,7 +71,7 @@ newrelic==8.5.0
     # via edx-django-utils
 oauthlib==3.2.2
     # via -r requirements/base.in
-openedx-filters==0.8.0
+openedx-filters==1.0.0
     # via -r requirements/base.in
 pbr==5.11.1
     # via stevedore
@@ -79,7 +79,7 @@ psutil==5.9.4
     # via edx-django-utils
 pycparser==2.21
     # via cffi
-pycryptodomex==3.16.0
+pycryptodomex==3.17
     # via
     #   -r requirements/base.in
     #   pyjwkest
@@ -124,7 +124,7 @@ webencodings==0.5.1
     # via bleach
 webob==1.8.7
     # via xblock
-xblock==1.6.1
+xblock==1.6.2
     # via
     #   -r requirements/base.in
     #   xblock-utils
diff --git a/requirements/ci.txt b/requirements/ci.txt
index de17b8714e08d5c0d1a444969c61f16c6ac8dbfd..a5d6a4da8f175097dbe2af164f848f015b12aaeb 100644
--- a/requirements/ci.txt
+++ b/requirements/ci.txt
@@ -16,7 +16,7 @@ asgiref==3.6.0
     # via
     #   -r requirements/test.txt
     #   django
-astroid==2.13.2
+astroid==2.13.3
     # via
     #   -r requirements/test.txt
     #   pylint
@@ -27,7 +27,7 @@ binaryornot==0.4.4
     # via
     #   -r requirements/test.txt
     #   cookiecutter
-bleach==5.0.1
+bleach==6.0.0
     # via
     #   -r requirements/test.txt
     #   readme-renderer
@@ -35,11 +35,11 @@ boto==2.49.0
     # via
     #   -r requirements/test.txt
     #   xblock-sdk
-boto3==1.26.50
+boto3==1.26.59
     # via
     #   -r requirements/test.txt
     #   fs-s3fs
-botocore==1.29.50
+botocore==1.29.59
     # via
     #   -r requirements/test.txt
     #   boto3
@@ -77,10 +77,6 @@ code-annotations==1.3.0
     # via
     #   -r requirements/test.txt
     #   edx-lint
-commonmark==0.9.1
-    # via
-    #   -r requirements/test.txt
-    #   rich
 cookiecutter==2.1.1
     # via
     #   -r requirements/test.txt
@@ -116,6 +112,7 @@ django==3.2.16
     #   djangorestframework
     #   edx-django-utils
     #   jsonfield
+    #   openedx-django-pyfs
     #   openedx-filters
     #   xblock-sdk
 django-config-models==2.3.0
@@ -127,9 +124,7 @@ django-crum==0.7.9
 django-filter==22.1
     # via -r requirements/test.txt
 django-pyfs==3.2.0
-    # via
-    #   -r requirements/test.txt
-    #   xblock-sdk
+    # via -r requirements/test.txt
 django-waffle==3.0.0
     # via
     #   -r requirements/test.txt
@@ -164,11 +159,13 @@ fs==2.4.16
     #   -r requirements/test.txt
     #   django-pyfs
     #   fs-s3fs
+    #   openedx-django-pyfs
     #   xblock
 fs-s3fs==1.1.1
     # via
     #   -r requirements/test.txt
     #   django-pyfs
+    #   openedx-django-pyfs
     #   xblock-sdk
 future==0.18.3
     # via
@@ -187,7 +184,7 @@ importlib-resources==5.10.2
     # via
     #   -r requirements/test.txt
     #   keyring
-isort==5.11.4
+isort==5.12.0
     # via
     #   -r requirements/test.txt
     #   pylint
@@ -224,7 +221,7 @@ keyring==23.13.1
 lazy==1.5
     # via
     #   -r requirements/test.txt
-    #   xblock-sdk
+    #   xblock
 lazy-object-proxy==1.9.0
     # via
     #   -r requirements/test.txt
@@ -238,7 +235,11 @@ mako==1.2.4
     # via
     #   -r requirements/test.txt
     #   xblock-utils
-markupsafe==2.1.1
+markdown-it-py==2.1.0
+    # via
+    #   -r requirements/test.txt
+    #   rich
+markupsafe==2.1.2
     # via
     #   -r requirements/test.txt
     #   jinja2
@@ -248,6 +249,10 @@ mccabe==0.7.0
     # via
     #   -r requirements/test.txt
     #   pylint
+mdurl==0.1.2
+    # via
+    #   -r requirements/test.txt
+    #   markdown-it-py
 mock==5.0.1
     # via -r requirements/test.txt
 more-itertools==9.0.0
@@ -260,7 +265,11 @@ newrelic==8.5.0
     #   edx-django-utils
 oauthlib==3.2.2
     # via -r requirements/test.txt
-openedx-filters==0.8.0
+openedx-django-pyfs==3.2.1
+    # via
+    #   -r requirements/test.txt
+    #   xblock
+openedx-filters==1.0.0
     # via -r requirements/test.txt
 packaging==23.0
     # via
@@ -298,7 +307,7 @@ pycparser==2.21
     # via
     #   -r requirements/test.txt
     #   cffi
-pycryptodomex==3.16.0
+pycryptodomex==3.17
     # via
     #   -r requirements/test.txt
     #   pyjwkest
@@ -347,7 +356,7 @@ python-dateutil==2.8.2
     #   arrow
     #   botocore
     #   xblock
-python-slugify==7.0.0
+python-slugify==8.0.0
     # via
     #   -r requirements/test.txt
     #   code-annotations
@@ -385,7 +394,7 @@ rfc3986==2.0.0
     # via
     #   -r requirements/test.txt
     #   twine
-rich==13.1.0
+rich==13.3.1
     # via
     #   -r requirements/test.txt
     #   twine
@@ -478,16 +487,16 @@ wrapt==1.14.1
     # via
     #   -r requirements/test.txt
     #   astroid
-xblock==1.6.1
+xblock[django]==1.6.2
     # via
     #   -r requirements/test.txt
     #   xblock-sdk
     #   xblock-utils
-xblock-sdk==0.5.1
+xblock-sdk==0.5.4
     # via -r requirements/test.txt
 xblock-utils==3.0.0
     # via -r requirements/test.txt
-zipp==3.11.0
+zipp==3.12.0
     # via
     #   -r requirements/test.txt
     #   importlib-metadata
diff --git a/requirements/common_constraints.txt b/requirements/common_constraints.txt
index b5f17153092fb6f873bbe788b4585fa29958097b..7e39123ff0454af3263ee2387b97c5e3f1769cc5 100644
--- a/requirements/common_constraints.txt
+++ b/requirements/common_constraints.txt
@@ -19,10 +19,6 @@ Django<4.0
 # elastic search changelog: https://www.elastic.co/guide/en/enterprise-search/master/release-notes-7.14.0.html
 elasticsearch<7.14.0
 
-# setuptools==60.0 had breaking changes and busted several service's pipeline.
-# Details can be found here: https://github.com/pypa/setuptools/issues/2940
-setuptools<60
-
 # django-simple-history>3.0.0 adds indexing and causes a lot of migrations to be affected
 django-simple-history==3.0.0
 
diff --git a/requirements/dev.txt b/requirements/dev.txt
index 926a781aff9ca93308f7fc93a8bc1c5ae5fe879d..2357f189171504198d23af0b5cb4947868908c59 100644
--- a/requirements/dev.txt
+++ b/requirements/dev.txt
@@ -14,7 +14,7 @@ asgiref==3.6.0
     #   django
 attrs==22.2.0
     # via -r requirements/base.txt
-bleach==5.0.1
+bleach==6.0.0
     # via -r requirements/base.txt
 certifi==2022.12.7
     # via
@@ -91,7 +91,7 @@ mako==1.2.4
     # via
     #   -r requirements/base.txt
     #   xblock-utils
-markupsafe==2.1.1
+markupsafe==2.1.2
     # via
     #   -r requirements/base.txt
     #   mako
@@ -102,7 +102,7 @@ newrelic==8.5.0
     #   edx-django-utils
 oauthlib==3.2.2
     # via -r requirements/base.txt
-openedx-filters==0.8.0
+openedx-filters==1.0.0
     # via -r requirements/base.txt
 path==16.6.0
     # via edx-i18n-tools
@@ -120,7 +120,7 @@ pycparser==2.21
     # via
     #   -r requirements/base.txt
     #   cffi
-pycryptodomex==3.16.0
+pycryptodomex==3.17
     # via
     #   -r requirements/base.txt
     #   pyjwkest
@@ -190,7 +190,7 @@ webob==1.8.7
     # via
     #   -r requirements/base.txt
     #   xblock
-xblock==1.6.1
+xblock==1.6.2
     # via
     #   -r requirements/base.txt
     #   xblock-utils
diff --git a/requirements/pip.txt b/requirements/pip.txt
index 2602215f734990238c8de66ff385e8bfea56124a..090e71cc5d5769dd6a6dab8ffe74016c495bd221 100644
--- a/requirements/pip.txt
+++ b/requirements/pip.txt
@@ -6,9 +6,7 @@
 #
 pip==22.3.1
     # via -r requirements/pip.in
-setuptools==59.8.0
-    # via
-    #   -c requirements/common_constraints.txt
-    #   -r requirements/pip.in
+setuptools==67.0.0
+    # via -r requirements/pip.in
 wheel==0.38.4
     # via -r requirements/pip.in
diff --git a/requirements/quality.txt b/requirements/quality.txt
index 0cfcbc8509a103f197ed92e97241c6d63b03db28..e2ad5503f86d90baad53754d76469aec8a476341 100644
--- a/requirements/quality.txt
+++ b/requirements/quality.txt
@@ -14,7 +14,7 @@ asgiref==3.6.0
     # via
     #   -r requirements/base.txt
     #   django
-astroid==2.13.2
+astroid==2.13.3
     # via
     #   pylint
     #   pylint-celery
@@ -22,13 +22,13 @@ attrs==22.2.0
     # via -r requirements/base.txt
 binaryornot==0.4.4
     # via cookiecutter
-bleach==5.0.1
+bleach==6.0.0
     # via -r requirements/base.txt
 boto==2.49.0
     # via xblock-sdk
-boto3==1.26.50
+boto3==1.26.59
     # via fs-s3fs
-botocore==1.29.50
+botocore==1.29.59
     # via
     #   boto3
     #   s3transfer
@@ -71,10 +71,10 @@ django==3.2.16
     #   django-config-models
     #   django-crum
     #   django-filter
-    #   django-pyfs
     #   djangorestframework
     #   edx-django-utils
     #   jsonfield
+    #   openedx-django-pyfs
     #   openedx-filters
     #   xblock-sdk
 django-config-models==2.3.0
@@ -85,8 +85,6 @@ django-crum==0.7.9
     #   edx-django-utils
 django-filter==22.1
     # via -r requirements/base.txt
-django-pyfs==3.2.0
-    # via xblock-sdk
 django-waffle==3.0.0
     # via
     #   -r requirements/base.txt
@@ -106,12 +104,12 @@ edx-opaque-keys[django]==2.3.0
 fs==2.4.16
     # via
     #   -r requirements/base.txt
-    #   django-pyfs
     #   fs-s3fs
+    #   openedx-django-pyfs
     #   xblock
 fs-s3fs==1.1.1
     # via
-    #   django-pyfs
+    #   openedx-django-pyfs
     #   xblock-sdk
 future==0.18.3
     # via
@@ -121,7 +119,7 @@ idna==3.4
     # via
     #   -r requirements/base.txt
     #   requests
-isort==5.11.4
+isort==5.12.0
     # via pylint
 jinja2==3.1.2
     # via
@@ -139,7 +137,7 @@ jsonfield==3.1.0
 lazy==1.5
     # via
     #   -r requirements/base.txt
-    #   xblock-sdk
+    #   xblock
 lazy-object-proxy==1.9.0
     # via astroid
 lxml==4.9.2
@@ -151,7 +149,7 @@ mako==1.2.4
     # via
     #   -r requirements/base.txt
     #   xblock-utils
-markupsafe==2.1.1
+markupsafe==2.1.2
     # via
     #   -r requirements/base.txt
     #   jinja2
@@ -165,7 +163,9 @@ newrelic==8.5.0
     #   edx-django-utils
 oauthlib==3.2.2
     # via -r requirements/base.txt
-openedx-filters==0.8.0
+openedx-django-pyfs==3.2.1
+    # via xblock
+openedx-filters==1.0.0
     # via -r requirements/base.txt
 pbr==5.11.1
     # via
@@ -183,7 +183,7 @@ pycparser==2.21
     # via
     #   -r requirements/base.txt
     #   cffi
-pycryptodomex==3.16.0
+pycryptodomex==3.17
     # via
     #   -r requirements/base.txt
     #   pyjwkest
@@ -220,7 +220,7 @@ python-dateutil==2.8.2
     #   arrow
     #   botocore
     #   xblock
-python-slugify==7.0.0
+python-slugify==8.0.0
     # via
     #   code-annotations
     #   cookiecutter
@@ -300,12 +300,12 @@ webob==1.8.7
     #   xblock-sdk
 wrapt==1.14.1
     # via astroid
-xblock==1.6.1
+xblock[django]==1.6.2
     # via
     #   -r requirements/base.txt
     #   xblock-sdk
     #   xblock-utils
-xblock-sdk==0.5.1
+xblock-sdk==0.5.4
     # via -r requirements/quality.in
 xblock-utils==3.0.0
     # via -r requirements/base.txt
diff --git a/requirements/test.txt b/requirements/test.txt
index bd8733a6725d6feb65e3a13f93ec944c426c80ff..a81b9f83371cea105108cac382eab5421cbf75dc 100644
--- a/requirements/test.txt
+++ b/requirements/test.txt
@@ -14,7 +14,7 @@ asgiref==3.6.0
     # via
     #   -r requirements/base.txt
     #   django
-astroid==2.13.2
+astroid==2.13.3
     # via
     #   pylint
     #   pylint-celery
@@ -22,15 +22,15 @@ attrs==22.2.0
     # via -r requirements/base.txt
 binaryornot==0.4.4
     # via cookiecutter
-bleach==5.0.1
+bleach==6.0.0
     # via
     #   -r requirements/base.txt
     #   readme-renderer
 boto==2.49.0
     # via xblock-sdk
-boto3==1.26.50
+boto3==1.26.59
     # via fs-s3fs
-botocore==1.29.50
+botocore==1.29.59
     # via
     #   boto3
     #   s3transfer
@@ -61,8 +61,6 @@ click-log==0.4.0
     # via edx-lint
 code-annotations==1.3.0
     # via edx-lint
-commonmark==0.9.1
-    # via rich
 cookiecutter==2.1.1
     # via xblock-sdk
 coverage==6.5.0
@@ -85,6 +83,7 @@ dill==0.3.6
     #   djangorestframework
     #   edx-django-utils
     #   jsonfield
+    #   openedx-django-pyfs
     #   openedx-filters
     #   xblock-sdk
 django-config-models==2.3.0
@@ -96,9 +95,7 @@ django-crum==0.7.9
 django-filter==22.1
     # via -r requirements/base.txt
 django-pyfs==3.2.0
-    # via
-    #   -r requirements/test.in
-    #   xblock-sdk
+    # via -r requirements/test.in
 django-waffle==3.0.0
     # via
     #   -r requirements/base.txt
@@ -125,10 +122,12 @@ fs==2.4.16
     #   -r requirements/base.txt
     #   django-pyfs
     #   fs-s3fs
+    #   openedx-django-pyfs
     #   xblock
 fs-s3fs==1.1.1
     # via
     #   django-pyfs
+    #   openedx-django-pyfs
     #   xblock-sdk
 future==0.18.3
     # via
@@ -144,7 +143,7 @@ importlib-metadata==6.0.0
     #   twine
 importlib-resources==5.10.2
     # via keyring
-isort==5.11.4
+isort==5.12.0
     # via pylint
 jaraco-classes==3.2.3
     # via keyring
@@ -170,7 +169,7 @@ keyring==23.13.1
 lazy==1.5
     # via
     #   -r requirements/base.txt
-    #   xblock-sdk
+    #   xblock
 lazy-object-proxy==1.9.0
     # via astroid
 lxml==4.9.2
@@ -182,7 +181,9 @@ mako==1.2.4
     # via
     #   -r requirements/base.txt
     #   xblock-utils
-markupsafe==2.1.1
+markdown-it-py==2.1.0
+    # via rich
+markupsafe==2.1.2
     # via
     #   -r requirements/base.txt
     #   jinja2
@@ -190,6 +191,8 @@ markupsafe==2.1.1
     #   xblock
 mccabe==0.7.0
     # via pylint
+mdurl==0.1.2
+    # via markdown-it-py
 mock==5.0.1
     # via -r requirements/test.in
 more-itertools==9.0.0
@@ -200,7 +203,9 @@ newrelic==8.5.0
     #   edx-django-utils
 oauthlib==3.2.2
     # via -r requirements/base.txt
-openedx-filters==0.8.0
+openedx-django-pyfs==3.2.1
+    # via xblock
+openedx-filters==1.0.0
     # via -r requirements/base.txt
 pbr==5.11.1
     # via
@@ -220,7 +225,7 @@ pycparser==2.21
     # via
     #   -r requirements/base.txt
     #   cffi
-pycryptodomex==3.16.0
+pycryptodomex==3.17
     # via
     #   -r requirements/base.txt
     #   pyjwkest
@@ -260,7 +265,7 @@ python-dateutil==2.8.2
     #   arrow
     #   botocore
     #   xblock
-python-slugify==7.0.0
+python-slugify==8.0.0
     # via
     #   code-annotations
     #   cookiecutter
@@ -293,7 +298,7 @@ requests-toolbelt==0.10.1
     # via twine
 rfc3986==2.0.0
     # via twine
-rich==13.1.0
+rich==13.3.1
     # via twine
 s3transfer==0.6.0
     # via boto3
@@ -359,16 +364,16 @@ webob==1.8.7
     #   xblock-sdk
 wrapt==1.14.1
     # via astroid
-xblock==1.6.1
+xblock[django]==1.6.2
     # via
     #   -r requirements/base.txt
     #   xblock-sdk
     #   xblock-utils
-xblock-sdk==0.5.1
+xblock-sdk==0.5.4
     # via -r requirements/test.in
 xblock-utils==3.0.0
     # via -r requirements/base.txt
-zipp==3.11.0
+zipp==3.12.0
     # via
     #   importlib-metadata
     #   importlib-resources