Expand description
The files a release packs, and whether they changed since the last release.
The request opens only where a packed file changed or the packed set
did, the rule release-plz applies to a crate. The list is the union of
what the release packs at HEAD and at the last release tag, each read
through the driver adapter and each without the destinations its own
revision’s landing record names. A bash release packs the tracked files its declaration
selects, with Cargo’s include and exclude semantics, and this
module packs them into a reproducible archive from the git objects. A
python sdist builds in a temporary worktree outside the checkout, which
is removed afterwards, also on failure.
SATISFIES release-engine:a-request-follows-the-packed-files SATISFIES release-engine:the-bash-release-packs-its-declaration
Structs§
- Comparison
- What the request compared: the last release tag, the packed list, and
whether the packed set or a packed file differs between the tag and
HEAD. - Declaration
- What a bash release ships, as Cargo’s
includeandexcludedeclare a crate’s package: gitignore-style patterns, whereincludeoverridesexclude, and neither key ships every tracked file. - Entry
- One tracked file of a revision’s tree: its git mode, its blob, and its path.
- Scratch
- A temporary worktree of one revision, outside the checkout, removed when it drops, also on failure.
- TempDir
- A fresh directory under the system’s temporary directory, removed when it drops, also on failure.
Constants§
- EXCLUDE_
KEY - The key that names the tracked files a bash release leaves out.
- INCLUDE_
KEY - The key that names the tracked files a bash release ships.
- NOTHING_
YET - Why a bash request opens nothing where the declaration selects no file yet.
- VERIFY_
KEY - The key that names the command run in the unpacked bash archive.
- VERSION_
FILE - The bash version file, which every bash release ships, as Cargo always
packs
Cargo.toml.
Functions§
- at_head
- The files the release packs at
HEAD, without rk’s own, sorted: the list a first release, with no release tag to compare with, reads the commits of. - bash_
set - The files a bash release ships at a revision: the tracked files the
declaration of that revision selects, with
VERSION. - cliff_
pattern - A path as a git-cliff
--include-pathpattern that matches it alone: each glob metacharacter stands inside brackets. - compare
- Compare the packed files of
HEADwith those of the releasetag. - declared
- The files a bash release ships from the tracked files of a revision.
- destinations
- The destinations the landing record names at a revision: none where the revision holds no record.
- differs
- Whether any of
pathsdiffers betweentagandHEAD, asgit diff --quietanswers. - drop_
generated - The members without the files a python sdist generates at its root.
- empty_
package - The refusal of a bash release whose declaration ships no file yet.
- entries
- The tracked files of a revision’s tree, sorted by path. A submodule is a commit and no file of this tree, so it is left out.
- epoch
- The commit time of a revision, for
SOURCE_DATE_EPOCH. - is_
empty_ package - Whether a bash package holds nothing past the version file it always ships.
- keep_
tracked - The members that are tracked files of the revision.
- members
- The file members of a gzip tarball, as the archive names them.
- mirrors_
nothing - The refusal where a python sdist holds no file git tracks.
- pack
- Pack
filesof the revisionrevinto the gzip tarballarchive, under the one top directorytop, from the git objects alone. - previous_
tag - The newest release tag below
HEADother thantag, where one exists. - stable_
tag_ below - The newest stable release tag below
HEAD, other thanexclude, where one exists:vand a digit, with no prerelease part. - strip_
top - The members of an archive below the one top directory every member shares, where they share one; otherwise the members unchanged.
- subtract
- The list without the files rk owns at that revision: every destination its landing record names, and the record’s own directory.
- tracked
- The tracked files of a revision.
- unpack
- Unpack the gzip tarball
archiveintodir.