Skip to content

feat(updates): add selectable release channels - #229

Merged
veryCrunchy merged 3 commits into
mainfrom
feat/update-channels
Jul 27, 2026
Merged

feat(updates): add selectable release channels#229
veryCrunchy merged 3 commits into
mainfrom
feat/update-channels

Conversation

@veryCrunchy

Copy link
Copy Markdown
Member

What changed

  • add an accessible Alpha and Nightly selector for direct APK installations
  • represent Beta and Stable as disabled future-compatible channels
  • persist stable lowercase channel identifiers and migrate older stored values
  • bind metadata checks and installation to the currently selected channel
  • invalidate stale check results when the channel changes
  • reject unavailable channels, cross-channel metadata, and Android version-code downgrades
  • classify Android 13+ local and downloaded package sources as direct APK installs while keeping known and unknown stores conservative
  • keep package, SDK, asset-size, checksum, release URL, signer, and signer-lineage validation in the install path

User impact

People who install Nextcloud Native directly can choose curated Alpha releases or the latest signed Nightly build without reinstalling or relying on an app store. Store-managed installations continue to follow their store and do not expose the selector.

Validation

  • 7 update-channel presentation and policy tests pass
  • 5 release metadata and channel-binding tests pass
  • 13 Android project-content and installer-source tests pass
  • repository hygiene, release contracts, ASCII hygiene, and diff checks pass
  • Android and shared tests run with JDK 21 and one build worker

Closes #228

@veryCrunchy veryCrunchy added this to the 0.6 Platform polish milestone Jul 27, 2026
@veryCrunchy veryCrunchy added priority:P0 Required for a trustworthy mobile replacement or prevents data loss area:platform Android, desktop, iOS, Windows, macOS, and Linux platform work area:release Builds, CI, security, packaging, and releases type:feature New product capability type:reliability Correctness, crash prevention, recovery, and data safety platform:android Android-specific implementation or validation labels Jul 27, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4d8c2b5fa9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread ui/src/commonMain/kotlin/dev/obiente/nextcloudnative/app/NextcloudNativeApp.kt Outdated
@veryCrunchy
veryCrunchy merged commit dca0bf3 into main Jul 27, 2026
2 checks passed
@veryCrunchy
veryCrunchy deleted the feat/update-channels branch July 27, 2026 03:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:platform Android, desktop, iOS, Windows, macOS, and Linux platform work area:release Builds, CI, security, packaging, and releases platform:android Android-specific implementation or validation priority:P0 Required for a trustworthy mobile replacement or prevents data loss type:feature New product capability type:reliability Correctness, crash prevention, recovery, and data safety

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(android): select and safely update Alpha or Nightly builds

1 participant