Version: pldmgr v0.5.1 | Custom repository version field ignored for update detection when filename contains no version string #95
Labels
No labels
bug
cant-reproduce
documentation
duplicate
enhancement
good first issue
help wanted
invalid
low-priority
question
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-itsPLK/ps5-payload-manager#95
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description | Version: pldmgr v0.5.1
The
versionfield in custom repository JSON is documented as being used for update checks, but the manager currently determines the installed version by parsing it back out of the saved filename — not from stored metadata. This means update detection silently fails for any payload whose filename doesn't include the version string.Steps to reproduce
rdx-sci01custom repository:https://rdx-sci01.github.io/PLDMGR_JSON/payloads.jsonversionfield — e.g.kstuff(filename: "kstuff.elf",version: "v1.10") orbfpilot(filename: "bfpilot.elf",version: "v0.4.4")Expected behaviour
The
versionfield in the repository JSON is used to compare against the installed version, triggering an update notification when it changes — regardless of the filename format.Actual behaviour
No update is detected. The manager tries to extract a version from the local filename (e.g.
kstuff.elf), finds none, and cannot compare — effectively ignoring theversionfield entirely.Why this matters
CUSTOM_REPOSITORIES.mdexplicitly documentsversionas:There is a clear documented contract being broken. Many real-world community repositories use plain filenames (no version in the name), so this affects a broad set of third-party sources.
Root cause
At download time, the manager saves the file but does not persist the
versionvalue from the JSON alongside it. Later, when checking for updates, it re-parses the filename to infer the installed version — which fails for plain filenames likekstuff.elforbfpilot.elf.Note: v0.3.3 fixed the display of the version label (showing it from the JSON field instead of guessing from the filename) — but the update comparison is still broken because the installed-side version still comes from filename parsing.
Suggested fix
At download time, store the
versionvalue from the JSON in local payload metadata (alongside the filename, source URL, etc.). Use this stored value — not a re-parsed filename — when comparing against the repository's currentversionon update checks.Workaround for repository maintainers (short-term)
Embed the version in the
filenamefield so the manager can parse it:The
urlstill points to the actual file; the local copy is saved with a versioned name the manager can parse. This is a workaround — the proper fix belongs in the manager.i found this issue also when i added my custom source repository. in payload-manager, i wasn't getting any update shown next to payloads which has updated version available on github