fix(catalog): follow the difftastic and byobu release naming changes - #150
Conversation
difftastic 0.71.0 names its release files difft-0.71.0-<arch>-...;
0.70.0 used difft-<arch>-.... The download URL template now includes
{version}, so the upgrade stopped failing with "Download failed".
byobu tags releases as trustmux-v7.19 as well as 7.19 since the
trustmux rename. The trustmux-v tags fill the first page of the tags
API, and the installer only accepted plain version tags, so it stopped
with "Invalid stable version: <none>". get_target_tag now accepts both
forms, prefers the plain tag for equal versions, and the archive URL
uses the tag while the version check uses the number.
Assisted-by: claude-code:claude-opus-5
Agent-Session: https://claude.ai/code/session_017qjwSFFBZpMj3uw5bPdrnD
Agent-Host: 0493f0
Signed-off-by: Sebastian Mendel <sebastian.mendel@netresearch.de>
|
Warning Review limit reachedNext included review available in 24 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (5)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Manual run from this branch: |
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Review findings:
- install_byobu.sh install 7.20 built the URL from the plain tag only.
If a release exists only as trustmux-v7.20, the download failed; and
"install trustmux-v7.19" failed the version check. The installer now
strips the prefix for the version check, and for a plain version it
tries the plain tag first, then trustmux-v<version>.
- difftastic asset_pattern is documented as a regex
(docs/CATALOG_GUIDE.md); use difft-.*-x86_64-... instead of a
{version} placeholder. No code reads the field today.
Assisted-by: claude-code:claude-opus-5
Agent-Session: https://claude.ai/code/session_017qjwSFFBZpMj3uw5bPdrnD
Agent-Host: 0493f0
Signed-off-by: Sebastian Mendel <sebastian.mendel@netresearch.de>
|
|
Self-review: b734c05 The bot review this pull request demands is unsatisfiable (Copilot quota wall or repeated bot failures on this head). The diff on this head was reviewed by the PR author; this comment is the on-the-record attestation the merge gate reads back. It stops matching on the next push. |



Summary
After merge, difftastic and byobu can be upgraded again. Both upstreams changed their release naming, and each change broke one installer.
difft-0.71.0-x86_64-unknown-linux-gnu.tar.gz. Up to 0.70.0 the name had no version (difft-x86_64-unknown-linux-gnu.tar.gz). The catalog URL template now includes{version}. Before this change the upgrade stopped with "Download failed".7.19andtrustmux-v7.19. Thetrustmux-v*tags and their release candidates fill the whole first page of the tags API, and the installer accepted only plain version tags. It stopped with "Invalid stable version: ".get_target_tagnow accepts both forms and prefers the plain tag when the versions are equal. The archive URL uses the tag, and the version check uses the number. An explicitinstall_byobu.sh install 7.20tries the plain tag first, thentrustmux-v7.20.Type of change
fix:)Test plan
uv run pytest tests/ --ignore=tests/integration: 793 passed, 1 skipped./scripts/test_smoke.sh: exit 0trustmux-v7.20rc5,trustmux-v7.19, …). It fails when the old tag filter is restored.make upgrade-difftasticandmake upgrade-byobufrom this branch (results in a comment below)Checklist
CHANGELOG.mdupdatedAssisted by claude-code:claude-opus-5 — Session