Skip to content

feat: auto-update mechanism via Sparkle #48

Description

@sfegette

Summary

Add an auto-update mechanism to radcap using the Sparkle framework, consistent with how it was implemented in grapfel. This allows users to receive updates without manually downloading new builds.

Desired behavior

  • Integrate Sparkle 2.x via Swift Package Manager
  • App checks for updates on launch (and optionally on a background timer)
  • Standard Sparkle UI for update prompts, release notes, and install flow
  • Appcast XML hosted somewhere stable (GitHub Releases asset or a static URL)
  • Update check should respect user preference (opt-out in Settings if desired)

Implementation notes

  • Reference the grapfel integration for SPM dependency declaration, entitlements, and appcast setup — same pattern should apply here
  • Confirm Hardened Runtime / notarization compatibility (Sparkle 2 supports this)
  • App Store build path should remain Sparkle-free (MAS has its own update mechanism); Sparkle only ships in the direct-download export

Open questions

  • Appcast hosting URL (GitHub Releases asset vs. dedicated endpoint)
  • Update check frequency default

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions