From efeeeb045ee8f7d92bc718c40661df0f5fb070c7 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 8 Jul 2026 11:25:38 +0200 Subject: fix: version-aware bundled-dep reconcile; release v1.2.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit reconcile_bundle_deps flagged a dep as changed on raw URL-string inequality. Manifests serve bare-tag archive URLs (.../archive/v0.26.7.tar.gz) while hints use the SBo-fetched tree shape (.../archive/v0.26.7/tree-sitter-0.26.7.tar.gz) — same version, different path — so every dep was reported changed at a version that had not moved. Add _url_version to parse and normalize the version from a URL basename, and detect change by version rather than URL string. Only rewrite a line when the version actually differs. Change report now shows "name old-ver -> new-ver". Regression test T-BM17 pins the same-version, different-shape case as no change (180 passed). Bump MKHINT_VERSION and man title to 1.2.1, rebuild mkhint.1.gz. Co-Authored-By: Claude Opus 4.8 --- mkhint.1.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'mkhint.1.md') diff --git a/mkhint.1.md b/mkhint.1.md index d9d751f..f4f43e0 100644 --- a/mkhint.1.md +++ b/mkhint.1.md @@ -1,4 +1,4 @@ -% MKHINT(1) mkhint 1.2.0 | User Commands +% MKHINT(1) mkhint 1.2.1 | User Commands % Danilo M. % July 2026 @@ -226,7 +226,10 @@ The URL is an upstream, machine-readable deps manifest (NAME_URL / NAME_SHA256 pairs); {VERSION} is substituted with the hint's version. For a listed package, \--new prints a reconcile report (no changes), and \--check reconciles the extra download lines against the manifest after the primary bump, rewriting changed -lines and recomputing their checksums. Bundled deps are never followed to their +lines and recomputing their checksums. A dep counts as changed only when its +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. -- cgit v1.2.3