From 05a0d08a823729cfe6cffc909aef4cda52d5215c Mon Sep 17 00:00:00 2001 From: Deyan Ginev Date: Mon, 6 Jul 2026 21:01:27 -0400 Subject: [PATCH] docs(msrv): declare rust-version = 1.88 The streaming reader (0.3.15, #206) uses a let-chain, stabilized in Rust 1.88, so 0.3.15 requires 1.88 even though edition 2024 alone only needs 1.85. Declare it via rust-version so cargo emits a clean 'requires rustc 1.88' error for consumers on 1.85-1.87 instead of a raw syntax error, and note the MSRV in the CHANGELOG. CI runs on stable so it did not surface the bump. Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 3 +++ Cargo.toml | 1 + 2 files changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c4e67f35b..5c1ad146b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,6 +31,9 @@ ### Changed +* **Minimum supported Rust version is now 1.88** (declared via `rust-version`). + The streaming `reader` uses a let-chain (stabilized in 1.88); the edition is + already 2024. Consumers on 1.85–1.87 that built 0.3.14 will need to update. * `Node::_wrap`'s per-document `xmlNodePtr -> Node` cache now hashes pointer keys with a small FxHash-style hasher instead of the default SipHash `RandomState`. The cache is probed on every `Node` wrap (child/sibling walks, XPath results, diff --git a/Cargo.toml b/Cargo.toml index fc962e55a..bbb3d5ce8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,7 @@ name = "libxml" version = "0.3.15" edition = "2024" +rust-version = "1.88" authors = ["Andreas Franzén ", "Deyan Ginev ","Jan Frederik Schaefer "] description = "A Rust wrapper for libxml2 - the XML C parser and toolkit developed for the Gnome project" repository = "https://github.com/KWARC/rust-libxml"