Versions in this module Expand all Collapse all v0 v0.0.2 Apr 20, 2026 v0.0.1 Apr 10, 2026 Changes in this version + var LockTimeout = 5 * time.Second + func Save(gitDir string, sf *StackFile) error + func SaveNonBlocking(gitDir string, sf *StackFile) + type BranchRef struct + Base string + Branch string + Head string + PullRequest *PullRequestRef + Queued bool + func (b *BranchRef) IsMerged() bool + func (b *BranchRef) IsQueued() bool + func (b *BranchRef) IsSkipped() bool + type FileLock struct + func Lock(gitDir string) (*FileLock, error) + func (l *FileLock) Unlock() + type LockError struct + Err error + func (e *LockError) Error() string + func (e *LockError) Unwrap() error + type PullRequestRef struct + ID string + Merged bool + Number int + URL string + type Stack struct + Branches []BranchRef + ID string + Numbered bool + Prefix string + Trunk BranchRef + func (s *Stack) ActiveBaseBranch(branch string) string + func (s *Stack) ActiveBranchIndices() []int + func (s *Stack) ActiveBranches() []BranchRef + func (s *Stack) BaseBranch(branch string) string + func (s *Stack) BranchNames() []string + func (s *Stack) Contains(branch string) bool + func (s *Stack) DisplayChain() string + func (s *Stack) FirstActiveBranchIndex() int + func (s *Stack) IndexOf(branch string) int + func (s *Stack) IsFullyMerged() bool + func (s *Stack) MergedBranches() []BranchRef + func (s *Stack) QueuedBranches() []BranchRef + type StackFile struct + Repository string + SchemaVersion int + Stacks []Stack + func Load(gitDir string) (*StackFile, error) + func (sf *StackFile) AddStack(s Stack) + func (sf *StackFile) FindAllStacksForBranch(branch string) []*Stack + func (sf *StackFile) FindStackByPRNumber(prNumber int) (*Stack, *BranchRef) + func (sf *StackFile) RemoveStack(idx int) + func (sf *StackFile) RemoveStackForBranch(branch string) bool + func (sf *StackFile) ValidateNoDuplicateBranch(branch string) error + type StaleError struct + Err error + func (e *StaleError) Error() string + func (e *StaleError) Unwrap() error