Skip to main content

Module app_update

Module app_update 

Source
Expand description

Typed application update discovery, verification, and platform installation.

An update is the one download an application performs that can replace the application, so what arrives is checked against what was promised before it reaches a platform installer. The check lives here, once, rather than in each platform’s installer: a digest computed four different ways is four chances to compute it wrongly, and one of them will be the one nobody tested.

Structs§

AppUpdateCapabilities
What an update backend can do on this platform.
AppUpdateObserver
Registration returned by observe_app_update_status.
DigestVerifier
Checks a package as it is read, so a package too large to hold in memory is still checked.
GitHubReleaseUpdate
A GitHub release feed used to discover an application package.
PackageDigest
The digest a downloaded package must match.
UpdatePackage
A package an update would install.

Enums§

AppUpdateError
Failure to start an update operation.
AppUpdateStatus
Observable state of the application update flow.
DigestAlgorithm
How a package’s bytes are checked against what the release promised.

Traits§

AppUpdater
Platform implementation for update discovery and package installation.

Functions§

app_update_capabilities
What this host can do about application updates.
app_update_checks_supported
Returns whether this host can discover a newer release.
app_update_status
Returns the latest update state.
app_updates_supported
Returns whether this host can install application updates.
check_for_app_update
Starts update discovery and publishes the initial state.
clear_platform_app_updater
Removes the platform updater.
install_app_update
Starts package installation and publishes the initial transfer state.
observe_app_update_status
Observes update state changes. The current state is delivered immediately.
set_app_update_status
Publishes state from a platform updater.
set_platform_app_updater
Installs the platform updater.
sha256_hex
The SHA-256 of bytes, as lower-case hexadecimal.
verify_package
Checks a package held in memory against digest.

Type Aliases§

AppUpdaterRef
Shared updater service.