Enums§
- Release
Channel - The release channel to query for updates.
- Release
Query - Describes where to fetch release metadata from.
Constants§
- CHECKSUM_
MANIFEST_ ASSET - Filename of the SHA-256 checksum manifest included in every release.
- CNB_
MIRROR_ ENV - Environment variable that, when set, enables the CNB mirror for downloads.
- CNB_
REPO_ URL - Base URL of the CodeWhale repository on the CNB mirror platform.
- DEEPSEEK_
RELEASE_ BASE_ URL_ ENV - Legacy environment variable (alias for
RELEASE_BASE_URL_ENV). - LATEST_
RELEASE_ URL - GitHub API URL for the single latest stable release.
- LEGACY_
RELEASE_ BASE_ URL_ ENV - Legacy environment variable (alias for
RELEASE_BASE_URL_ENV). - LEGACY_
UPDATE_ VERSION_ ENV - Legacy environment variable (alias for
UPDATE_VERSION_ENV). - RELEASES_
URL - GitHub API URL listing recent releases (up to 100), used to find beta tags.
- RELEASE_
BASE_ URL_ ENV - Environment variable that overrides the base URL for release asset downloads.
- UPDATE_
USER_ AGENT - User-Agent header sent with release metadata requests.
- UPDATE_
VERSION_ ENV - Environment variable that pins the update target version.
Functions§
- cnb_
release_ base_ url - Constructs the CNB mirror asset URL for a given version tag.
- compare_
release_ versions - Compares a current version string against a release tag using semver
ordering. Both
vprefixes and trailing build metadata (e.g.(abc123)) are stripped before comparison. - fetch_
release_ json_ async - Async counterpart of
fetch_release_json_blocking. - fetch_
release_ json_ blocking - Fetches a release JSON payload from
urlusing a blocking HTTP client. - is_
beta_ tag - Returns
trueif the tag name contains"beta"(case-insensitive). - latest_
beta_ tag_ from_ release_ list_ json - Scans a GitHub release-list JSON response and returns the tag of the first
entry whose name contains
"beta". - latest_
release_ tag_ async - Async helper that resolves the latest release tag for the given channel.
- latest_
release_ tag_ blocking - Blocking counterpart of
latest_release_tag_async. - latest_
tag_ from_ release_ json - Extracts the
tag_namefield from a GitHub single-release JSON response. - mirror_
asset_ url - Joins a mirror base URL with an asset filename to produce a full download URL.
- parse_
release_ version - Parses a version string (with optional
vprefix and trailing build info) into asemver::Version. - release_
base_ url_ from_ env - Reads the release base URL from environment variables, falling back to the
CNB mirror if
CODEWHALE_USE_CNB_MIRRORis set. ReturnsNonewhen no override is configured. - resolve_
release_ query - Determines the appropriate
ReleaseQueryfor the given channel, taking environment-variable overrides (mirror URL, pinned version) into account. - update_
is_ needed - Determines whether an update is needed for the given channel.
- update_
network_ fallback_ hint - Returns a human-readable hint explaining how to use a mirror when GitHub downloads are blocked or slow (e.g. on mainland China networks).
- update_
version_ from_ env - Returns the pinned update version from environment variables, or
Noneif neitherDEEPSEEK_TUI_VERSIONnorDEEPSEEK_VERSIONis set.