diff --git a/Cargo.lock b/Cargo.lock
index d5c9e10ca82b9a6fbb8bebd349c527dd5787a6df..703444aad9c349ab7d39f0da578064e5f1394607 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -35,13 +35,14 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
 name = "ahash"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
+checksum = "72832d73be48bac96a5d7944568f305d829ed55b0ce3b483647089dfaf6cf704"
 dependencies = [
  "cfg-if",
  "once_cell",
  "version_check",
+ "zerocopy",
 ]
 
 [[package]]
@@ -370,9 +371,9 @@ dependencies = [
 
 [[package]]
 name = "base64"
-version = "0.21.4"
+version = "0.21.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2"
+checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
 
 [[package]]
 name = "bit-set"
@@ -1707,9 +1708,9 @@ dependencies = [
 
 [[package]]
 name = "ipnet"
-version = "2.8.0"
+version = "2.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6"
+checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 
 [[package]]
 name = "itoa"
@@ -2096,9 +2097,9 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.8"
+version = "0.8.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
+checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
 dependencies = [
  "libc",
  "log",
@@ -4540,6 +4541,26 @@ version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697"
 
+[[package]]
+name = "zerocopy"
+version = "0.7.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c19fae0c8a9efc6a8281f2e623db8af1db9e57852e04cde3e754dd2dc29340f"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc56589e9ddd1f1c28d4b4b5c773ce232910a6bb67a70133d61c9e347585efe9"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
 [[package]]
 name = "zvariant"
 version = "3.15.0"
diff --git a/amadeus/src/components/mainpanel/playlists.rs b/amadeus/src/components/mainpanel/playlists.rs
index 1f3b77aabc20051af09128e78ef5ca1cfaebdf0f..9191fa98f706bfb5b68daa748071ebbaa9475845 100644
--- a/amadeus/src/components/mainpanel/playlists.rs
+++ b/amadeus/src/components/mainpanel/playlists.rs
@@ -94,8 +94,7 @@ impl State {
     fn contains(&self, name: impl AsRef<str>) -> bool {
         self.playlists
             .iter()
-            .find(|(plt, ..)| name.as_ref().eq(plt.as_ref()))
-            .is_some()
+            .any(|(plt, ..)| name.as_ref().eq(plt.as_ref()))
     }
 
     pub fn update(&mut self, message: Message) -> Command<Request> {
diff --git a/lektor_utils/src/pathdiff.rs b/lektor_utils/src/pathdiff.rs
index b9a72acb3bafc171b77cf0584b32e5a889662003..d7457ff3d68336397dbdb52d46fd7a6690196a70 100644
--- a/lektor_utils/src/pathdiff.rs
+++ b/lektor_utils/src/pathdiff.rs
@@ -46,8 +46,8 @@ where
                 }
                 (None, _) => comps.push(Component::ParentDir),
                 (Some(a), Some(b)) if comps.is_empty() && a == b => (),
-                (Some(a), Some(b)) if b == Component::CurDir => comps.push(a),
-                (Some(_), Some(b)) if b == Component::ParentDir => return None,
+                (Some(a), Some(Component::CurDir)) => comps.push(a),
+                (Some(_), Some(Component::ParentDir)) => return None,
                 (Some(a), Some(_)) => {
                     comps.push(Component::ParentDir);
                     for _ in itb {
diff --git a/lektord/build.rs b/lektord/build.rs
index 223372a00831834a12f8abf923234f2663c58b00..b6c0b3ac53aa75ddff4212611d210b86550ae0f7 100644
--- a/lektord/build.rs
+++ b/lektord/build.rs
@@ -96,7 +96,7 @@ fn main() -> anyhow::Result<()> {
     let lib = path.as_os_str().to_string_lossy();
     let (from, count, prefix) = match lib.rfind("/lib") {
         Some(from) => (from, 4, "lib"),
-        None => (lib.rfind("/").unwrap(), 1, ""),
+        None => (lib.rfind('/').unwrap(), 1, ""),
     };
     let libfile = &lib[(from + count)..];
     let to = libfile.find('.').unwrap();