From eed0688003278683c0dc2938f754fb0010efff62 Mon Sep 17 00:00:00 2001 From: Vyncint Ng Date: Sun, 6 Sep 2026 06:42:22 +0700 Subject: [PATCH] docs: restore four changelog entries lost in a conflict resolution MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #268, #269, #270 and #271 each landed with a CHANGELOG entry under `[Unreleased]`, and all four are missing from `main`. They were dropped by me while resolving the changelog collisions those four PRs had with each other: the script I used rebuilt a conflict region from the `### Heading` blocks it found inside it, and when a conflict fell *within* a section rather than around its heading it found none and wrote nothing. It never checked that its output was non-empty, so it failed silently — the same shape of defect as the quiet empty string #260 was about. The entries are restored verbatim as their authors wrote them. Nothing else changed: the code for all four is on main and was verified before each merge. Signed-off-by: Vyncint Ng --- CHANGELOG.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index de55536..391ec8b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,23 @@ listed under a **Changed** or **Removed** heading. ### Changed +- **`Screen::row_text` rejects an out-of-bounds row instead of returning an + ambiguous empty string.** Callers with a potentially invalid index should + bounds-check against `rows()` first, or use `cell(row, 0)` and treat `None` + as absent. (#260) + +- **`Terminal::drag` takes four column-first coordinate arguments instead of + two unlabelled tuples.** This matches the other mouse methods and prevents a + row-first `Screen::find` result from being passed through transposed. (#257) + +- **`Style` is non-exhaustive so new terminal attributes can be added without + another breaking change.** Downstream struct literals should migrate to + `Style::default()` followed by assignments to relevant fields. (#259) + +- **The `inspect` example clears the child environment by default.** It keeps + `PATH` so bare program names work; `--env` adds selected values and + `--inherit-env` restores the previous behavior. (#263) + ### Fixed - **docs.rs labels APIs gated by the `decode` and `insta` features.** Optional