Skip to content

Report a renamed repo kernel's update in update --versions (4.0.0-B6) - #18

Merged
KeithRaghubar merged 1 commit into
mainfrom
fix/renamed-kernel-versions
Nov 1, 2026
Merged

KeithRaghubar merged 1 commit into
mainfrom
fix/renamed-kernel-versions

Conversation

@KeithRaghubar

Copy link
Copy Markdown
Owner

Problem

With [kernel] source = "repo" and a local name such as pkgname = "linux-sysforge", sysforge update --versions never 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 normal update missed it too.

_stage_owned_repo_advisory asked the sync DB for the renamed name. No repo carries linux-sysforge, so get_pacman_sync_version returned None and 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 no origin_pkgbase and behave as before.

I also corrected a comment in update_version.py that called its read of origin_pkgbase the only one in the update path. update_sync.py already read it, and now the advisory does too.

Tests

  • New test_detect_stage_owned_repo_renamed_kernel_queries_origin: a renamed kernel split set (linux-sysforge + -headers) and a sync DB that knows only linux. It failed before the fix, returning [].
  • Full suite: 7731 passed. check-standards, check-surface, check-design and lint are clean.
  • Checked live: update --versions now prints linux-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

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>
@KeithRaghubar
KeithRaghubar merged commit 22cd13b into main Nov 1, 2026
3 checks passed
@KeithRaghubar
KeithRaghubar deleted the fix/renamed-kernel-versions branch November 1, 2026 23:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant