From 6de9cec3ff26620c6e11de0dc426310346d7786c Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 8 Jul 2026 12:11:02 +0200 Subject: feat: suppress continuation-URL prompt for manifest-listed pkgs; release v1.2.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On a primary version bump of a manifest-listed package, mkhint used to prompt interactively for each extra DOWNLOAD (continuation) URL, then Phase 2 (reconcile_bundle_deps) rewrote those same lines from the upstream manifest — a pointless double-touch (13 prompts for neovim). update_hint_file now detects a listed package and threads a skip_cont flag through update_checksums -> _process_download_var, which leaves the continuation URLs for the manifest reconcile and prints a short notice instead of prompting. Non-listed packages prompt exactly as before. Also fixes a set -e abort: the manifest-lookup guard was written as `pkg_has_manifest ... && _skip_cont=1`, whose false result (non-listed package) killed the run right after the backup. Rewritten as an if. This would have broken every non-listed --hintfile -V update. Verified live on a non-listed multiline package (exploitdb). Tests: T-BM18 now asserts the listed-pkg suppression, T-BM25 guards against over-suppression (non-listed still prompts); the read -p prompt is invisible under piped stdin, so both assert on the always-echoed "line N (current)" header. 184 passed. Also defers the multi-file split TODO with a rationale and revisit triggers (extract only the bundled-dep block when the time comes). Bump MKHINT_VERSION and man title to 1.2.4, rebuild mkhint.1.gz. Co-Authored-By: Claude Opus 4.8 --- mkhint.1.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'mkhint.1.md') diff --git a/mkhint.1.md b/mkhint.1.md index 5659145..f01be66 100644 --- a/mkhint.1.md +++ b/mkhint.1.md @@ -1,4 +1,4 @@ -% MKHINT(1) mkhint 1.2.3 | User Commands +% MKHINT(1) mkhint 1.2.4 | User Commands % Danilo M. % July 2026 @@ -231,7 +231,9 @@ upstream version differs, not merely its URL path shape, so a manifest's bare-tag archive URL and the hint's SBo-fetched tree URL at the same version are treated as current. Bundled deps are never followed to their own latest release; only the manifest's pinned URLs are used. Manifest entries -with no matching download line are reported but not added. +with no matching download line are reported but not added. During the primary +version bump of a listed package, **mkhint** does not prompt to edit the extra +download lines by hand, since the manifest reconcile owns them. # SEE ALSO -- cgit v1.2.3