MeshMonitor v4.1.2
This patch release hardens the auto-upgrade flow with a failure circuit breaker, fixes timezone handling in the Alpine runtime image by including tzdata, and resolves a PostgreSQL/MySQL coherency bug in the in-memory nodes cache. Two map-analysis improvements ship as well: a tileset selector overlay on the analysis canvas and a per-source filter for embed profiles. Tooling now uses exit-code-driven CI and release watchers to keep model context out of the polling loop. Translations refreshed from Hosted Weblate.
Features
- Embed profiles — per-source filter on embed profiles (#2878)
- Map analysis — tileset selector overlay (#2877)
Bug Fixes
- Auto-upgrade — circuit breaker halts repeated failure loops on docker-compose pinned images (#2879, closes #2871)
- Docker — install
tzdatain Alpine runtime so timezone settings work (#2876, closes #2875) - Multi-DB — keep PG/MySQL
nodesCachecoherent via NodesRepository hook (#2873)
CI/DevOps
- Exit-code-driven CI/Release watchers +
/release-monitorskill (#2870)
Translations
- Translations update from Hosted Weblate (#2851)
Issues Resolved
- #2871 — Auto-upgrade silently loops forever on docker-compose pinned images
- #2875 — Timezone not honored in Alpine runtime
Upgrade Notes
No breaking changes. Standard upgrade path.
Full changelog: v4.1.1...v4.1.2
🚀 MeshMonitor v4.1.2
📦 Installation
Docker (recommended):
docker run -d \
--name meshmonitor \
-p 8080:3001 \
-v meshmonitor-data:/data \
ghcr.io/Yeraze/meshmonitor:4.1.2🧪 Testing
✅ All tests passed
✅ TypeScript checks passed
✅ Docker images built for linux/amd64, linux/arm64, linux/arm/v7
📋 Changes
See commit history for detailed changes.