| Age | Commit message (Collapse) | Author | Files | Lines |
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Add a 'Config file:' line to the help output reporting whether
$MKHINT_CONFIG is present and sourced or absent (defaults in use).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Bump MKHINT_VERSION to 1.1.0, close CHANGELOG [Unreleased] as [1.1.0].
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
|
|
|
|
|
|
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Config file at ~/.config/mkhint/config sourced with baked-in defaults,
moving REPO_DIR/HINT_DIR (and new PACKAGES_DIR) out of hardcoding in both
mkhint and the completion script. --check/--hintfile pick `slackrepo build`
for packages not yet in the repo, `update` for existing ones.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
BREAKING CHANGE: the hint-version flag is now -V/--set-version. -v/--version
now prints the tool's own version and exits.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Equal versions keep the yellow row (and MATCHED_PKGS for -R). When
versions differ, sort -V picks the newer side and only that cell is
green. New DelReq column (before Created) shows a check when the hint
has a populated DELREQUIRES. Tests T60-T64 added.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
With package names, --list skips the table and shows each named
hint diffed against its .info (git diff --no-index, else diff -y),
missing hint exits 2. Diff display extracted to _show_hint_diff,
shared with --review. Bash completion completes hint names after
-l. Adds T58, T59.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
--list now skips hint files with no VERSION (e.g. pure DELREQUIRES
hints) and excludes them from the total. Version columns widened
10->22 to fit long version strings without shifting other rows.
Adds T57.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
SBo SlackBuilds target stable; some build deps (rust-opt, google-go-lang)
are unneeded on -current. Auto-add DELREQUIRES for these instead of writing
a hintfile per dependent by hand.
- Read the phantom-dep list from ~/.config/mkhint/phantom-deps (one per
line, # comments; missing file = no-op).
- --fix-current / -F: sweep the repo, ensure every package whose REQUIRES
contains a phantom dep carries the matching DELREQUIRES. Create a minimal
hint if absent, back up and merge into an existing hint otherwise.
Idempotent, no prompts, mutually exclusive with -v/-f/-n.
- --new: auto-append DELREQUIRES for phantom deps found in the .info.
- Tests T50-T56; docs and bash-completion updated.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Explain that upstream 2026-06-02 and packaged 2026_06_02 are treated as
the same version (SlackBuild versions cannot contain '-'), applied in
--check and --hintfile, with updates stored in underscore form.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
SlackBuild versions cannot contain '-' (it breaks PRGNAM parsing), so an
upstream date like 2026-06-02 is packaged as 2026_06_02. mkhint was
comparing them byte-for-byte and offering a spurious upgrade/downgrade.
Add _normalize_version ('-' -> '_') and apply it to the upstream version
in --check and --hintfile (no -v) before comparing and before storing, so
equivalent versions compare equal and accepted updates are written in the
underscore form. nvtake still uses nvchecker's raw keyfile value.
Tests T48/T49 cover equivalence and normalized storage (105 passing).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
local X=$(cmd) masks the command exit code under set -e; split into
declaration then assignment at the four remaining sites. Quote unquoted
path expansions (dlfile, HINT_DIR, REPO_DIR, info, normalized_file).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
When --check is given exactly one package, and when --hintfile suggests a
version without -v, run `nvchecker -e <pkg>` so only that entry is scanned
instead of the whole nvchecker.toml. Two+ packages or no args still do one
full scan, since nvchecker -e accepts only a single entry.
Add T42/T43 (mock nvchecker now logs its args), and update CLAUDE.md and
README.md (including the previously undocumented -R/--review and -l highlight).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
- --new appends nvchecker [section] (github/pypi autodetect, else stub)
- --hintfile without -v suggests latest version via nvchecker
- --check/-C bulk update with per-package confirm + single slackrepo
- --check populate missing sections prompt
- fix: TOML-quote section names with non-bare-key chars
- fix: resolve relative keyfile path against config dir
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
nvchecker resolves a relative oldver/newver/keyfile path against the config
file's directory, not the CWD. _nvchecker_newver_path returned the raw
relative string (e.g. "new_ver.json"), so nvchecker_latest's [[ -f ]] check
ran against whatever CWD 'mkhint -C' was launched from — almost never the
config dir. Result: every package reported 'no nvchecker result' and the run
said 'all up to date' despite nvchecker having found updates.
Resolve non-absolute keyfile paths against dirname(NVCHECKER_CONFIG). T35
covers a relative newver path with the keyfile beside the config.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Section names with '.', '-', etc. must be TOML-quoted (e.g. ["yt-dlp"]),
otherwise nvchecker fails to parse them. add_nvchecker_section wrote bare
[pkg] headers, so such names had to be hand-quoted. Worse, _has_nvchecker_section
only matched the bare form, so already-present quoted sections were reported as
missing and re-flagged for populate on every 'mkhint -C' run.
Add _nvchecker_label helper as the single source of truth for the written
label (bare iff name matches ^[A-Za-z0-9_]+$, else double-quoted), used by
both the write side (3 section headers + messages) and the read side
(_has_nvchecker_section grep, with regex metachars escaped so '.' is literal).
Tests T32-T34 cover quoted-header write, no-duplicate on re---new, and
--check recognizing an existing quoted section.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|