-
AniTrack-2.0.0
StableRelease / release (push) Successful in 3m20sreleased this
2026-09-16 16:56:31 -04:00 | 1 commits to main since this releaseBug Fixes
- (frontend) Star rating hover via StarInput, retire overlay slider (
f63563c) - (frontend) Svelte 5 mount API and route-driven refresh (
515678f) - (frontend) Submit-time data flow (rating scale, table reactivity) (
e2c8ba1) - (frontend) Header swap breakpoint down to mobile width (
60ff980)
Documentation
- Record toolchain completion and version-source move (
e8a5768)
Miscellaneous Tasks
- (frontend) Svelte 5 / Vite 8 / Tailwind CSS 4 dependency set (
577c7d0) - (frontend) Tailwind v4 CSS-first config (
4087599) - (deps) Wails v3 beta.20 to beta.22 lockstep (
de808db) - (release) Bump version to 2.0.0 (
2ab5a08)
Refactor
Downloads
- (frontend) Star rating hover via StarInput, retire overlay slider (
-
AniTrack-1.99.1
StableRelease / release (push) Successful in 2m33sreleased this
2026-09-16 09:24:38 -04:00 | 13 commits to main since this releaseBug Fixes
- (install) Install webkitgtk-6.0 runtime per distro, refuse on musl (
5036e34) - (release) Make version bump re-runnable when already current (
5ce1094)
Documentation
- Point runners at install script, document self-updates (
bc1f4b1) - Record self-updates design and correct branch map (
948c2d3)
Features
- (updater) Custom Gitea releases provider with fail-closed verification (
e9b04c0) - (updater) Wire startup check for desktop production builds (
52fc656)
Miscellaneous Tasks
Downloads
- (install) Install webkitgtk-6.0 runtime per distro, refuse on musl (
-
AniTrack-1.99.0
StableRelease / release (push) Successful in 3m8sreleased this
2026-09-15 22:29:43 -04:00 | 21 commits to main since this releaseDocumentation
- Note webkitgtk-6.0 runtime requirement for running releases (
e3eecc5) - List webkitgtk-6.0 build packages and open 1.99.x beta series (
2881370) - Record dual version-file release automation (
4d31eda)
Miscellaneous Tasks
Downloads
- Note webkitgtk-6.0 runtime requirement for running releases (
-
AniTrack-1.6.8
StableRelease / release (push) Canceled after 20sreleased this
2026-09-12 21:27:12 -04:00 | 41 commits to main since this releaseBug Fixes
- (auth) Handle keyring open/set errors per service (
3bf5d82)
Documentation
- Add Wails v3 + Android migration plan (
2bddc6a)
Miscellaneous Tasks
- (release) Bump version to 1.6.8 (
336a1f3)
Other
- Revert "docs: add Wails v3 + Android migration plan"
The migration plan belongs to the wailsv3 branch, not main. It was merged forward into wailsv3 (now at origin/wailsv3) before this revert, so no content is lost. Main keeps only the v2 keyring error-handling fix. (
a19080e)Downloads
- (auth) Handle keyring open/set errors per service (
-
AniTrack-1.6.7
StableRelease / release (push) Successful in 11m52sreleased this
2026-09-11 16:22:46 -04:00 | 45 commits to main since this releaseMiscellaneous Tasks
- (release) Bump version to 1.6.7 (
a5da544)
Downloads
- (release) Bump version to 1.6.7 (
-
AniTrack-1.6.6-secrets-test
Pre-ReleaseRelease / release (push) Successful in 13m50sreleased this
2026-09-11 16:00:37 -04:00 | 46 commits to main since this releasefeat(ci): automate Linux release builds and Gitea releases
Local flow is now ./release 1.6.7 (or make release VERSION=1.6.7):
bump wails.json productVersion, commit the bump, generate git-cliff
notes into an annotated plain-version tag, and push commit plus tag.
The tag push fires the new Gitea Actions workflow.- cliff.toml: git-cliff groups matching Bookhoard, tag_pattern for
plain versions so --latest scopes correctly. - Makefile release target: strict plain-semver validation, dirty-tree
and existing-tag guards, python3 wails.json bump committed as
chore(release), throwaway-tag notes generation, push of main + tag. - release: wrapper normalizing v/AniTrack- prefixes to plain versions.
- .gitea/workflows/release.yml: version guard (wails.json vs tag,
base-match for -suffix pre-releases), Go 1.25 / Node 20 / Wails
v2.15.0 + webkit2_41 system deps, environment.go from Actions
secrets, make build, AniTrack-.tar.gz packaged from
build/ (bin, icon, desktop, install script, README), idempotent
Release create/update named AniTrack- with archive
attached via REGISTRY_TOKEN PAT.
Downloads
- cliff.toml: git-cliff groups matching Bookhoard, tag_pattern for
-
AniTrack-1.6.5 Stable
released this
2026-09-03 19:15:11 -04:00 | 50 commits to main since this releaseSearch Reliability Release
What changed
Search used to fail silently: when the AniList API hiccuped, the header
search box would just sit there (or never open) with no explanation.
This release makes every search outcome visible and stops the UI from
ever spinning forever.Fixed
- Search errors are now shown, not swallowed. Failures display a
Search failedpanel in the dropdown with the reason and a
Retry searchbutton. - Empty results have their own message. A search with no matches now
saysNo results found for "x". Try a different title.instead of
showing a blank dropdown. - No more indefinite spinner. The search button disables while a
request is in flight, stale late responses are ignored, and the
dropdown uses explicit open/close (plus Escape and outside-click to
dismiss) instead of a blind toggle. - Backend no longer panics on transport failures.
AniListQuery
returns early with user-safe messages on encode/request/network
errors and guards against nil responses and bodies.
Slow AniList days
- Backend request timeout set to 20s.
- The UI shows
Searching AniList...normally, flips to
AniList is slow today, still trying...at 8s, and only fails
withAniList is taking too long to respond. Please try again.at
30s — so a slow-but-alive API still succeeds instead of
false-failing. - Going offline fails immediately with
You appear to be offline.
instead of waiting out the timeout. - Rate limits (
429) and outages (5xx) now surface plain-language
messages, and GraphQLerrors[]are reported even on HTTP 200.
Commits
fcbcda7— fix(anilist): harden AniList query transport and search errorsd2f2f8a— fix(ui): make header search states explicit with slow-day timeouts
To verify
- Normal search → results list, selecting an entry navigates and closes.
- Offline search → immediate offline message, Retry once back online.
- Slow API → slow notice at ~8s, results still land if the API answers.
- Hung API → error with Retry at ~30s, never an endless spinner.
Downloads
- Search errors are now shown, not swallowed. Failures display a
-
AniTrack-1.6.2 Stable
released this
2026-09-01 20:26:29 -04:00 | 53 commits to main since this releaseSummary
This release fixes a long-standing breakage in the AniList "Sync Changes" flow on the anime page, along with the follow-up issues it uncovered in the MAL/Simkl sync path. Submitting changes now correctly saves to all connected services and updates the on-page services table.
Note: tag
1.6.1was an intermediate fix for the same overall issue. The changes below cover everything since1.6.0.What was broken
Clicking Sync Changes on an anime page:
- Sent a malformed GraphQL mutation to AniList, so changes were never actually saved to your AniList list.
- Because the app ignored AniList's error response, the page's AniList data was replaced with empty values — making it look like AniList had logged you off.
- Once errors were surfaced (1.6.1), a separate decoding bug caused the AniList response to fail parsing, which skipped the MyAnimeList and Simkl syncs entirely and left the services table unrefreshed.
Fixes
AniList
- Repaired the
SaveMediaListEntrymutation. The standardized media field block had been pasted in without itsmedia { … }wrapper, leaving media-level fields on the wrong type, list-level fields at the mutation root, and an unbalanced brace. The mutation now matches the tested API request, and entries save correctly again. - Fixed response decoding for array-shaped fields. AniList returns
airingSchedule.nodesandrelations.nodesas arrays, but the app's internal types declared them as single objects. Every full-media response failed to decode partway through. Both are now proper lists (with named sub-types), so responses decode completely — which also means genres and tags now refresh properly after a submit (the old copy-from-previous-value workaround has been removed). - Update and delete failures are no longer silent. The app previously discarded AniList's HTTP status and returned zeroed data on failure. Both
AniListUpdateEntryandAniListDeleteEntrynow report authentication errors, non-200 responses, and unparseable payloads, and log the status plus response body to the terminal for diagnosis.
Multi-service sync resilience
- One service failing no longer skips the others. Sync Changes and Delete Entries previously ran all three services inside a single error handler, so any AniList failure aborted the MyAnimeList and Simkl syncs without notice. Each service now runs in its own error-isolated block.
- Visible error reporting. If a service fails to sync, an error modal now names the service and the reason (with a retry option), instead of only logging to the developer console.
Internal
- Regenerated Wails frontend bindings for the corrected AniList types (
MediaAiringSchedule,MediaRelations,AiringScheduleNode, etc.). - Bumped
productVersionto 1.6.2.
Known issues
svelte-checkstill reports pre-existing type errors infrontend/wailsjs/go/models.tsandfrontend/src/helperDefaults/AniListGetSingleAnime.ts(generated/legacy types); these do not affect the build or runtime.
Downloads
-
Anitrack-1.6.0 Stable
released this
2026-08-29 13:26:40 -04:00 | 55 commits to main since this releaseAniTrack v1.6.0
More reliable MyAnimeList login
Two MyAnimeList login quirks are fixed:
- The "It is now safe to close your browser tab" dialog no longer appears for a silent background token refresh — it is now shown only when you actually complete a browser login.
- If both the access token and the refresh token are invalid, AniTrack now clears the stale tokens and automatically takes you through a fresh browser login, instead of leaving the app looking logged in without a username.
Login status indicators
When the app starts and verifies your accounts, the header now shows exactly what it's doing — Checking AniList, Checking MAL, and Checking Simkl — with spinners while each service is being resolved. The same spinners appear on the login entries in the user menu. No more wondering whether the app is stuck or whether you're actually signed in.
Toolchain & dependency updates
- Bumped the build toolchain to Go 1.25 and updated the associated
golang.org/xdependencies. - Upgraded Wails to v2.15.0, which unlocks the cross-platform notification API in the runtime bindings.
- Cleaned up
.gitignoreso compiled binaries and packaging archives are never committed.
Supported Services
Service Status AniList Sync, search, browse, genres, tags, sorting MyAnimeList Sync, search, automatic re-auth Simkl Sync, search What's Changed
- Rewrite the standard AniList media call with a shared typed model
- Regenerate Wails Go bindings for the AniList Browse feature
- Fix MyAnimeList silent token refresh showing a spurious browser dialog
- Auto re-login MyAnimeList when the refresh token is no longer valid
- Add per-service login status spinners to the header and user menu
- Upgrade Wails to v2.15.0 and Go to 1.25
- Ignore build binaries and archive artifacts in
.gitignore
Downloads
-
AniTrack-1.5.5 Stable
released this
2026-05-27 20:59:33 -04:00 | 64 commits to main since this releaseRelease Notes
v1.5.5
Bug Fixes
- Linux install script reliability and idempotency — Fixed tilde expansion by replacing quoted
~paths with$HOMEso they resolve correctly. Added existence checks before copying files so the script is idempotent and skips already-installed resources. Added progress/status echo messages for each installation step.
Chores
- Upgrade Go to 1.25 and update dependencies
- Bump Go toolchain from 1.24.0 to 1.25.0
- Upgrade Wails from v2.10.1 to v2.12.0
- Upgrade tidwall/gjson from v1.18.0 to v1.19.0
- Upgrade labstack/echo from v4.13.3 to v4.15.2
- Upgrade labstack/gommon from v0.4.2 to v0.5.0
- Upgrade samber/lo from v1.49.1 to v1.53.0
- Upgrade gorilla/websocket to v1.5.3 (new transitive dep)
- Upgrade go-webview2 from v1.0.19 to v1.0.23
- Upgrade danieljoos/wincred from v1.2.2 to v1.2.3
- Upgrade godbus/dbus/v5 from v5.1.0 to v5.2.2
- Upgrade jchv/go-winloader to latest
- Upgrade mattn/go-isatty from v0.0.20 to v0.0.22
- Upgrade tidwall/match from v1.1.1 to v1.2.0
- Upgrade golang.org/x/crypto, net, sys, term to latest
- Add go-toast/v2 as new transitive dependency from Wails
- Bump version to 1.5.5
Downloads
- Linux install script reliability and idempotency — Fixed tilde expansion by replacing quoted