diff --git a/Cabal/Cabal.cabal b/Cabal/Cabal.cabal
index b669cf7092bcdc86162f63b0c5002171bce4b36f..9bf2bf1e510624bf92c8fae3a8c8d474d624c74e 100644
--- a/Cabal/Cabal.cabal
+++ b/Cabal/Cabal.cabal
@@ -1,6 +1,6 @@
 cabal-version: 2.2
 name:          Cabal
-version:       3.10.2.0
+version:       3.10.2.1
 copyright:     2003-2023, Cabal Development Team (see AUTHORS file)
 license:       BSD-3-Clause
 license-file:  LICENSE
diff --git a/Cabal/ChangeLog.md b/Cabal/ChangeLog.md
index fd928c4de23c66d14d5ca12d13c360c1836e49a5..53bbfa768f098900e7bb603a8264391982d47834 100644
--- a/Cabal/ChangeLog.md
+++ b/Cabal/ChangeLog.md
@@ -1,3 +1,6 @@
+# 3.10.2.1 [Hécate] (mailto:hecate+github@glitchbra.in) October 2023
+* See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.1.md
+
 # 3.10.2.0 [Hécate](mailto:hecate+github@glitchbra.in) August 2023
 * See https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.0.md
 
diff --git a/Cabal/Makefile b/Cabal/Makefile
index a76edf6206eda27e583b2bc75c5f6c6da649ec5a..7c85b735a4c2c95e5430d172dcafd1703aabc0ae 100644
--- a/Cabal/Makefile
+++ b/Cabal/Makefile
@@ -1,4 +1,4 @@
-VERSION=3.10.2.0
+VERSION=3.10.2.1
 
 #KIND=devel
 KIND=rc
diff --git a/bootstrap/cabal-bootstrap-gen.cabal b/bootstrap/cabal-bootstrap-gen.cabal
index 7fa4c3149a1c4f4aba4ce0c9efe7702d28310f71..df75818beaa16b125f71854da18e3b9ca8ee6ac0 100644
--- a/bootstrap/cabal-bootstrap-gen.cabal
+++ b/bootstrap/cabal-bootstrap-gen.cabal
@@ -11,7 +11,7 @@ executable cabal-bootstrap-gen
     , aeson                  ^>=1.5.2.0  || ^>=2.0.3.0 || ^>=2.1.0.0
     , base                   ^>=4.12.0.0 || ^>=4.13.0.0 || ^>=4.14.0.0 || ^>=4.15.0.0 || ^>=4.16.0.0 || ^>=4.17.0.0
     , bytestring             ^>=0.10.8.2 || ^>=0.11.0.0
-    , Cabal                  ^>=3.2.0.0  || ^>=3.4.1.0  || ^>=3.6.3.0 || ^>=3.8.1.0 || ^>=3.10.2.0
+    , Cabal                  ^>=3.2.0.0  || ^>=3.4.1.0  || ^>=3.6.3.0 || ^>=3.8.1.0 || ^>=3.10.2.1
     , Cabal-syntax           ^>=3.8.1.0 || ^>=3.10.2.0
     , cabal-install-parsers  ^>=0.3.0.1  || ^>=0.4.5 || ^>=0.6
     , cabal-plan             ^>=0.7.0.0
diff --git a/bootstrap/linux-8.10.7.json b/bootstrap/linux-8.10.7.json
index 87d0aeb21a5dfe9b4c6e1588d3ff2036f44126c5..f40dc2263ca3723d275661e63af45f7a0ef0d9f8 100644
--- a/bootstrap/linux-8.10.7.json
+++ b/bootstrap/linux-8.10.7.json
@@ -102,7 +102,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "49d8a7f372d35363011591b253cae4c8db8b9ec594590448e20b7bed7acaee98",
@@ -120,7 +120,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "d50e055f45bd09a8238200ec64ffa0f17492c32cdb5807487894388ce1c2f839",
@@ -403,7 +403,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         }
     ]
 }
diff --git a/bootstrap/linux-9.0.2.json b/bootstrap/linux-9.0.2.json
index 381044d6327cbae95e7c90968b5357b988a150e2..787917300e70cf8bff7d9d570a80cd05bcbf28ea 100644
--- a/bootstrap/linux-9.0.2.json
+++ b/bootstrap/linux-9.0.2.json
@@ -102,7 +102,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "49d8a7f372d35363011591b253cae4c8db8b9ec594590448e20b7bed7acaee98",
@@ -120,7 +120,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "d50e055f45bd09a8238200ec64ffa0f17492c32cdb5807487894388ce1c2f839",
@@ -403,7 +403,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         }
     ]
 }
diff --git a/bootstrap/linux-9.2.8.json b/bootstrap/linux-9.2.8.json
index f9485f85557b596089a2256e1602c835bb9bee37..4b1a641f25cfb06a3811052a7bba8bfb8854e0e6 100644
--- a/bootstrap/linux-9.2.8.json
+++ b/bootstrap/linux-9.2.8.json
@@ -102,7 +102,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "49d8a7f372d35363011591b253cae4c8db8b9ec594590448e20b7bed7acaee98",
@@ -120,7 +120,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "d50e055f45bd09a8238200ec64ffa0f17492c32cdb5807487894388ce1c2f839",
@@ -394,7 +394,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         }
     ]
 }
diff --git a/bootstrap/linux-9.4.5.json b/bootstrap/linux-9.4.5.json
index dc533481ea93cd2865dc94a220ad4cc35730bd16..0302f82e5b68a20bf460f32759c6ee0937f7d16d 100644
--- a/bootstrap/linux-9.4.5.json
+++ b/bootstrap/linux-9.4.5.json
@@ -101,7 +101,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": null,
@@ -110,7 +110,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         },
         {
             "cabal_sha256": "d50e055f45bd09a8238200ec64ffa0f17492c32cdb5807487894388ce1c2f839",
@@ -375,7 +375,7 @@
             "revision": null,
             "source": "local",
             "src_sha256": null,
-            "version": "3.10.2.0"
+            "version": "3.10.2.1"
         }
     ]
 }
diff --git a/cabal-testsuite/cabal-testsuite.cabal b/cabal-testsuite/cabal-testsuite.cabal
index ce93b72d7c9bd15c4f3e9bc5a3f9836ae1c93a0b..98eb82a8d8af97f5dfe547b95d073ea27025df63 100644
--- a/cabal-testsuite/cabal-testsuite.cabal
+++ b/cabal-testsuite/cabal-testsuite.cabal
@@ -28,7 +28,7 @@ common shared
   build-depends:
     , base >= 4.9 && <4.19
     -- this needs to match the in-tree lib:Cabal version
-    , Cabal ^>= 3.10.2.0
+    , Cabal ^>= 3.10.2.1
     , Cabal-syntax ^>= 3.10.2.0
 
   ghc-options: -Wall -fwarn-tabs -fwarn-incomplete-uni-patterns
@@ -115,6 +115,6 @@ custom-setup
   -- and due to Custom complexity and ConstraintSetupCabalMaxVersion
   -- it has to be the latest release version plus
   -- you have to use the latest cabal-install release
-  setup-depends: Cabal == 3.10.2.0,
+  setup-depends: Cabal == 3.10.2.1,
                  Cabal-syntax == 3.10.2.0,
                  base, filepath, directory
diff --git a/doc/conf.py b/doc/conf.py
index 2fc7bfe269413472fafd634a8ce70d1f1f2f36b7..4d4161ed809fa4e70d952aa9df9724a22c9615d6 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -13,7 +13,7 @@ import sphinx_rtd_theme
 sys.path.insert(0, os.path.abspath('.'))
 import cabaldomain
 
-version = "3.10.2.0"
+version = "3.10.2.1"
 
 extensions = [
     'sphinx.ext.extlinks',
diff --git a/release-notes/Cabal-3.10.2.1.md b/release-notes/Cabal-3.10.2.1.md
new file mode 100644
index 0000000000000000000000000000000000000000..1615b3fcfe1bf0ef7d771f86818a96a6e6864e8c
--- /dev/null
+++ b/release-notes/Cabal-3.10.2.1.md
@@ -0,0 +1,9 @@
+Cabal and Cabal-syntax 3.10.2.1 changelog and release notes
+---
+
+## Release 3.10.2.0 is strictly a bug-fix release, with the fixes listed below
+
+- Relax extension .c requirement for c-sources [#9285](https://github.com/haskell/cabal/pull/9285)
+
+We will be tightening the behaviour of Cabal in the future, when users list files ending with extensions other than `.c` in the `c-sources` field of their cabal file. These files were never processed properly.
+This PR displays more warnings and prepares the transition.