diff --git a/hphp/hack/src/Cargo.lock b/hphp/hack/src/Cargo.lock
index 0aba1baeb2b41..285587bf9fd13 100644
--- a/hphp/hack/src/Cargo.lock
+++ b/hphp/hack/src/Cargo.lock
@@ -318,7 +318,7 @@ checksum = "461abc97219de0eaaf81fe3ef974a540158f3d079c2ab200f891f1a2ef201e85"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -534,7 +534,7 @@ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -633,9 +633,9 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.31"
+version = "0.4.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -643,7 +643,7 @@ dependencies = [
  "num-traits",
  "serde",
  "wasm-bindgen",
- "windows-targets 0.48.0",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -724,7 +724,7 @@ dependencies = [
  "heck 0.5.0",
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -892,7 +892,7 @@ dependencies = [
  "env",
  "hhbc",
  "hhbc_string_utils",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "itertools 0.11.0",
  "naming_special_names_rust",
  "oxidized",
@@ -1155,7 +1155,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1170,7 +1170,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1587,7 +1587,7 @@ dependencies = [
  "hhbc",
  "hhbc_string_utils",
  "hhvm_types_ffi",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "instruction_sequence",
  "itertools 0.11.0",
  "label_rewriter",
@@ -1630,7 +1630,7 @@ checksum = "eecf8589574ce9b895052fa12d69af7a233f99e6107f5cb8dd1044f2a17bfdcb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1643,7 +1643,7 @@ dependencies = [
  "global_state",
  "hhbc",
  "hhbc_string_utils",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "instruction_sequence",
  "naming_special_names_rust",
  "options",
@@ -1684,7 +1684,7 @@ dependencies = [
  "bstr",
  "eq_modulo_pos_derive",
  "hcons",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "ocamlrep_caml_builtins",
 ]
 
@@ -1895,7 +1895,7 @@ dependencies = [
  "decl_enforceability",
  "eq_modulo_pos",
  "hash",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "itertools 0.11.0",
  "oxidized",
  "pos",
@@ -1933,7 +1933,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2159,7 +2159,7 @@ name = "hash"
 version = "0.0.0"
 dependencies = [
  "dashmap",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "rustc-hash",
 ]
 
@@ -2573,9 +2573,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.1.0"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "arbitrary",
  "equivalent",
@@ -2625,7 +2625,7 @@ dependencies = [
  "bincode",
  "fnv",
  "hashbrown 0.14.3",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "once_cell",
  "parking_lot",
  "rand",
@@ -2668,7 +2668,7 @@ dependencies = [
  "hash",
  "hhbc",
  "hhvm_types_ffi",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "intern",
  "macros",
  "maplit",
@@ -3015,10 +3015,11 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
 
 [[package]]
 name = "md-5"
-version = "0.10.1"
+version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658646b21e0b72f7866c7038ab086d3d5e1cd6271f060fd37defb241949d0582"
+checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
 dependencies = [
+ "cfg-if 1.0.0",
  "digest",
 ]
 
@@ -3042,9 +3043,9 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.6.3"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memmap2"
@@ -3304,9 +3305,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.16"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
 ]
@@ -3357,7 +3358,7 @@ version = "0.1.0"
 dependencies = [
  "bstr",
  "bumpalo",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "ocamlrep_derive",
  "rustc-hash",
  "serde",
@@ -3730,7 +3731,7 @@ dependencies = [
  "eq_modulo_pos",
  "hh24_types",
  "im",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "intern",
  "ocamlrep",
  "oxidized",
@@ -3898,9 +3899,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.76"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
@@ -4014,9 +4015,9 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.8.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -4024,9 +4025,9 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.12.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
  "crossbeam-deque",
  "crossbeam-utils 0.8.14",
@@ -4078,13 +4079,13 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.4.3",
+ "regex-automata 0.4.6",
  "regex-syntax",
 ]
 
@@ -4096,9 +4097,9 @@ checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795"
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -4449,9 +4450,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.195"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02"
+checksum = "0c9f6e76df036c77cd94996771fb40db98187f096dd0b9af39c6c6e452ba966a"
 dependencies = [
  "serde_derive",
 ]
@@ -4467,13 +4468,13 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.195"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c"
+checksum = "11bd257a6541e141e42ca6d24ae26f7714887b47e89aa739099104c7e4d3b7fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -4487,9 +4488,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
  "itoa",
  "ryu",
@@ -4696,9 +4697,9 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 dependencies = [
  "serde",
 ]
@@ -4905,9 +4906,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.48"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5084,7 +5085,7 @@ checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5189,7 +5190,7 @@ version = "0.20.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "782bf6c2ddf761c1e7855405e8975472acf76f7f36d0d4328bd3b7a2fae12a85"
 dependencies = [
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
@@ -5216,7 +5217,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5305,9 +5306,9 @@ checksum = "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73"
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
@@ -5357,9 +5358,9 @@ dependencies = [
 
 [[package]]
 name = "uuid"
-version = "1.6.1"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 dependencies = [
  "getrandom",
 ]
@@ -5500,7 +5501,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
  "wasm-bindgen-shared",
 ]
 
@@ -5522,7 +5523,7 @@ checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -5821,7 +5822,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.60",
 ]
 
 [[package]]
diff --git a/hphp/hack/src/client/ide_service/cargo/rust_batch_index_ffi/Cargo.toml b/hphp/hack/src/client/ide_service/cargo/rust_batch_index_ffi/Cargo.toml
index 8f0325f654dba..ebe1f7b055260 100644
--- a/hphp/hack/src/client/ide_service/cargo/rust_batch_index_ffi/Cargo.toml
+++ b/hphp/hack/src/client/ide_service/cargo/rust_batch_index_ffi/Cargo.toml
@@ -22,7 +22,7 @@ ocamlrep_caml_builtins = { version = "0.1.0", git = "https://github.com/facebook
 ocamlrep_ocamlpool = { version = "0.1.0", git = "https://github.com/facebook/ocamlrep/", branch = "main" }
 oxidized = { version = "0.0.0", path = "../../../../oxidized" }
 oxidized_by_ref = { version = "0.0.0", path = "../../../../oxidized_by_ref" }
-rayon = "1.2"
+rayon = "1.9.0"
 relative_path = { version = "0.0.0", path = "../../../../utils/rust/relative_path" }
 si_addendum = { version = "0.0.0", path = "../../../../utils/cargo/si_addendum" }
 unwrap_ocaml = { version = "0.0.0", path = "../../../../utils/unwrap_ocaml" }
diff --git a/hphp/hack/src/decl/cargo/rust_decl_ffi/Cargo.toml b/hphp/hack/src/decl/cargo/rust_decl_ffi/Cargo.toml
index 48eff2109c7c1..1436cf15b33c3 100644
--- a/hphp/hack/src/decl/cargo/rust_decl_ffi/Cargo.toml
+++ b/hphp/hack/src/decl/cargo/rust_decl_ffi/Cargo.toml
@@ -26,5 +26,5 @@ ocamlrep_ocamlpool = { version = "0.1.0", git = "https://github.com/facebook/oca
 oxidized = { version = "0.0.0", path = "../../../oxidized" }
 oxidized_by_ref = { version = "0.0.0", path = "../../../oxidized_by_ref" }
 parser_core_types = { version = "0.0.0", path = "../../../parser/cargo/core_types" }
-rayon = "1.2"
+rayon = "1.9.0"
 relative_path = { version = "0.0.0", path = "../../../utils/rust/relative_path" }
diff --git a/hphp/hack/src/depgraph/balanced_partition/cargo/balanced_partition/Cargo.toml b/hphp/hack/src/depgraph/balanced_partition/cargo/balanced_partition/Cargo.toml
index b275c998b3020..c94abb16bf2c6 100644
--- a/hphp/hack/src/depgraph/balanced_partition/cargo/balanced_partition/Cargo.toml
+++ b/hphp/hack/src/depgraph/balanced_partition/cargo/balanced_partition/Cargo.toml
@@ -14,4 +14,4 @@ crate-type = ["lib", "staticlib"]
 [dependencies]
 itertools = "0.11.0"
 log = { version = "0.4.17", features = ["kv_unstable", "kv_unstable_std"] }
-rayon = "1.2"
+rayon = "1.9.0"
diff --git a/hphp/hack/src/depgraph/cargo/depgraph_reader/Cargo.toml b/hphp/hack/src/depgraph/cargo/depgraph_reader/Cargo.toml
index 628b668f7507d..e1fab6aeeecc5 100644
--- a/hphp/hack/src/depgraph/cargo/depgraph_reader/Cargo.toml
+++ b/hphp/hack/src/depgraph/cargo/depgraph_reader/Cargo.toml
@@ -15,6 +15,6 @@ crate-type = ["lib", "staticlib"]
 bytemuck = { version = "1.14", features = ["derive", "min_const_generics"] }
 dep = { version = "0.0.0", path = "../dep" }
 memmap2 = "0.5.10"
-rayon = "1.2"
+rayon = "1.9.0"
 static_assertions = "1.1.0"
 vint64 = "1.0.1"
diff --git a/hphp/hack/src/depgraph/depgraph_compress/cargo/depgraph_compress/Cargo.toml b/hphp/hack/src/depgraph/depgraph_compress/cargo/depgraph_compress/Cargo.toml
index 810974784c204..bd72cff588672 100644
--- a/hphp/hack/src/depgraph/depgraph_compress/cargo/depgraph_compress/Cargo.toml
+++ b/hphp/hack/src/depgraph/depgraph_compress/cargo/depgraph_compress/Cargo.toml
@@ -19,7 +19,7 @@ depgraph_writer = { version = "0.0.0", path = "../../../cargo/depgraph_writer" }
 hash = { version = "0.0.0", path = "../../../../utils/hash" }
 log = { version = "0.4.17", features = ["kv_unstable", "kv_unstable_std"] }
 newtype = { version = "0.0.0", path = "../../../../utils/newtype" }
-rayon = "1.2"
+rayon = "1.9.0"
 smallvec = { version = "1.6.1", features = ["serde", "specialization", "union"] }
 vint64 = "1.0.1"
 zstd = { version = "0.13", features = ["experimental", "zstdmt"] }
diff --git a/hphp/hack/src/depgraph/depgraph_decompress/decompress/Cargo.toml b/hphp/hack/src/depgraph/depgraph_decompress/decompress/Cargo.toml
index 0b6213cf990e5..e1a10e6abef14 100644
--- a/hphp/hack/src/depgraph/depgraph_decompress/decompress/Cargo.toml
+++ b/hphp/hack/src/depgraph/depgraph_decompress/decompress/Cargo.toml
@@ -14,6 +14,6 @@ path = "lib.rs"
 bytemuck = { version = "1.14", features = ["derive", "min_const_generics"] }
 depgraph_reader = { version = "0.0.0", path = "../../cargo/depgraph_reader" }
 memmap2 = "0.5.10"
-rayon = "1.2"
+rayon = "1.9.0"
 vint64 = "1.0.1"
 zstd = { version = "0.13", features = ["experimental", "zstdmt"] }
diff --git a/hphp/hack/src/depgraph/hhdg/cargo/hhdg/Cargo.toml b/hphp/hack/src/depgraph/hhdg/cargo/hhdg/Cargo.toml
index 081c615f31d47..f3fb41ec6f17b 100644
--- a/hphp/hack/src/depgraph/hhdg/cargo/hhdg/Cargo.toml
+++ b/hphp/hack/src/depgraph/hhdg/cargo/hhdg/Cargo.toml
@@ -17,4 +17,4 @@ clap = { version = "3.2.25", features = ["derive", "env", "regex", "unicode", "w
 depgraph_reader = { version = "0.0.0", path = "../../../cargo/depgraph_reader" }
 hash = { version = "0.0.0", path = "../../../../utils/hash" }
 human_readable_dep_map = { version = "0.0.0", path = "../../../cargo/human_readable_dep_map" }
-rayon = "1.2"
+rayon = "1.9.0"
diff --git a/hphp/hack/src/hackc/Cargo.toml b/hphp/hack/src/hackc/Cargo.toml
index 586efa0809a1f..f40e5906bae04 100644
--- a/hphp/hack/src/hackc/Cargo.toml
+++ b/hphp/hack/src/hackc/Cargo.toml
@@ -54,7 +54,7 @@ positioned_by_ref_parser = { version = "0.0.0", path = "../parser/api/cargo/posi
 positioned_full_trivia_parser = { version = "0.0.0", path = "../parser/api/cargo/positioned_full_trivia_parser" }
 positioned_parser = { version = "0.0.0", path = "../parser/api/cargo/positioned_parser" }
 profile_rust = { version = "0.0.0", path = "../utils/perf/cargo/profile" }
-rayon = "1.2"
+rayon = "1.9.0"
 regex = "1.9.2"
 relative_path = { version = "0.0.0", path = "../utils/rust/relative_path" }
 sem_diff = { version = "0.0.0", path = "sem_diff" }
diff --git a/hphp/hack/src/hackc/emitter/cargo/constant_folder/Cargo.toml b/hphp/hack/src/hackc/emitter/cargo/constant_folder/Cargo.toml
index 495734352aba4..342aaa06e644a 100644
--- a/hphp/hack/src/hackc/emitter/cargo/constant_folder/Cargo.toml
+++ b/hphp/hack/src/hackc/emitter/cargo/constant_folder/Cargo.toml
@@ -15,7 +15,7 @@ ast_scope = { version = "0.0.0", path = "../ast_scope" }
 env = { version = "0.0.0", path = "../env" }
 hhbc = { version = "0.0.0", path = "../../../hhbc/cargo/hhbc" }
 hhbc_string_utils = { version = "0.0.0", path = "../../../utils/cargo/hhbc_string_utils" }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 itertools = "0.11.0"
 naming_special_names_rust = { version = "0.0.0", path = "../../../../naming" }
 oxidized = { version = "0.0.0", path = "../../../../oxidized" }
diff --git a/hphp/hack/src/hackc/emitter/cargo/emit_unit/Cargo.toml b/hphp/hack/src/hackc/emitter/cargo/emit_unit/Cargo.toml
index 6afc86b42cd4e..1dea1e6f1cda0 100644
--- a/hphp/hack/src/hackc/emitter/cargo/emit_unit/Cargo.toml
+++ b/hphp/hack/src/hackc/emitter/cargo/emit_unit/Cargo.toml
@@ -30,7 +30,7 @@ hash = { version = "0.0.0", path = "../../../../utils/hash" }
 hhbc = { version = "0.0.0", path = "../../../hhbc/cargo/hhbc" }
 hhbc_string_utils = { version = "0.0.0", path = "../../../utils/cargo/hhbc_string_utils" }
 hhvm_types_ffi = { version = "0.0.0", path = "../../../hhvm_cxx/hhvm_types" }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 instruction_sequence = { version = "0.0.0", path = "../instruction_sequence" }
 itertools = "0.11.0"
 label_rewriter = { version = "0.0.0", path = "../label_rewriter" }
diff --git a/hphp/hack/src/hackc/emitter/cargo/env/Cargo.toml b/hphp/hack/src/hackc/emitter/cargo/env/Cargo.toml
index 95dda40eff584..6db3f81e4141d 100644
--- a/hphp/hack/src/hackc/emitter/cargo/env/Cargo.toml
+++ b/hphp/hack/src/hackc/emitter/cargo/env/Cargo.toml
@@ -17,7 +17,7 @@ decl_provider = { version = "0.0.0", path = "../../../decl_provider" }
 global_state = { version = "0.0.0", path = "../global_state" }
 hhbc = { version = "0.0.0", path = "../../../hhbc/cargo/hhbc" }
 hhbc_string_utils = { version = "0.0.0", path = "../../../utils/cargo/hhbc_string_utils" }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 instruction_sequence = { version = "0.0.0", path = "../instruction_sequence" }
 naming_special_names_rust = { version = "0.0.0", path = "../../../../naming" }
 options = { version = "0.0.0", path = "../../../compile/cargo/options" }
diff --git a/hphp/hack/src/hackc/ir/ir_core/Cargo.toml b/hphp/hack/src/hackc/ir/ir_core/Cargo.toml
index 9e58681313b2b..ea58a23279523 100644
--- a/hphp/hack/src/hackc/ir/ir_core/Cargo.toml
+++ b/hphp/hack/src/hackc/ir/ir_core/Cargo.toml
@@ -15,7 +15,7 @@ ffi = { version = "0.0.0", path = "../../ffi/ffi" }
 hash = { version = "0.0.0", path = "../../../utils/hash" }
 hhbc = { version = "0.0.0", path = "../../hhbc/cargo/hhbc" }
 hhvm_types_ffi = { version = "0.0.0", path = "../../hhvm_cxx/hhvm_types" }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 intern = { version = "0.1.0", path = "../../../utils/intern" }
 macros = { version = "0.0.0", path = "../macros" }
 maplit = "1.0"
diff --git a/hphp/hack/src/hackrs/cargo/decl_folded_class_ffi/Cargo.toml b/hphp/hack/src/hackrs/cargo/decl_folded_class_ffi/Cargo.toml
index a80600e4ba111..91667530e3ae0 100644
--- a/hphp/hack/src/hackrs/cargo/decl_folded_class_ffi/Cargo.toml
+++ b/hphp/hack/src/hackrs/cargo/decl_folded_class_ffi/Cargo.toml
@@ -28,7 +28,7 @@ ocamlrep_ocamlpool = { version = "0.1.0", git = "https://github.com/facebook/oca
 oxidized = { version = "0.0.0", path = "../../../oxidized" }
 oxidized_by_ref = { version = "0.0.0", path = "../../../oxidized_by_ref" }
 pos = { version = "0.0.0", path = "../../pos/cargo/pos" }
-rayon = "1.2"
+rayon = "1.9.0"
 relative_path = { version = "0.0.0", path = "../../../utils/rust/relative_path" }
 tempfile = "3.8"
 ty = { version = "0.0.0", path = "../../ty/cargo/ty" }
diff --git a/hphp/hack/src/hackrs/cargo/decl_repo_rust/Cargo.toml b/hphp/hack/src/hackrs/cargo/decl_repo_rust/Cargo.toml
index 88a1c19dada5b..0e09668dd26a7 100644
--- a/hphp/hack/src/hackrs/cargo/decl_repo_rust/Cargo.toml
+++ b/hphp/hack/src/hackrs/cargo/decl_repo_rust/Cargo.toml
@@ -25,7 +25,7 @@ jwalk = "0.6"
 oxidized = { version = "0.0.0", path = "../../../oxidized" }
 pos = { version = "0.0.0", path = "../../pos/cargo/pos" }
 procfs = "0.15.1"
-rayon = "1.2"
+rayon = "1.9.0"
 rusqlite = { version = "0.29.0", features = ["backup", "blob", "column_decltype", "limits"] }
 serde = { version = "1.0.185", features = ["derive", "rc"] }
 serde_json = { version = "1.0.100", features = ["float_roundtrip", "unbounded_depth"] }
diff --git a/hphp/hack/src/hackrs/folded_decl_provider/cargo/folded_decl_provider/Cargo.toml b/hphp/hack/src/hackrs/folded_decl_provider/cargo/folded_decl_provider/Cargo.toml
index 3bd3c6f756069..f5228ea7cbf6b 100644
--- a/hphp/hack/src/hackrs/folded_decl_provider/cargo/folded_decl_provider/Cargo.toml
+++ b/hphp/hack/src/hackrs/folded_decl_provider/cargo/folded_decl_provider/Cargo.toml
@@ -16,7 +16,7 @@ datastore = { version = "0.0.0", path = "../../../datastore" }
 decl_enforceability = { version = "0.0.0", path = "../../../decl_enforceability" }
 eq_modulo_pos = { version = "0.0.0", path = "../../../../utils/eq_modulo_pos" }
 hash = { version = "0.0.0", path = "../../../../utils/hash" }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 itertools = "0.11.0"
 oxidized = { version = "0.0.0", path = "../../../../oxidized" }
 pos = { version = "0.0.0", path = "../../../pos/cargo/pos" }
diff --git a/hphp/hack/src/hackrs/folded_decl_provider/provider.rs b/hphp/hack/src/hackrs/folded_decl_provider/provider.rs
index 43d37c38610ff..8ab41ddf759c6 100644
--- a/hphp/hack/src/hackrs/folded_decl_provider/provider.rs
+++ b/hphp/hack/src/hackrs/folded_decl_provider/provider.rs
@@ -175,7 +175,7 @@ impl<R: Reason> LazyFoldedDeclProvider<R> {
         };
         stack.insert(name);
         let parents = self.decl_class_parents(stack, &mut errors, &shallow_class)?;
-        stack.remove(&name);
+        stack.swap_remove(&name);
         Ok(Some(DeclFolder::decl_class(
             &self.opts,
             &shallow_class,
diff --git a/hphp/hack/src/hackrs/folded_decl_provider/subst.rs b/hphp/hack/src/hackrs/folded_decl_provider/subst.rs
index aa99f56b25f72..1011b05033527 100644
--- a/hphp/hack/src/hackrs/folded_decl_provider/subst.rs
+++ b/hphp/hack/src/hackrs/folded_decl_provider/subst.rs
@@ -141,7 +141,7 @@ impl<'a, R: Reason> Substitution<'a, R> {
                 let outer_subst = self;
                 let mut subst = self.subst.clone();
                 for tp in tparams.iter() {
-                    subst.0.remove(tp.name.id_ref());
+                    subst.0.swap_remove(tp.name.id_ref());
                 }
                 let subst = Substitution { subst: &subst };
                 let params = ft
diff --git a/hphp/hack/src/hackrs/hackrs_test_utils/cargo/hackrs_test_utils/Cargo.toml b/hphp/hack/src/hackrs/hackrs_test_utils/cargo/hackrs_test_utils/Cargo.toml
index 21defa53ea617..6d963b538eafe 100644
--- a/hphp/hack/src/hackrs/hackrs_test_utils/cargo/hackrs_test_utils/Cargo.toml
+++ b/hphp/hack/src/hackrs/hackrs_test_utils/cargo/hackrs_test_utils/Cargo.toml
@@ -24,7 +24,7 @@ moka = { version = "0.12.5", features = ["future", "sync"] }
 naming_provider = { version = "0.0.0", path = "../../../naming_provider/cargo/naming_provider" }
 oxidized = { version = "0.0.0", path = "../../../../oxidized" }
 pos = { version = "0.0.0", path = "../../../pos/cargo/pos" }
-rayon = "1.2"
+rayon = "1.9.0"
 serde = { version = "1.0.185", features = ["derive", "rc"] }
 shallow_decl_provider = { version = "0.0.0", path = "../../../shallow_decl_provider/cargo/shallow_decl_provider" }
 ty = { version = "0.0.0", path = "../../../ty/cargo/ty" }
diff --git a/hphp/hack/src/hackrs/pos/cargo/pos/Cargo.toml b/hphp/hack/src/hackrs/pos/cargo/pos/Cargo.toml
index d4738f52f0dcb..d9cea2975b180 100644
--- a/hphp/hack/src/hackrs/pos/cargo/pos/Cargo.toml
+++ b/hphp/hack/src/hackrs/pos/cargo/pos/Cargo.toml
@@ -17,7 +17,7 @@ bumpalo = { version = "3.14.0", features = ["allocator_api", "collections"] }
 eq_modulo_pos = { version = "0.0.0", path = "../../../../utils/eq_modulo_pos" }
 hh24_types = { version = "0.0.0", path = "../../../../utils/hh24_types" }
 im = { version = "15.1", features = ["rayon", "serde"] }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 intern = { version = "0.1.0", path = "../../../../utils/intern" }
 ocamlrep = { version = "0.1.0", git = "https://github.com/facebook/ocamlrep/", branch = "main" }
 oxidized = { version = "0.0.0", path = "../../../../oxidized" }
diff --git a/hphp/hack/src/hh_fanout/cargo/hh_fanout_build/Cargo.toml b/hphp/hack/src/hh_fanout/cargo/hh_fanout_build/Cargo.toml
index d1460dd8a084b..828b6810154c7 100644
--- a/hphp/hack/src/hh_fanout/cargo/hh_fanout_build/Cargo.toml
+++ b/hphp/hack/src/hh_fanout/cargo/hh_fanout_build/Cargo.toml
@@ -24,5 +24,5 @@ log = { version = "0.4.17", features = ["kv_unstable", "kv_unstable_std"] }
 memmap2 = "0.5.10"
 newtype = { version = "0.0.0", path = "../../../utils/newtype" }
 parking_lot = { version = "0.12.1", features = ["send_guard"] }
-rayon = "1.2"
+rayon = "1.9.0"
 smallvec = { version = "1.6.1", features = ["serde", "specialization", "union"] }
diff --git a/hphp/hack/src/hh_naming_table_builder/Cargo.toml b/hphp/hack/src/hh_naming_table_builder/Cargo.toml
index 9d51a44bd4c54..323c1b0e2b0ec 100644
--- a/hphp/hack/src/hh_naming_table_builder/Cargo.toml
+++ b/hphp/hack/src/hh_naming_table_builder/Cargo.toml
@@ -27,7 +27,7 @@ hhi = { version = "0.0.0", path = "../hhi/rust" }
 names = { version = "0.0.0", path = "../naming/names_rust" }
 oxidized = { version = "0.0.0", path = "../oxidized" }
 oxidized_by_ref = { version = "0.0.0", path = "../oxidized_by_ref" }
-rayon = "1.2"
+rayon = "1.9.0"
 relative_path = { version = "0.0.0", path = "../utils/rust/relative_path" }
 si_addendum = { version = "0.0.0", path = "../utils/cargo/si_addendum" }
 slog = { version = "2.7", features = ["max_level_trace", "nested-values"] }
diff --git a/hphp/hack/src/package/types.rs b/hphp/hack/src/package/types.rs
index 71c21c8215f2e..70f732ff3504f 100644
--- a/hphp/hack/src/package/types.rs
+++ b/hphp/hack/src/package/types.rs
@@ -73,6 +73,6 @@ impl Iterator for NameSet {
 }
 impl NameSet {
     pub fn take(&mut self, value: &Spanned<String>) -> Option<Spanned<String>> {
-        self.0.take(value)
+        self.0.swap_take(value)
     }
 }
diff --git a/hphp/hack/src/rust_to_ocaml/rust_to_ocaml/Cargo.toml b/hphp/hack/src/rust_to_ocaml/rust_to_ocaml/Cargo.toml
index 42db29b333ca9..677fc0c6b7e3b 100644
--- a/hphp/hack/src/rust_to_ocaml/rust_to_ocaml/Cargo.toml
+++ b/hphp/hack/src/rust_to_ocaml/rust_to_ocaml/Cargo.toml
@@ -17,7 +17,7 @@ attr_parser = { version = "0.0.0", path = "../attr_parser" }
 clap = { version = "3.2.25", features = ["derive", "env", "regex", "unicode", "wrap_help"] }
 convert_case = "0.4.0"
 derive_more = "0.99.17"
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 serde = { version = "1.0.185", features = ["derive", "rc"] }
 signed_source = { version = "0.0.0", path = "../../utils/rust/signed_source" }
 syn = { version = "1.0.109", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] }
diff --git a/hphp/hack/src/utils/eq_modulo_pos/Cargo.toml b/hphp/hack/src/utils/eq_modulo_pos/Cargo.toml
index 191268eb7de50..0e7204eb561b7 100644
--- a/hphp/hack/src/utils/eq_modulo_pos/Cargo.toml
+++ b/hphp/hack/src/utils/eq_modulo_pos/Cargo.toml
@@ -15,5 +15,5 @@ arena_collections = { version = "0.0.0", path = "../../arena_collections" }
 bstr = { version = "1.4.0", features = ["serde", "std", "unicode"] }
 eq_modulo_pos_derive = { version = "0.0.0", path = "../eq_modulo_pos_derive" }
 hcons = { version = "0.0.0", path = "../../hcons" }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 ocamlrep_caml_builtins = { version = "0.1.0", git = "https://github.com/facebook/ocamlrep/", branch = "main" }
diff --git a/hphp/hack/src/utils/hash/Cargo.toml b/hphp/hack/src/utils/hash/Cargo.toml
index afbcd8c151b66..a0cf11601a30a 100644
--- a/hphp/hack/src/utils/hash/Cargo.toml
+++ b/hphp/hack/src/utils/hash/Cargo.toml
@@ -12,5 +12,5 @@ path = "lib.rs"
 
 [dependencies]
 dashmap = { version = "5.5.3", features = ["rayon", "serde"] }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 rustc-hash = "1.1.0"
diff --git a/hphp/hack/src/utils/intern/Cargo.toml b/hphp/hack/src/utils/intern/Cargo.toml
index fe49874fe99c5..e04dc0cff1d36 100644
--- a/hphp/hack/src/utils/intern/Cargo.toml
+++ b/hphp/hack/src/utils/intern/Cargo.toml
@@ -11,7 +11,7 @@ license = "MIT"
 [dependencies]
 fnv = "1.0"
 hashbrown = { version = "0.14.3", features = ["raw", "serde"] }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 once_cell = "1.12"
 parking_lot = { version = "0.12.1", features = ["send_guard"] }
 serde = { version = "1.0.185", features = ["derive", "rc"] }
diff --git a/third-party/thrift/src/thrift/lib/rust/Cargo.toml b/third-party/thrift/src/thrift/lib/rust/Cargo.toml
index 8c086867886e3..dcf3c7bdb98cb 100644
--- a/third-party/thrift/src/thrift/lib/rust/Cargo.toml
+++ b/third-party/thrift/src/thrift/lib/rust/Cargo.toml
@@ -18,7 +18,7 @@ bytes = { version = "1.6.0", features = ["serde"] }
 futures = { version = "0.3.30", features = ["async-await", "compat"] }
 ghost = "0.1.17"
 num-derive = "0.3.3"
-num-traits = "0.2"
+num-traits = "0.2.18"
 ordered-float = { version = "3.7", features = ["serde"] }
 panic-message = "0.3"
 serde_json = { version = "1.0.100", features = ["float_roundtrip", "unbounded_depth"] }
diff --git a/third-party/thrift/src/thrift/lib/rust/deterministic_hash/src/tests/Cargo.toml b/third-party/thrift/src/thrift/lib/rust/deterministic_hash/src/tests/Cargo.toml
index 5d83808f05610..2f265e25d3d81 100644
--- a/third-party/thrift/src/thrift/lib/rust/deterministic_hash/src/tests/Cargo.toml
+++ b/third-party/thrift/src/thrift/lib/rust/deterministic_hash/src/tests/Cargo.toml
@@ -28,7 +28,7 @@ anyhow = "1.0.75"
 codegen_includer_proc_macro = { version = "0.1.0", git = "https://github.com/facebookexperimental/rust-shed.git", branch = "main" }
 fbthrift = { version = "0.0.1+unstable", path = "../../.." }
 futures = { version = "0.3.30", features = ["async-await", "compat"] }
-indexmap = { version = "2.1.0", features = ["arbitrary", "rayon", "serde"] }
+indexmap = { version = "2.2.6", features = ["arbitrary", "rayon", "serde"] }
 once_cell = "1.12"
 ref-cast = "1.0.18"
 serde = { version = "1.0.185", features = ["derive", "rc"] }