From 39d449889d8b3ca36136158f3c9bd68946eb32e1 Mon Sep 17 00:00:00 2001 From: Nick Pegg Date: Thu, 25 Sep 2025 15:04:59 -0700 Subject: [PATCH] serde_yml -> serde_yaml_ng --- Cargo.lock | 28 +++++++++++----------------- Cargo.toml | 2 +- src/config.rs | 6 +++--- 3 files changed, 15 insertions(+), 21 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 89b63cf..4bebd05 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -744,16 +744,6 @@ dependencies = [ "cc", ] -[[package]] -name = "libyml" -version = "0.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3302702afa434ffa30847a83305f0a69d6abd74293b6554c18ec85c7ef30c980" -dependencies = [ - "anyhow", - "version_check", -] - [[package]] name = "log" version = "0.4.27" @@ -973,7 +963,7 @@ dependencies = [ "pulldown-cmark", "rayon", "serde", - "serde_yml", + "serde_yaml_ng", "tera", "thiserror 2.0.12", "time", @@ -1303,18 +1293,16 @@ dependencies = [ ] [[package]] -name = "serde_yml" -version = "0.0.12" +name = "serde_yaml_ng" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59e2dd588bf1597a252c3b920e0143eb99b0f76e4e082f4c92ce34fbc9e71ddd" +checksum = "7b4db627b98b36d4203a7b458cf3573730f2bb591b28871d916dfa9efabfd41f" dependencies = [ "indexmap", "itoa", - "libyml", - "memchr", "ryu", "serde", - "version_check", + "unsafe-libyaml", ] [[package]] @@ -1609,6 +1597,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + [[package]] name = "utf8parse" version = "0.2.2" diff --git a/Cargo.toml b/Cargo.toml index bade3fa..7fd88d6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ log = "0.4.27" pulldown-cmark = "0.13.0" rayon = "1.10" serde = { version = "1.0", features = ["derive"] } -serde_yml = "0.0.12" +serde_yaml_ng = "0.10.0" tera = { version = "1.20", default-features = false } thiserror = "2.0" time = { version = "0.3.41", features = ["formatting", "macros", "parsing"] } diff --git a/src/config.rs b/src/config.rs index 9152206..6304525 100644 --- a/src/config.rs +++ b/src/config.rs @@ -23,7 +23,7 @@ impl Config { config_path.display(), ) })?; - let cfg = serde_yml::from_slice(&content) + let cfg = serde_yaml_ng::from_slice(&content) .with_context(|| format!("Failed to parse config from {}", config_path.display()))?; Ok(cfg) } @@ -56,11 +56,11 @@ mod test { fn from_yaml() { // Empty YAML gives full default values let default_cfg = Config::default(); - let cfg: Config = serde_yml::from_str("").unwrap(); + let cfg: Config = serde_yaml_ng::from_str("").unwrap(); assert_eq!(cfg, default_cfg); // Default values for any unspecified fields - let cfg: Config = serde_yml::from_str("thumbnail_size: [1, 1]").unwrap(); + let cfg: Config = serde_yaml_ng::from_str("thumbnail_size: [1, 1]").unwrap(); assert_ne!(cfg, default_cfg); assert_eq!(cfg.thumbnail_size, (1, 1)); assert_eq!(cfg.view_size, default_cfg.view_size);