Skip to main content

Module changelog

Module changelog 

Source
Expand description

Changelog fetching and parsing.

Port of the upstream changelog utility. Bundled release notes power startup notices and /changelog without a source checkout or network request. Optional remote fetching remains available to consumers, with the same versioned-entry parser.

The remote URL is overridable with RPI_CHANGELOG_URL so a fork can point at its own changelog without a rebuild.

Structs§

ChangelogEntry
One released version’s changelog section.
StartupChangelog

Constants§

DEFAULT_CHANGELOG_URL
Default remote changelog URL. Overridable via RPI_CHANGELOG_URL.

Functions§

bundled_entries
Release notes shipped with this binary, usable without network or checkout.
changelog_url
The remote changelog URL to use, honoring RPI_CHANGELOG_URL.
fetch_changelog
Fetch the changelog body. allow_network == false returns Ok(None).
format_entries
latest_release
Default command view: the latest shipped release at or below this binary’s version.
load_entries
Fetch and parse the changelog, newest first. Best-effort: a network failure yields an empty list rather than an error.
parse_changelog
Split a changelog into versioned entries (native parseChangelog).
rpi_baseline
Migrate only legacy markers that name a release in rpi’s bundled history. A foreign version (for example Pi 0.85.1) must not suppress rpi updates.
startup_changelog
Pi parity: first install records a baseline; upgrades show unseen releases; existing transcripts and downgrades do not consume or regress that baseline.
startup_changelog_for_profile
Existing profiles without an rpi baseline see the current release once; genuinely fresh installs record a baseline without replaying old history.