feat(update): implement automatic version check with tray integration#27
Merged
flexiondotorg merged 4 commits intomainfrom Mar 23, 2026
Merged
feat(update): implement automatic version check with tray integration#27flexiondotorg merged 4 commits intomainfrom
flexiondotorg merged 4 commits intomainfrom
Conversation
…ation - Add electron-updater ^6.8.3 as production dependency - Configure GitHub release publishing in package.json build config - Add AppImage artifact naming for Linux builds - Add autoUpdate.enabled schema to config store with getter/setter - Default auto-update to enabled when setting is absent Signed-off-by: Martin Wimpress <code@wimpress.io>
…dates - Add autoUpdate.ts module with platform detection for AppImage and NSIS - Initialize auto-update process with download and install workflows - Add i18n strings for downloading, ready, and failed update states - Integrate auto-update into main.ts with fallback to manual checking - Add ready state tracking to UpdateInfo interface - Update tray menu to show "Restart to update" when update ready Supports automated updates on AppImage (Linux) and NSIS (Windows) platforms with user notifications and restart prompts via electron-updater. Signed-off-by: Martin Wimpress <code@wimpress.io>
… to build - Add comprehensive Auto-update section to SPECIFICATION.md covering platform detection, lazy require constraints, CastLabs ECS compatibility, and config - Document electron-updater constraints: lazy-require pattern, manifest filenames, code signing requirements, and AppImage artifactName format - Update AGENTS.md i18n record count from 9 to 12 reflecting UPDATE_* text additions - Add libxcrypt-legacy to flake.nix build dependencies for fpm Ruby compatibility on NixOS (resolves libcrypt.so.1 lookup failures in deb/rpm builds) Signed-off-by: Martin Wimpress <code@wimpress.io>
Contributor
There was a problem hiding this comment.
1 issue found across 12 files
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="src/autoUpdate.ts">
<violation number="1" location="src/autoUpdate.ts:64">
P2: Interpolate `{version}` in the update notification title; it currently renders the placeholder literally.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
- Replace template placeholder in updateAvailable string with actual version - Apply in both checkForUpdates (update.ts) and initAutoUpdate (autoUpdate.ts) Signed-off-by: Martin Wimpress <code@wimpress.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements a complete automatic update mechanism for Sidra, enabling seamless version management and user notifications through the system tray. This implementation spans configuration setup, electron-updater integration, internationalization support, and build verification.
Changes
Technical Implementation
Testing
Related Issues
Implements automatic version checking and user-facing update notifications for improved user experience and security patching distribution.