You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix: a newer release could stay hidden behind one already shown that day
_should_show_update_notice() tracked only a last-shown date, so once
the banner had shown once for the daily/weekly/monthly window, any
later release published that same period stayed hidden until the
window reset — even though it was a genuinely different, newer
release than the one already seen. Found via a live report: a Spin5
install on 2157 didn't surface a same-day 2306 release because 2157
had already been shown once that day.
Now the last-shown *tag* is tracked alongside the date, and a release
whose tag doesn't match what was last shown always gets through
immediately, regardless of the frequency window — the setting only
throttles repeat notices about a release you've already seen.
Also gives the Update Now button a downloading spinner, since the
confirm-then-nothing-visible gap during the real download made it
look like the click hadn't registered.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@@ -2605,6 +2605,24 @@ Each entry below has a bold title and a plain-language description — anywhere
2605
2605
2606
2606
#### August 31 program updates
2607
2607
2608
+
**FIX: A NEWER RELEASE COULD STAY HIDDEN BEHIND ONE ALREADY SEEN THAT DAY**
2609
+
2610
+
The daily/weekly/monthly notification-frequency setting was meant to throttle repeat notices about the *same* release, not hide a *different, newer* one that showed up later the same day — but that's what it was doing: once the banner had shown once today, a second release published an hour later wouldn't surface until tomorrow. It now always shows a release you haven't been told about yet, regardless of the frequency window; the frequency setting only limits repeat notices about a release you've already seen.
2611
+
2612
+
**THE UPDATE NOW BUTTON NOW SHOWS A DOWNLOADING SPINNER**
2613
+
2614
+
Clicking Update Now used to leave the button sitting there with no feedback while the new binary downloaded in the background — easy to mistake for nothing having happened, especially on a slower connection. It now disables itself and shows a spinner with "Downloading…" the moment you confirm, so it's clear the update is actually in progress.
2615
+
2616
+
```
2617
+
Scope: web/backend.py (_should_show_update_notice() now takes the candidate
2618
+
release's tag and only applies the frequency window when it matches the tag
2619
+
last shown — a new prefs.json key, update_notice_last_shown_tag, tracks
2620
+
this). web/templates/home.html (Update Now form's confirm handler moved out
2621
+
of an inline onsubmit into a proper <script> block, disables the button and
2622
+
swaps in a Bootstrap spinner on confirm). tests/test_web.py (new coverage
2623
+
for the frequency-vs-newer-release interaction).
2624
+
```
2625
+
2608
2626
**CHOOSE HOW OFTEN YOU'RE TOLD ABOUT NEW VERSIONS, AND ALWAYS SEE YOUR CURRENT ONE**
2609
2627
2610
2628
Settings now has an "Update Notifications" section where you can set how often the "new version available" banner shows up on the home page: daily (the default), weekly, or monthly. The banner's build note also names that setting directly, with a link to change it. Separately, the home page now always shows a line under the Welcome heading — "Current version date: yyyy-mm-dd:hhmm" — so you can check exactly what you're running, down to the minute, without scrolling to the page footer; whenever a build note is set it follows in parentheses as "(Version note: ...)" on that same line. The build note no longer gets its own standalone box further up the page. See [What you see on the home page](#home-page-tour) for the full rundown, including exactly when the update check itself runs.
onsubmit="return confirm('Download and install NutriMagnus ' + '{{ update_available.tag }}' + ' now? This replaces the running program; your data is untouched. You will need to quit and reopen NutriMagnus afterward.');">
0 commit comments