Skip to content

feat(core): implement AppUpdaterService with GitHub Releases and SHA256 (#280) - #293

Merged
ZhuchkaTriplesix merged 2 commits into
devfrom
issue/280-app-updater-service
Jul 10, 2026
Merged

feat(core): implement AppUpdaterService with GitHub Releases and SHA256 (#280)#293
ZhuchkaTriplesix merged 2 commits into
devfrom
issue/280-app-updater-service

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Summary

  • Add Phase 1 auto-update core per Obsidian spec 06 — Планирование/Система автообновления десктопа.md.
  • AppUpdaterService.checkForUpdates() polls GitHub Releases (stable → /latest, dev → /releases list) and compares SemVer against PackageInfo.
  • downloadAsset() fetches SHA256SUMS.txt, verifies SHA256 before returning the temp file; mismatch throws UpdateChecksumMismatchException.
  • Preferences hooks: UpdateChannel (stable/dev) and checkForUpdatesOnStartup in AppSettings.

Fixes #280.

Test plan

  • flutter test test/core/updater/
  • flutter test test/core/storage/app_settings_test.dart
  • flutter analyze lib/core/updater lib/core/storage/app_settings.dart
  • Manual: call AppUpdaterService.instance.checkForUpdates() against real GitHub Releases API

…56 (#280)

Add Phase 1 auto-update core: SemVer version gate, GitHub Releases client,
SHA256 manifest verification on download, and update channel preferences
(stable vs dev) with optional startup background check hook.
@github-actions github-actions Bot added enhancement New feature or request core Core library logic and services labels Jul 10, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit e232570 into dev Jul 10, 2026
4 checks passed
@ZhuchkaTriplesix ZhuchkaTriplesix self-assigned this Jul 12, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix deleted the issue/280-app-updater-service branch July 26, 2026 14:39
ZhuchkaTriplesix added a commit that referenced this pull request Jul 27, 2026
feat(core): implement AppUpdaterService with GitHub Releases and SHA256 (#280)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core Core library logic and services enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant