Documentation
¶
Overview ¶
Package release checks the facts about a release that live outside the binary: the changelog, the version notes in doc/, and the sample versions pinned in files that quote one.
The release itself is automated — a v* tag builds binaries, images, and a Homebrew cask, and lifts the release notes out of CHANGELOG.md. What is not automated is agreement: several files name a version, and nothing but this package notices when one of them names the wrong one. Each check below is a fact that has to be true before a tag is pushed, expressed so that the failure says which file to edit.
Check runs against a checked-out tree. With releaseVersion empty it checks the invariants that hold at any commit; with a version (the tag being built) it additionally checks that the tree describes *that* release.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Problem ¶
type Problem struct {
// File is the repo-relative path to edit, or "" for a whole-tree problem.
File string
// Detail says what disagrees with what.
Detail string
}
Problem is one inconsistency, phrased as what is wrong and where.