Repository: yamafaktory/hypergraph (language: rust)

Issue:
bump ahash crate to fix build
currently, cargo build generates the following error due to the removal of stdsim: https://github.com/rust-lang/rust/pull/117372

```bash
error[E0635]: unknown feature stdsimd
--> /home/cmichaud/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.8.3/src/lib.rs:99:42
|
99 | #![cfg_attr(feature = "stdsimd", feature(stdsimd))]
```

Also fixed two errors reported by clippy and ran `cargo fmt` that updated around 40 files.


Discussion / hints:
the workflow is green in my fork after those changes.

Fix patch:
diff --git a/Cargo.lock b/Cargo.lock
index 3f5c76d..3ac2620 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -4,14 +4,24 @@ version = 3
 
 [[package]]
 name = "ahash"
-version = "0.8.3"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
  "getrandom",
  "once_cell",
  "version_check",
+ "zerocopy",
+]
+
+[[package]]
+name = "aho-corasick"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
+dependencies = [
+ "memchr",
 ]
 
 [[package]]
@@ -22,27 +32,21 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
 
 [[package]]
 name = "anstyle"
-version = "1.0.2"
+version = "1.0.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea"
+checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9"
 
 [[package]]
 name = "autocfg"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
-
-[[package]]
-name = "bitflags"
-version = "2.4.0"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
 
 [[package]]
 name = "bumpalo"
-version = "3.9.1"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "cast"
@@ -50,15 +54,6 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
 
-[[package]]
-name = "cc"
-version = "1.0.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc",
-]
-
 [[package]]
 name = "cfg-if"
 version = "1.0.0"
@@ -67,9 +62,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "ciborium"
-version = "0.2.0"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0c137568cc60b904a7724001b35ce2630fd00d5d84805fbb608ab89509d788f"
+checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"
 dependencies = [
  "ciborium-io",
  "ciborium-ll",
@@ -78,15 +73,15 @@ dependencies = [
 
 [[package]]
 name = "ciborium-io"
-version = "0.2.0"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "346de753af073cc87b52b2083a506b38ac176a44cfb05497b622e27be899b369"
+checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"
 
 [[package]]
 name = "ciborium-ll"
-version = "0.2.0"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213030a2b5a4e0c0892b6652260cf6ccac84827b83a85a534e178e3906c4cf1b"
+checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"
 dependencies = [
  "ciborium-io",
  "half",
@@ -94,18 +89,18 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.4.0"
+version = "4.5.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d5f1946157a96594eb2d2c10eb7ad9a2b27518cb3000209dec700c35df9197d"
+checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f"
 dependencies = [
  "clap_builder",
 ]
 
 [[package]]
 name = "clap_builder"
-version = "4.4.0"
+version = "4.5.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78116e32a042dd73c2901f0dc30790d20ff3447f3e3472fad359e8c3d282bcd6"
+checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec"
 dependencies = [
  "anstyle",
  "clap_lex",
@@ -113,9 +108,9 @@ dependencies = [
 
 [[package]]
 name = "clap_lex"
-version = "0.5.1"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961"
+checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7"
 
 [[package]]
 name = "criterion"
@@ -153,55 +148,42 @@ dependencies = [
  "itertools 0.10.5",
 ]
 
-[[package]]
-name = "crossbeam-channel"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e54ea8bc3fb1ee042f5aace6e3c6e025d3874866da222930f70ce62aceba0bfa"
-dependencies = [
- "cfg-if",
- "crossbeam-utils",
-]
-
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.1"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "cfg-if",
  "crossbeam-epoch",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.7"
+version = "0.9.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c00d6d2ea26e8b151d99093005cb442fb9a37aeaca582a03ec70946f49ab5ed9"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
 dependencies = [
- "cfg-if",
  "crossbeam-utils",
- "lazy_static",
- "memoffset",
- "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.7"
+version = "0.8.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e5bed1f1c269533fa816a0a5492b3545209a205ca1a54842be180eb63a16a6"
-dependencies = [
- "cfg-if",
- "lazy_static",
-]
+checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
+
+[[package]]
+name = "crunchy"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
 
 [[package]]
 name = "either"
-version = "1.6.1"
+version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
+checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
 
 [[package]]
 name = "equivalent"
@@ -209,32 +191,11 @@ version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
-[[package]]
-name = "errno"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
-dependencies = [
- "cc",
- "libc",
-]
-
 [[package]]
 name = "getrandom"
-version = "0.2.8"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
 dependencies = [
  "cfg-if",
  "libc",
@@ -243,30 +204,25 @@ dependencies = [
 
 [[package]]
 name = "half"
-version = "1.8.2"
+version = "2.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
+checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
+dependencies = [
+ "cfg-if",
+ "crunchy",
+]
 
 [[package]]
 name = "hashbrown"
-version = "0.14.0"
+version = "0.15.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
+checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3"
 
 [[package]]
 name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.2"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
+checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
 
 [[package]]
 name = "hypergraph"
@@ -275,16 +231,16 @@ dependencies = [
  "ahash",
  "criterion",
  "indexmap",
- "itertools 0.11.0",
+ "itertools 0.13.0",
  "rayon",
  "thiserror",
 ]
 
 [[package]]
 name = "indexmap"
-version = "2.0.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
+checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -293,13 +249,13 @@ dependencies = [
 
 [[package]]
 name = "is-terminal"
-version = "0.4.9"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
+checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b"
 dependencies = [
- "hermit-abi 0.3.2",
- "rustix",
- "windows-sys",
+ "hermit-abi",
+ "libc",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -313,100 +269,72 @@ dependencies = [
 
 [[package]]
 name = "itertools"
-version = "0.11.0"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
+checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.1"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "js-sys"
-version = "0.3.56"
+version = "0.3.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a38fc24e30fd564ce974c02bf1d337caddff65be6cc4735a1f7eab22a7440f04"
+checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9"
 dependencies = [
  "wasm-bindgen",
 ]
 
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
 [[package]]
 name = "libc"
-version = "0.2.147"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.4.5"
+version = "0.2.164"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
+checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f"
 
 [[package]]
 name = "log"
-version = "0.4.14"
+version = "0.4.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
-dependencies = [
- "cfg-if",
-]
+checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
 
 [[package]]
-name = "memoffset"
-version = "0.6.5"
+name = "memchr"
+version = "2.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
+checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
 
 [[package]]
 name = "num-traits"
-version = "0.2.14"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
 ]
 
-[[package]]
-name = "num_cpus"
-version = "1.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
-dependencies = [
- "hermit-abi 0.1.19",
- "libc",
-]
-
 [[package]]
 name = "once_cell"
-version = "1.17.1"
+version = "1.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
+checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
 
 [[package]]
 name = "oorandom"
-version = "11.1.3"
+version = "11.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
+checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9"
 
 [[package]]
 name = "plotters"
-version = "0.3.1"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32a3fd9ec30b9749ce28cd91f255d569591cdf937fe280c312143e3c4bad6f2a"
+checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747"
 dependencies = [
  "num-traits",
  "plotters-backend",
@@ -417,42 +345,42 @@ dependencies = [
 
 [[package]]
 name = "plotters-backend"
-version = "0.3.2"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d88417318da0eaf0fdcdb51a0ee6c3bed624333bff8f946733049380be67ac1c"
+checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a"
 
 [[package]]
 name = "plotters-svg"
-version = "0.3.1"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "521fa9638fa597e1dc53e9412a4f9cefb01187ee1f7413076f9e6749e2885ba9"
+checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670"
 dependencies = [
  "plotters-backend",
 ]
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.66"
+version = "1.0.89"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
+checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
 name = "rayon"
-version = "1.7.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -460,49 +388,48 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.11.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
- "crossbeam-channel",
  "crossbeam-deque",
  "crossbeam-utils",
- "num_cpus",
 ]
 
 [[package]]
 name = "regex"
-version = "1.5.4"
+version = "1.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
+checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
 dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata",
  "regex-syntax",
 ]
 
 [[package]]
-name = "regex-syntax"
-version = "0.6.25"
+name = "regex-automata"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
+checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
 
 [[package]]
-name = "rustix"
-version = "0.38.8"
+name = "regex-syntax"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f"
-dependencies = [
- "bitflags",
- "errno",
- "libc",
- "linux-raw-sys",
- "windows-sys",
-]
+checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
 
 [[package]]
 name = "ryu"
-version = "1.0.9"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
 
 [[package]]
 name = "same-file"
@@ -513,59 +440,43 @@ dependencies = [
  "winapi-util",
 ]
 
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
 [[package]]
 name = "serde"
-version = "1.0.136"
+version = "1.0.215"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
+checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.136"
+version = "1.0.215"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
+checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.82",
+ "syn",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.79"
+version = "1.0.133"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95"
+checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377"
 dependencies = [
  "itoa",
+ "memchr",
  "ryu",
  "serde",
 ]
 
 [[package]]
 name = "syn"
-version = "1.0.82"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8daf5dd0bb60cbd4137b1b587d2fc0ae729bc07cf01cd70b36a1ed5ade3b9d59"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.29"
+version = "2.0.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
+checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -574,22 +485,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.47"
+version = "2.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f"
+checksum = "c006c85c7651b3cf2ada4584faa36773bd07bac24acfb39f3c431b36d7e667aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.47"
+version = "2.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
+checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.29",
+ "syn",
 ]
 
 [[package]]
@@ -604,30 +515,23 @@ dependencies = [
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.8"
+version = "1.0.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
+checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
 
 [[package]]
 name = "version_check"
-version = "0.9.4"
+version = "0.9.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
 
 [[package]]
 name = "walkdir"
-version = "2.3.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
- "winapi",
  "winapi-util",
 ]
 
@@ -639,34 +543,35 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.79"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25f1af7423d8588a3d840681122e72e6a24ddbcb3f0ec385cac0d12d24256c06"
+checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e"
 dependencies = [
  "cfg-if",
+ "once_cell",
  "wasm-bindgen-macro",
 ]
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.79"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b21c0df030f5a177f3cba22e9bc4322695ec43e7257d865302900290bcdedca"
+checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358"
 dependencies = [
  "bumpalo",
- "lazy_static",
  "log",
+ "once_cell",
  "proc-macro2",
  "quote",
- "syn 1.0.82",
+ "syn",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.79"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f4203d69e40a52ee523b2529a773d5ffc1dc0071801c87b3d270b471b80ed01"
+checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -674,82 +579,70 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.79"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa8a30d46208db204854cadbb5d4baf5fcf8071ba5bf48190c3e59937962ebc"
+checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.82",
+ "syn",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.79"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2"
+checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d"
 
 [[package]]
 name = "web-sys"
-version = "0.3.56"
+version = "0.3.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c060b319f29dd25724f09a2ba1418f142f539b2be99fbf4d2d5a8f7330afb8eb"
+checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
 ]
 
 [[package]]
-name = "winapi"
-version = "0.3.9"
+name = "winapi-util"
+version = "0.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
 dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
+ "windows-sys 0.59.0",
 ]
 
 [[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
+name = "windows-sys"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "winapi",
+ "windows-targets",
 ]
 
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
 [[package]]
 name = "windows-sys"
-version = "0.48.0"
+version = "0.59.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
 dependencies = [
  "windows-targets",
 ]
 
 [[package]]
 name = "windows-targets"
-version = "0.48.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
 dependencies = [
  "windows_aarch64_gnullvm",
  "windows_aarch64_msvc",
  "windows_i686_gnu",
+ "windows_i686_gnullvm",
  "windows_i686_msvc",
  "windows_x86_64_gnu",
  "windows_x86_64_gnullvm",
@@ -758,42 +651,68 @@ dependencies = [
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.48.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.48.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
+checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.48.5"
+version = "0.52.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.48.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.48.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.48.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.48.5"
+version = "0.52.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
+
+[[package]]
+name = "zerocopy"
+version = "0.7.35"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
diff --git a/Cargo.toml b/Cargo.toml
index 23c2634..a0ca65c 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -13,11 +13,11 @@ rust-version = "1.56"
 version = "2.1.2"
 
 [dependencies]
-ahash = "0.8.3"
-indexmap = { version = "2.0.0", features = ["rayon"] }
-itertools = "0.11.0"
+ahash = "0.8.11"
+indexmap = { version = "2.6.0", features = ["rayon"] }
+itertools = "0.13.0"
 rayon = "1.7.0"
-thiserror = "1.0.47"
+thiserror = "2.0.3"
 
 [dev-dependencies]
 criterion = "0.5.1"
@@ -25,3 +25,14 @@ criterion = "0.5.1"
 [[bench]]
 name = "performance"
 harness = false
+
+[lints.rust]
+missing_debug_implementations = "warn"
+missing_docs = "warn"
+nonstandard_style = { level = "deny", priority= -1 }
+rust_2021_compatibility = { level = "forbid", priority= -1 }
+unreachable_pub = "warn"
+unsafe_code = "deny"
+
+[lints.clippy]
+all = "deny"
diff --git a/benches/performance.rs b/benches/performance.rs
index fd58821..3df63df 100644
--- a/benches/performance.rs
+++ b/benches/performance.rs
@@ -1,9 +1,21 @@
 #![deny(unsafe_code, nonstandard_style)]
 
-use std::fmt::{Display, Formatter, Result};
-
-use criterion::{criterion_group, criterion_main, Criterion};
-use hypergraph::{HyperedgeIndex, Hypergraph, VertexIndex};
+use std::fmt::{
+    Display,
+    Formatter,
+    Result,
+};
+
+use criterion::{
+    Criterion,
+    criterion_group,
+    criterion_main,
+};
+use hypergraph::{
+    HyperedgeIndex,
+    Hypergraph,
+    VertexIndex,
+};
 use itertools::Itertools;
 
 static HYPEREDGES: usize = 10_000;
diff --git a/rustfmt.toml b/rustfmt.toml
index 3d97daf..0d8880c 100644
--- a/rustfmt.toml
+++ b/rustfmt.toml
@@ -1,5 +1,6 @@
 edition = "2021"
 group_imports = "StdExternalCrate"
 imports_granularity = "Crate"
+imports_layout="Vertical"
 use_field_init_shorthand = true
-version = "Two"
+style_edition = "2024"
diff --git a/src/core/bi_hash_map.rs b/src/core/bi_hash_map.rs
index 41170ca..e383b03 100644
--- a/src/core/bi_hash_map.rs
+++ b/src/core/bi_hash_map.rs
@@ -1,4 +1,7 @@
-use std::{collections::HashMap, fmt::Debug};
+use std::{
+    collections::HashMap,
+    fmt::Debug,
+};
 
 /// Bi-directional hashmap used to store the mapping between the internal
 /// unstable indexes - generated by `IndexMap` and `IndexSet` - and the exposed
diff --git a/src/core/errors.rs b/src/core/errors.rs
index d379d13..f5b980e 100644
--- a/src/core/errors.rs
+++ b/src/core/errors.rs
@@ -1,6 +1,9 @@
 use thiserror::Error;
 
-use crate::{HyperedgeIndex, VertexIndex};
+use crate::{
+    HyperedgeIndex,
+    VertexIndex,
+};
 
 /// Enumeration of all the possible errors.
 #[derive(Clone, Debug, Eq, Error, PartialEq)]
@@ -9,7 +12,7 @@ where
     V: Copy + Eq,
     HE: Copy + Eq,
 {
-    /// Error when a HyperedgeIndex was not found.
+    /// Error when a `HyperedgeIndex` was not found.
     #[error("HyperedgeIndex {0} was not found")]
     HyperedgeIndexNotFound(HyperedgeIndex),
 
@@ -66,7 +69,7 @@ where
     #[error("At least two hyperedges must be provided to be joined")]
     HyperedgesInvalidJoin,
 
-    /// Error when a VertexIndex was not found.
+    /// Error when a `VertexIndex` was not found.
     #[error("VertexIndex {0} was not found")]
     VertexIndexNotFound(VertexIndex),
 
diff --git a/src/core/hyperedges/add_hyperedge.rs b/src/core/hyperedges/add_hyperedge.rs
index ebf3f9c..ce63128 100644
--- a/src/core/hyperedges/add_hyperedge.rs
+++ b/src/core/hyperedges/add_hyperedge.rs
@@ -1,6 +1,11 @@
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeIndex,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/add_hyperedge_index.rs b/src/core/hyperedges/add_hyperedge_index.rs
index 4ecce4f..f0c4d7e 100644
--- a/src/core/hyperedges/add_hyperedge_index.rs
+++ b/src/core/hyperedges/add_hyperedge_index.rs
@@ -1,4 +1,9 @@
-use crate::{HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/clear_hyperedges.rs b/src/core/hyperedges/clear_hyperedges.rs
index 5d61c92..d276674 100644
--- a/src/core/hyperedges/clear_hyperedges.rs
+++ b/src/core/hyperedges/clear_hyperedges.rs
@@ -1,7 +1,11 @@
 use rayon::prelude::*;
 
 use crate::{
-    bi_hash_map::BiHashMap, errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexTrait,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    bi_hash_map::BiHashMap,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/contract_hyperedge_vertices.rs b/src/core/hyperedges/contract_hyperedge_vertices.rs
index c0b128b..dc54214 100644
--- a/src/core/hyperedges/contract_hyperedge_vertices.rs
+++ b/src/core/hyperedges/contract_hyperedge_vertices.rs
@@ -2,8 +2,13 @@ use itertools::Itertools;
 use rayon::prelude::*;
 
 use crate::{
-    core::utils::are_slices_equal, errors::HypergraphError, HyperedgeIndex, HyperedgeTrait,
-    Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    core::utils::are_slices_equal,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/count_hyperedges.rs b/src/core/hyperedges/count_hyperedges.rs
index 8b929e6..6472aef 100644
--- a/src/core/hyperedges/count_hyperedges.rs
+++ b/src/core/hyperedges/count_hyperedges.rs
@@ -1,4 +1,8 @@
-use crate::{HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/get_hyperedge.rs b/src/core/hyperedges/get_hyperedge.rs
index 07e05ad..869115c 100644
--- a/src/core/hyperedges/get_hyperedge.rs
+++ b/src/core/hyperedges/get_hyperedge.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/get_hyperedge_vertices.rs b/src/core/hyperedges/get_hyperedge_vertices.rs
index 4e4364f..80b4f2a 100644
--- a/src/core/hyperedges/get_hyperedge_vertices.rs
+++ b/src/core/hyperedges/get_hyperedge_vertices.rs
@@ -1,6 +1,11 @@
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeIndex,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/get_hyperedge_weight.rs b/src/core/hyperedges/get_hyperedge_weight.rs
index 1c2f01c..df3b7f9 100644
--- a/src/core/hyperedges/get_hyperedge_weight.rs
+++ b/src/core/hyperedges/get_hyperedge_weight.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/get_hyperedges.rs b/src/core/hyperedges/get_hyperedges.rs
index 1048d69..295e8c6 100644
--- a/src/core/hyperedges/get_hyperedges.rs
+++ b/src/core/hyperedges/get_hyperedges.rs
@@ -1,6 +1,12 @@
 use rayon::prelude::*;
 
-use crate::{errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/get_hyperedges_connecting.rs b/src/core/hyperedges/get_hyperedges_connecting.rs
index 387eb08..cab1855 100644
--- a/src/core/hyperedges/get_hyperedges_connecting.rs
+++ b/src/core/hyperedges/get_hyperedges_connecting.rs
@@ -1,8 +1,13 @@
 use rayon::prelude::*;
 
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph,
-    VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/get_hyperedges_intersections.rs b/src/core/hyperedges/get_hyperedges_intersections.rs
index 5bbb1e9..674262b 100644
--- a/src/core/hyperedges/get_hyperedges_intersections.rs
+++ b/src/core/hyperedges/get_hyperedges_intersections.rs
@@ -1,9 +1,13 @@
 use itertools::Itertools;
-use rayon::prelude::*;
 
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeIndex,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
@@ -26,7 +30,7 @@ where
 
         // Get the internal vertices of the hyperedges and keep the eventual error.
         let vertices = hyperedges
-            .into_par_iter()
+            .into_iter()
             .map(|hyperedge_index| {
                 self.get_internal_hyperedge(hyperedge_index)
                     .and_then(|internal_index| {
diff --git a/src/core/hyperedges/get_internal_hyperedge.rs b/src/core/hyperedges/get_internal_hyperedge.rs
index 36d8822..aff5722 100644
--- a/src/core/hyperedges/get_internal_hyperedge.rs
+++ b/src/core/hyperedges/get_internal_hyperedge.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/get_internal_hyperedges.rs b/src/core/hyperedges/get_internal_hyperedges.rs
index 76ddf8c..2cb7849 100644
--- a/src/core/hyperedges/get_internal_hyperedges.rs
+++ b/src/core/hyperedges/get_internal_hyperedges.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/join_hyperedges.rs b/src/core/hyperedges/join_hyperedges.rs
index 3c16cb7..bbcdabd 100644
--- a/src/core/hyperedges/join_hyperedges.rs
+++ b/src/core/hyperedges/join_hyperedges.rs
@@ -1,7 +1,12 @@
 use rayon::prelude::*;
 
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/remove_hyperedge.rs b/src/core/hyperedges/remove_hyperedge.rs
index ba96539..86b7675 100644
--- a/src/core/hyperedges/remove_hyperedge.rs
+++ b/src/core/hyperedges/remove_hyperedge.rs
@@ -1,5 +1,10 @@
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
@@ -33,7 +38,7 @@ where
         for vertex in vertices {
             match self.vertices.get_index_mut(vertex) {
                 Some((_, index_set)) => {
-                    index_set.remove(&internal_index);
+                    index_set.swap_remove(&internal_index);
                 }
                 None => return Err(HypergraphError::InternalVertexIndexNotFound(vertex)),
             }
@@ -113,7 +118,7 @@ where
                         // Perform an insertion of the current hyperedge and a
                         // removal of the swapped one.
                         index_set.insert(internal_index);
-                        index_set.remove(&last_index);
+                        index_set.swap_remove(&last_index);
                     }
                     None => return Err(HypergraphError::InternalVertexIndexNotFound(vertex)),
                 }
diff --git a/src/core/hyperedges/reverse_hyperedge.rs b/src/core/hyperedges/reverse_hyperedge.rs
index d44da9a..a6596c9 100644
--- a/src/core/hyperedges/reverse_hyperedge.rs
+++ b/src/core/hyperedges/reverse_hyperedge.rs
@@ -1,6 +1,12 @@
 use rayon::prelude::*;
 
-use crate::{errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/hyperedges/update_hyperedge_vertices.rs b/src/core/hyperedges/update_hyperedge_vertices.rs
index 59c433a..959f5ea 100644
--- a/src/core/hyperedges/update_hyperedge_vertices.rs
+++ b/src/core/hyperedges/update_hyperedge_vertices.rs
@@ -1,8 +1,14 @@
 use rayon::prelude::*;
 
 use crate::{
-    core::utils::are_slices_equal, errors::HypergraphError, HyperedgeIndex, HyperedgeKey,
-    HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    core::utils::are_slices_equal,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/hyperedges/update_hyperedge_weight.rs b/src/core/hyperedges/update_hyperedge_weight.rs
index 3ac9f31..a948087 100644
--- a/src/core/hyperedges/update_hyperedge_weight.rs
+++ b/src/core/hyperedges/update_hyperedge_weight.rs
@@ -1,5 +1,10 @@
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/indexes.rs b/src/core/indexes.rs
index 4990e4b..0cfbf3c 100644
--- a/src/core/indexes.rs
+++ b/src/core/indexes.rs
@@ -1,4 +1,8 @@
-use std::fmt::{Display, Formatter, Result};
+use std::fmt::{
+    Display,
+    Formatter,
+    Result,
+};
 
 /// Vertex stable index representation as usize.
 /// Uses the newtype index pattern.
diff --git a/src/core/iterator.rs b/src/core/iterator.rs
index 9157d09..fa32570 100644
--- a/src/core/iterator.rs
+++ b/src/core/iterator.rs
@@ -1,6 +1,12 @@
 use rayon::prelude::*;
 
-use crate::{errors::HypergraphError, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> IntoIterator for Hypergraph<V, HE>
 where
diff --git a/src/core/mod.rs b/src/core/mod.rs
index 53b88ce..06e4781 100644
--- a/src/core/mod.rs
+++ b/src/core/mod.rs
@@ -14,16 +14,28 @@ mod utils;
 pub mod vertices;
 
 use std::{
-    fmt::{Debug, Display, Formatter, Result},
+    fmt::{
+        Debug,
+        Display,
+        Formatter,
+        Result,
+    },
     hash::Hash,
     ops::Deref,
 };
 
 use bi_hash_map::BiHashMap;
-use types::{AIndexMap, AIndexSet, ARandomState};
+use types::{
+    AIndexMap,
+    AIndexSet,
+    ARandomState,
+};
 
 // Reexport indexes at this level.
-pub use crate::core::indexes::{HyperedgeIndex, VertexIndex};
+pub use crate::core::indexes::{
+    HyperedgeIndex,
+    VertexIndex,
+};
 
 /// Shared Trait for the vertices.
 /// Must be implemented to use the library.
diff --git a/src/core/shared.rs b/src/core/shared.rs
index b37f9e8..06f55d8 100644
--- a/src/core/shared.rs
+++ b/src/core/shared.rs
@@ -2,7 +2,12 @@ use itertools::Itertools;
 use rayon::prelude::*;
 
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 /// Enumeration of the different types of connection.
diff --git a/src/core/types.rs b/src/core/types.rs
index 0a01564..783b726 100644
--- a/src/core/types.rs
+++ b/src/core/types.rs
@@ -1,5 +1,8 @@
 use ahash::RandomState;
-use indexmap::{IndexMap, IndexSet};
+use indexmap::{
+    IndexMap,
+    IndexSet,
+};
 
 /// Type alias to use `AHash` as a faster hasher for `IndexMap`.
 pub(crate) type AIndexMap<K, V> = IndexMap<K, V, RandomState>;
diff --git a/src/core/vertices/add_vertex.rs b/src/core/vertices/add_vertex.rs
index 46a35ff..f7a9bf8 100644
--- a/src/core/vertices/add_vertex.rs
+++ b/src/core/vertices/add_vertex.rs
@@ -1,7 +1,13 @@
 use crate::{
-    core::types::{AIndexSet, ARandomState},
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    core::types::{
+        AIndexSet,
+        ARandomState,
+    },
     errors::HypergraphError,
-    HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/add_vertex_index.rs b/src/core/vertices/add_vertex_index.rs
index 42ab5f8..57f0146 100644
--- a/src/core/vertices/add_vertex_index.rs
+++ b/src/core/vertices/add_vertex_index.rs
@@ -1,4 +1,9 @@
-use crate::{HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/count_vertices.rs b/src/core/vertices/count_vertices.rs
index 80fbb1c..4b713e9 100644
--- a/src/core/vertices/count_vertices.rs
+++ b/src/core/vertices/count_vertices.rs
@@ -1,4 +1,8 @@
-use crate::{HyperedgeTrait, Hypergraph, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexTrait,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/get_adjacent_vertices_from.rs b/src/core/vertices/get_adjacent_vertices_from.rs
index f2cc93f..6659d31 100644
--- a/src/core/vertices/get_adjacent_vertices_from.rs
+++ b/src/core/vertices/get_adjacent_vertices_from.rs
@@ -1,8 +1,12 @@
 use rayon::prelude::*;
 
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/get_adjacent_vertices_to.rs b/src/core/vertices/get_adjacent_vertices_to.rs
index 9f69820..57d57e4 100644
--- a/src/core/vertices/get_adjacent_vertices_to.rs
+++ b/src/core/vertices/get_adjacent_vertices_to.rs
@@ -1,8 +1,12 @@
 use rayon::prelude::*;
 
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/get_dijkstra_connections.rs b/src/core/vertices/get_dijkstra_connections.rs
index 6aad381..bbae907 100644
--- a/src/core/vertices/get_dijkstra_connections.rs
+++ b/src/core/vertices/get_dijkstra_connections.rs
@@ -1,13 +1,21 @@
 use std::{
     cmp::Ordering,
-    collections::{BinaryHeap, HashMap},
+    collections::{
+        BinaryHeap,
+        HashMap,
+    },
     fmt::Debug,
 };
 
 use rayon::prelude::*;
 
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 #[derive(Clone, Copy, Debug, PartialEq, Eq)]
diff --git a/src/core/vertices/get_full_adjacent_vertices_from.rs b/src/core/vertices/get_full_adjacent_vertices_from.rs
index 9cc391c..84dacce 100644
--- a/src/core/vertices/get_full_adjacent_vertices_from.rs
+++ b/src/core/vertices/get_full_adjacent_vertices_from.rs
@@ -1,9 +1,17 @@
 use indexmap::IndexMap;
-use itertools::{fold, Itertools};
+use itertools::{
+    Itertools,
+    fold,
+};
 
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph,
-    VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 #[allow(clippy::type_complexity)]
diff --git a/src/core/vertices/get_full_adjacent_vertices_to.rs b/src/core/vertices/get_full_adjacent_vertices_to.rs
index 7a5f93e..c04fd59 100644
--- a/src/core/vertices/get_full_adjacent_vertices_to.rs
+++ b/src/core/vertices/get_full_adjacent_vertices_to.rs
@@ -1,9 +1,17 @@
 use indexmap::IndexMap;
-use itertools::{fold, Itertools};
+use itertools::{
+    Itertools,
+    fold,
+};
 
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph,
-    VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 #[allow(clippy::type_complexity)]
diff --git a/src/core/vertices/get_full_vertex_hyperedges.rs b/src/core/vertices/get_full_vertex_hyperedges.rs
index c746f30..7336ba5 100644
--- a/src/core/vertices/get_full_vertex_hyperedges.rs
+++ b/src/core/vertices/get_full_vertex_hyperedges.rs
@@ -1,6 +1,12 @@
 use rayon::prelude::*;
 
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/get_internal_vertex.rs b/src/core/vertices/get_internal_vertex.rs
index e4182ce..4acd7fe 100644
--- a/src/core/vertices/get_internal_vertex.rs
+++ b/src/core/vertices/get_internal_vertex.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/get_internal_vertices.rs b/src/core/vertices/get_internal_vertices.rs
index bf57b48..1e3bad7 100644
--- a/src/core/vertices/get_internal_vertices.rs
+++ b/src/core/vertices/get_internal_vertices.rs
@@ -1,6 +1,12 @@
 use rayon::prelude::*;
 
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/get_vertex.rs b/src/core/vertices/get_vertex.rs
index 62ae72b..ce97b06 100644
--- a/src/core/vertices/get_vertex.rs
+++ b/src/core/vertices/get_vertex.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/get_vertex_degree_in.rs b/src/core/vertices/get_vertex_degree_in.rs
index 23a9be1..cbdfe89 100644
--- a/src/core/vertices/get_vertex_degree_in.rs
+++ b/src/core/vertices/get_vertex_degree_in.rs
@@ -1,6 +1,10 @@
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/get_vertex_degree_out.rs b/src/core/vertices/get_vertex_degree_out.rs
index 0309a15..b067a75 100644
--- a/src/core/vertices/get_vertex_degree_out.rs
+++ b/src/core/vertices/get_vertex_degree_out.rs
@@ -1,6 +1,10 @@
 use crate::{
-    core::shared::Connection, errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
     VertexTrait,
+    core::shared::Connection,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/get_vertex_hyperedges.rs b/src/core/vertices/get_vertex_hyperedges.rs
index 39e8018..f722217 100644
--- a/src/core/vertices/get_vertex_hyperedges.rs
+++ b/src/core/vertices/get_vertex_hyperedges.rs
@@ -1,7 +1,12 @@
 use itertools::Itertools;
 
 use crate::{
-    errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeIndex,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/get_vertex_weight.rs b/src/core/vertices/get_vertex_weight.rs
index 0b0e820..afa2398 100644
--- a/src/core/vertices/get_vertex_weight.rs
+++ b/src/core/vertices/get_vertex_weight.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/get_vertices.rs b/src/core/vertices/get_vertices.rs
index 813e2db..4a72cba 100644
--- a/src/core/vertices/get_vertices.rs
+++ b/src/core/vertices/get_vertices.rs
@@ -1,6 +1,12 @@
 use rayon::prelude::*;
 
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/core/vertices/remove_vertex.rs b/src/core/vertices/remove_vertex.rs
index 8bbbe38..e11779a 100644
--- a/src/core/vertices/remove_vertex.rs
+++ b/src/core/vertices/remove_vertex.rs
@@ -1,7 +1,12 @@
 use rayon::prelude::*;
 
 use crate::{
-    errors::HypergraphError, HyperedgeKey, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait,
+    HyperedgeKey,
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
 };
 
 impl<V, HE> Hypergraph<V, HE>
diff --git a/src/core/vertices/update_vertex_weight.rs b/src/core/vertices/update_vertex_weight.rs
index d2cf6f6..079f6ea 100644
--- a/src/core/vertices/update_vertex_weight.rs
+++ b/src/core/vertices/update_vertex_weight.rs
@@ -1,4 +1,10 @@
-use crate::{errors::HypergraphError, HyperedgeTrait, Hypergraph, VertexIndex, VertexTrait};
+use crate::{
+    HyperedgeTrait,
+    Hypergraph,
+    VertexIndex,
+    VertexTrait,
+    errors::HypergraphError,
+};
 
 impl<V, HE> Hypergraph<V, HE>
 where
diff --git a/src/lib.rs b/src/lib.rs
index 4101a5a..8ae1534 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,9 +1,3 @@
-#![deny(clippy::pedantic)]
-#![allow(clippy::module_name_repetitions, clippy::must_use_candidate)]
-#![deny(unsafe_code, nonstandard_style)]
-#![forbid(rust_2021_compatibility)]
-#![warn(missing_debug_implementations, missing_docs, unreachable_pub)]
-
 //! Hypergraph is data structure library to generate directed [hypergraphs](https://en.wikipedia.org/wiki/Hypergraph).
 //!
 //! > A hypergraph is a generalization of a graph in which a hyperedge can join any number of vertices.


Test patch:
diff --git a/tests/common/mod.rs b/tests/common/mod.rs
index 0f69dae..d520a7e 100644
--- a/tests/common/mod.rs
+++ b/tests/common/mod.rs
@@ -1,21 +1,25 @@
 #![deny(unsafe_code, nonstandard_style)]
 
-use std::fmt::{Display, Formatter, Result};
+use std::fmt::{
+    Display,
+    Formatter,
+    Result,
+};
 
 #[derive(Debug, Copy, Clone, Hash, Eq, PartialEq)]
-pub struct Vertex<'a> {
+pub(crate) struct Vertex<'a> {
     name: &'a str,
 }
 
 impl<'a> Vertex<'a> {
-    pub fn new(name: &'a str) -> Self {
+    pub(crate) fn new(name: &'a str) -> Self {
         Vertex { name }
     }
 }
 
-impl<'a> Display for Vertex<'a> {
+impl Display for Vertex<'_> {
     fn fmt(&self, formatter: &mut Formatter<'_>) -> Result {
-        write!(formatter, "{}", self)
+        write!(formatter, "{}", self.name)
     }
 }
 
@@ -31,9 +35,9 @@ impl<'a> Hyperedge<'a> {
     }
 }
 
-impl<'a> Display for Hyperedge<'a> {
+impl Display for Hyperedge<'_> {
     fn fmt(&self, formatter: &mut Formatter<'_>) -> Result {
-        write!(formatter, "{}", self)
+        write!(formatter, "{}", self.name)
     }
 }
 
diff --git a/tests/integration_contraction.rs b/tests/integration_contraction.rs
index 1e8ebee..16e81c8 100644
--- a/tests/integration_contraction.rs
+++ b/tests/integration_contraction.rs
@@ -1,10 +1,17 @@
-#![deny(unsafe_code, nonstandard_style)]
-#![forbid(rust_2021_compatibility)]
+//! Integration tests.
 
 mod common;
 
-use common::{Hyperedge, Vertex};
-use hypergraph::{errors::HypergraphError, HyperedgeIndex, Hypergraph, VertexIndex};
+use common::{
+    Hyperedge,
+    Vertex,
+};
+use hypergraph::{
+    HyperedgeIndex,
+    Hypergraph,
+    VertexIndex,
+    errors::HypergraphError,
+};
 
 #[test]
 fn integration_contration() {
diff --git a/tests/integration_dijkstra.rs b/tests/integration_dijkstra.rs
index 5d5a130..77b7e93 100644
--- a/tests/integration_dijkstra.rs
+++ b/tests/integration_dijkstra.rs
@@ -1,9 +1,11 @@
-#![deny(unsafe_code, nonstandard_style)]
-#![forbid(rust_2021_compatibility)]
+//! Integration tests.
 
 mod common;
 
-use common::{Hyperedge, Vertex};
+use common::{
+    Hyperedge,
+    Vertex,
+};
 use hypergraph::Hypergraph;
 
 #[test]
diff --git a/tests/integration_iterator.rs b/tests/integration_iterator.rs
index a37e5d6..a45e3cf 100644
--- a/tests/integration_iterator.rs
+++ b/tests/integration_iterator.rs
@@ -1,9 +1,11 @@
-#![deny(unsafe_code, nonstandard_style)]
-#![forbid(rust_2021_compatibility)]
+//! Integration tests.
 
 mod common;
 
-use common::{Hyperedge, Vertex};
+use common::{
+    Hyperedge,
+    Vertex,
+};
 use hypergraph::Hypergraph;
 
 #[test]
@@ -44,14 +46,17 @@ fn integration_iterator() {
         vec![
             (hyperedge_one, vec![vertex_one, vertex_two, vertex_three]),
             (hyperedge_two, vec![vertex_four, vertex_five]),
-            (
-                hyperedge_three,
-                vec![vertex_three, vertex_three, vertex_three]
-            ),
-            (
-                hyperedge_four,
-                vec![vertex_five, vertex_four, vertex_three, vertex_one]
-            )
+            (hyperedge_three, vec![
+                vertex_three,
+                vertex_three,
+                vertex_three
+            ]),
+            (hyperedge_four, vec![
+                vertex_five,
+                vertex_four,
+                vertex_three,
+                vertex_one
+            ])
         ],
         "should provide `into_iter()` yelding a vector of tuples of the form (hyperedge, vector of vertices)"
     );
diff --git a/tests/integration_join.rs b/tests/integration_join.rs
index da912f3..804241c 100644
--- a/tests/integration_join.rs
+++ b/tests/integration_join.rs
@@ -1,10 +1,15 @@
-#![deny(unsafe_code, nonstandard_style)]
-#![forbid(rust_2021_compatibility)]
+//! Integration tests.
 
 mod common;
 
-use common::{Hyperedge, Vertex};
-use hypergraph::{errors::HypergraphError, Hypergraph};
+use common::{
+    Hyperedge,
+    Vertex,
+};
+use hypergraph::{
+    Hypergraph,
+    errors::HypergraphError,
+};
 
 #[test]
 fn integration_contration() {
diff --git a/tests/integration_main.rs b/tests/integration_main.rs
index 97b6a93..a636106 100644
--- a/tests/integration_main.rs
+++ b/tests/integration_main.rs
@@ -1,10 +1,17 @@
-#![deny(unsafe_code, nonstandard_style)]
-#![forbid(rust_2021_compatibility)]
+//! Integration tests.
 
 mod common;
 
-use common::{Hyperedge, Vertex};
-use hypergraph::{errors::HypergraphError, HyperedgeIndex, Hypergraph, VertexIndex};
+use common::{
+    Hyperedge,
+    Vertex,
+};
+use hypergraph::{
+    HyperedgeIndex,
+    Hypergraph,
+    VertexIndex,
+    errors::HypergraphError,
+};
 
 #[test]
 fn integration_main() {