fix(updater): keep auto-updater alive across watcher restarts (v0.4.1)
Saving the Settings dialog calls _restart_watcher, which set+replaced the shared stop_event the updater loop also keyed off — so a settings save silently killed the auto-updater thread (race: survived one save, died on the next). Heartbeats kept flowing but the agent stopped checking for / applying updates until relaunch. Give the updater its own app-lifetime event (_app_stop), set only on Exit / when applying an update and untouched by watcher restarts. Adds test_thor_tray.py (4 lifecycle tests). Bump to v0.4.1. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Thor Watcher
|
||||
|
||||
**Version:** 0.4.0
|
||||
**Version:** 0.4.1
|
||||
|
||||
Micromate (Series 4) watcher agent for Terra-View fleet management. Runs as a Windows system tray application, scans THORDATA for Micromate unit activity, sends heartbeat data to Terra-View, and (optionally) forwards `.IDFH`/`.IDFW` event files to a seismo-relay SFM server. Heartbeats and events can optionally be **mirrored** to a second server (e.g. a standby/NAS) in addition to the primary.
|
||||
|
||||
@@ -29,7 +29,7 @@ build.bat
|
||||
```
|
||||
|
||||
Produces:
|
||||
- `dist\thor-watcher-0.4.0.exe` — upload to Gitea release
|
||||
- `dist\thor-watcher-0.4.1.exe` — upload to Gitea release
|
||||
- `dist\thor-watcher.exe` — use with Inno Setup
|
||||
|
||||
Then run Inno Setup Compiler on `installer.iss` to produce `thor-watcher-setup.exe`.
|
||||
@@ -139,7 +139,7 @@ Posted to `api_url` on each API interval:
|
||||
{
|
||||
"source_id": "THOR-PC",
|
||||
"source_type": "series4_watcher",
|
||||
"version": "0.4.0",
|
||||
"version": "0.4.1",
|
||||
"generated_at": "2026-03-20T14:30:00Z",
|
||||
"log_tail": ["...last 25 log lines..."],
|
||||
"units": [
|
||||
|
||||
Reference in New Issue
Block a user