Repository navigation
Report a renamed repo kernel's update in update --versions (4.0.0-B6) - #18
Merged
Merged
Conversation
With [kernel] source = "repo" and a local pkgname such as linux-sysforge, the stage-owned advisory asked the sync DB for the renamed name, which no repo carries, so the miss silently dropped the kernel from update --versions and the end-of-run reminder. Fall back to origin_pkgbase, the stock name the repo pin already queries (2.1.0-B12). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
With
[kernel] source = "repo"and a local name such aspkgname = "linux-sysforge",sysforge update --versionsnever listed a pending kernel update (seen live: 7.2.9 installed, 7.2.11 in the repos, nothing reported). The end-of-run reminder in a normalupdatemissed it too._stage_owned_repo_advisoryasked the sync DB for the renamed name. No repo carrieslinux-sysforge, soget_pacman_sync_versionreturnedNoneand the advisory was dropped silently (it's best-effort by design, 3.0.0-B1).Fix
If the renamed name isn't in the sync DB, retry with the entry's
origin_pkgbase(linux). The repo pin already queries that same name (sync_db_name, 2.1.0-B12); the advisory added later in 3.0.0-B1 never got the fallback. Packages that aren't renamed have noorigin_pkgbaseand behave as before.I also corrected a comment in
update_version.pythat called its read oforigin_pkgbasethe only one in the update path.update_sync.pyalready read it, and now the advisory does too.Tests
test_detect_stage_owned_repo_renamed_kernel_queries_origin: a renamed kernel split set (linux-sysforge+-headers) and a sync DB that knows onlylinux. It failed before the fix, returning[].check-standards,check-surface,check-designandlintare clean.update --versionsnow printslinux-sysforge 7.2.9.arch1-1 → 7.2.11.arch1-1 [kernel].Tier: unit tests are enough. The defect is a name lookup against the local sync DB, which the unit test stubs at
get_pacman_sync_version. It doesn't depend on what the live repos contain (the rename is local), on root/user state, or on a real terminal.🤖 Generated with Claude Code