Skip to content

Check this fork for updates, not the repository it was forked from - #14

Merged
JDS300 merged 1 commit into
mainfrom
fix/point-updates-at-this-fork
Aug 14, 2026
Merged

Check this fork for updates, not the repository it was forked from#14
JDS300 merged 1 commit into
mainfrom
fix/point-updates-at-this-fork

Conversation

@JDS300

@JDS300 JDS300 commented Aug 14, 2026

Copy link
Copy Markdown
Owner

Both updaters that arrived with upstream itsspin#72 queried itsspin/spinips, and electron-builder's publish target named it too. A build of this fork asked upstream what the newest release was.

What each updater does, and why this matters differently for each

Runs on Wants from the release Effect of pointing at upstream
portable-updater.ts Windows only — it downloads Loremaster.exe and swaps it via a PowerShell wrapper Loremaster.exe, SHA256SUMS.txt Offers upstream's build, which has none of this fork's Linux work
spinui-updater.ts every platform — it updates skin files in the EQ directory SpinUI-UI.zip, SpinUI-Update.json, SHA256SUMS.txt Installs upstream's skins over this fork's

The skin updater is the one that runs on Linux, so it was the live problem.

Why this fork is a coherent target

Every asset both updaters want is already published by this fork's own release jobs — Loremaster.exe from the Windows job, SpinUI-UI.zip and SpinUI-Update.json from the UI job, with SHA256SUMS.txt alongside. So this is not swapping one broken target for another.

Left alone deliberately

  • The item lookup User-Agent in item-intelligence.ts still cites the upstream project. It identifies where the software comes from and is not an update path.
  • The updater tests keep their upstream fixture URLs. Both updaters validate the download host (OFFICIAL_DOWNLOAD_HOSTS) rather than the repository, so the fixtures remain valid — and unchanged fixtures stay mergeable with upstream.

Bearing on RC releases

Both updaters skip draft and prerelease releases (portable-updater.ts:256, spinui-updater.ts:442). With this change they skip this fork's prereleases, so an RC published here is installable by hand and never auto-offered.

Worth knowing for RC testing: the app self-update path is Windows-only — it looks for a portable .exe. A Linux AppImage has no self-update at all, so an RC AppImage is inherently a manual install, and the skin updater running beside it will still see only full releases.

Verification

  • Release quality gate: ALL PASS (run under TZ=UTC, as CI does)
  • tsc --noEmit (renderer): clean

🤖 Generated with Claude Code

Both updaters queried itsspin/spinips, and electron-builder's publish target
named it too. A build of this fork therefore asked upstream what the newest
release was: for the desktop app that is a release whose Linux artifacts do
not exist upstream at all, and for the SpinUI skins it is a different set of
skin files from the ones this fork builds and ships.

The release assets each updater wants -- Loremaster.exe for the app, and
SpinUI-UI.zip, SpinUI-Update.json and SHA256SUMS.txt for the skins -- are all
published by this fork's own release jobs, so pointing at this repository is
what makes the update paths coherent rather than merely differently wrong.

Left alone deliberately: the item lookup User-Agent still cites the upstream
project, which is where the software comes from and is not an update path, and
the updater tests keep their upstream fixture URLs because both updaters
validate the download host rather than the repository, so the fixtures stay
valid and stay mergeable with upstream.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@JDS300
JDS300 merged commit 237f952 into main Aug 14, 2026
6 checks passed
@JDS300
JDS300 deleted the fix/point-updates-at-this-fork branch August 14, 2026 13:48
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