diff --git a/Cargo.lock b/Cargo.lock
index 4a9f0c2d51ff0d93de08d0f0054af32252b6ebae..f5d57bb50be324b11663349f8ab99136985c8093 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -333,16 +333,16 @@ dependencies = [
 
 [[package]]
 name = "aquamarine"
-version = "0.3.2"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df752953c49ce90719c7bf1fc587bc8227aed04732ea0c0f85e5397d7fdbd1a1"
+checksum = "074b80d14d0240b6ce94d68f059a2d26a5d77280ae142662365a21ef6e2594ef"
 dependencies = [
  "include_dir",
  "itertools 0.10.5",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.48",
 ]
 
 [[package]]
diff --git a/substrate/frame/bags-list/Cargo.toml b/substrate/frame/bags-list/Cargo.toml
index 198af21be81a50e83fe89bc22afbaa0722d83783..7fab47a20e1f4aab011e25ae00c437d67fc84a15 100644
--- a/substrate/frame/bags-list/Cargo.toml
+++ b/substrate/frame/bags-list/Cargo.toml
@@ -35,7 +35,7 @@ frame-election-provider-support = { path = "../election-provider-support", defau
 # third party
 log = { version = "0.4.17", default-features = false }
 docify = "0.2.6"
-aquamarine = { version = "0.3.2" }
+aquamarine = { version = "0.4.0" }
 
 # Optional imports for benchmarking
 frame-benchmarking = { path = "../benchmarking", default-features = false, optional = true }
diff --git a/substrate/frame/support/Cargo.toml b/substrate/frame/support/Cargo.toml
index 5c0c4091468b2730b52eeef94eb59146fe4b88e2..32dcec727cc2bb8abb71a14a76b39521c652b209 100644
--- a/substrate/frame/support/Cargo.toml
+++ b/substrate/frame/support/Cargo.toml
@@ -50,7 +50,7 @@ serde_json = { version = "1.0.111", default-features = false, features = ["alloc
 docify = "0.2.6"
 static_assertions = "1.1.0"
 
-aquamarine = { version = "0.3.2" }
+aquamarine = { version = "0.4.0" }
 
 [dev-dependencies]
 assert_matches = "1.3.0"