From e8035447b1b16c22f937344350992af6f5418007 Mon Sep 17 00:00:00 2001 From: Alexey Dubovskoy Date: Tue, 14 Jul 2026 11:15:07 +0100 Subject: [PATCH] fix(deps): declare cooklang's bundled_units feature explicitly bundled_units carries the unit database behind quantity scaling and unit normalisation. cook recipe depends on it, but cookcli never declared it: it was reaching us purely through cargo feature unification, because cooklang-language-server and cooklang-reports depend on cooklang with default features. Any dependency change that dropped those crates from the graph would silently alter recipe output - units stop normalising ('cups' instead of 'c') and quantities stop being scalable. Declare it where it is used. No-op today: resolved cooklang features and crate count are identical. Refs #366 --- Cargo.toml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 81281aa..2b79053 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,7 +38,11 @@ camino = { version = "1", features = ["serde1"] } chrono = "0.4" clap = { version = "4.5", features = ["derive"] } base64 = { version = "0.22", optional = true } -cooklang = { version = "0.18.5", default-features = false, features = ["aisle", "pantry", "shopping_list"] } +# bundled_units carries the unit database (quantity scaling, unit normalisation). +# We rely on it in `cook recipe`, but never declared it: it was reaching us only +# via feature unification from cooklang-language-server / cooklang-reports, which +# depend on cooklang with default features. Declare it where it is actually used. +cooklang = { version = "0.18.5", default-features = false, features = ["aisle", "bundled_units", "pantry", "shopping_list"] } cooklang-find = { version = "0.6" } cooklang-import = "0.9.3" cooklang-sync-client = { version = "0.4.11", optional = true }