Documentation
¶
Overview ¶
Package history provides read-only views over the commit DAG: log (commits in parent order), diff (RRset changes between trees), blame (who last touched a specific RRset), and walk-at (point-in-time).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BlameInfo ¶
type BlameInfo struct {
Commit store.Hash // commit hash that introduced the current value
Author object.Identity
Message string
Blob store.Hash // current blob hash for (path, rrtype)
Found bool // false if the RRset doesn't exist at head
}
BlameInfo identifies the commit that introduced the *current* value of an RRset and the value itself. "Introduced" = the commit whose parent either lacks the RRset or has a different blob.
type Change ¶
type Change struct {
Path []string // labels from zone root down (e.g. ["api"] for api.<zone>)
RRType string // "A", "AAAA", "MX", ...
Op ChangeOp
OldBlob store.Hash // ZeroHash for OpAdded
NewBlob store.Hash // ZeroHash for OpRemoved
}
Change is one RRset-level change between two trees.
func Diff ¶
Diff walks two trees in lockstep and returns the set of RRset-level changes. If oldTree == newTree (by hash), it returns no changes without loading anything. Identical sub-trees are skipped (structural sharing makes diff cost O(changed-paths), not O(zone-size)).
Either hash may be ZeroHash to mean "empty tree".
Output order: lexicographic by FQDN, then RRType.
type ChangeOp ¶
type ChangeOp int
ChangeOp describes the nature of an RRset change between two trees.
type Entry ¶
Entry is one commit in a log listing.