repomatic.release.checksums module¶
Recompute SHA-256 checksums for the binary tool registry.
Iterates every TOOL_REGISTRY entry with a binary spec, downloads each
platform’s release artifact, and rewrites stale hashes in-place in
tool_registry.py (alongside the VERSIONS stamps). Driven by
repomatic update-checksums and, with a version override, by
sync-tool-versions so a version bump and its matching checksums land in one
pass.
- repomatic.release.checksums.update_registry_checksums(registry_path, version_overrides=None)[source]¶
Recompute binary checksums and version stamps in
tool_registry.py.Iterates every
TOOL_REGISTRYentry with abinaryspec, downloads each platform URL (concurrently, sized by the global--jobsoption and sequential atDEBUGverbosity or without an active CLI context), computes its SHA-256, and replaces stale hashes in-place. Also reconciles each tool’sVERSIONSstamp with the version the checksums were computed for, the basis of the offline staleness test.- Parameters:
registry_path (
Path) – Path totool_registry.py.version_overrides (
dict[str,str] |None) – Optional mapping of tool name to a version to download instead of the in-memoryToolSpec.version.sync-tool-versionspasses this so it can bump the version in the source and refresh the checksums in a single process: the in-memory registry still holds the pre-bump version because the file was edited, not reimported.
- Return type:
- Returns:
List of
(url, old_hash, new_hash)for each updated checksum. Empty if all checksums are already correct.