pub enum HeddleError {
Show 31 variants
Recovery(Box<RecoveryDetails>),
NotFound(String),
NoMergeInProgress,
NoChanges,
StateNotFound(StateId),
InvalidObject(String),
RepositoryNotFound(PathBuf),
RepositoryExists(PathBuf),
IncompleteClone(PathBuf),
UntrustedRepository {
root: PathBuf,
reason: UntrustedRepositoryReason,
},
RepositoryFormatTooNew {
path: PathBuf,
found: u32,
supported: u32,
},
RepositoryFormatTooOld {
path: PathBuf,
found: u32,
required: u32,
},
StorageFormatTooNew {
storage: String,
found: u32,
supported: u32,
},
StorageFormatTooOld {
storage: String,
found: u32,
required: u32,
},
Io(Error),
Lock(LockError),
Serialization(String),
Config(String),
NativeSourceSignerUnavailable {
thread: String,
reason: String,
},
ConfigParse {
path: PathBuf,
source: Error,
},
ConfigInvalidValue {
path: PathBuf,
key: String,
value: String,
valid_values: Vec<String>,
},
Conflict(String),
Compression(String),
InvalidRefName(String),
InvalidFileSize(u64),
Corruption {
expected: ContentHash,
found: ContentHash,
},
MissingObject {
object_type: String,
id: String,
},
InvalidTreeEntry(TreeError),
TreeStream(TreeStreamError),
RedactedTree(String),
ReservedWorktreePath {
path: PathBuf,
reason: ReservedPathComponent,
},
}Expand description
Error type for repository/storage-adjacent operations.
Variants§
Recovery(Box<RecoveryDetails>)
NotFound(String)
NoMergeInProgress
NoChanges
StateNotFound(StateId)
InvalidObject(String)
RepositoryNotFound(PathBuf)
RepositoryExists(PathBuf)
IncompleteClone(PathBuf)
UntrustedRepository
Discovery found repository metadata the user never vouched for: it lies inside another Heddle repository’s worktree (so it may be checked-out content), or another user owns it. Opening it would let its config, hooks, and store pointer act on this user’s behalf.
RepositoryFormatTooNew
RepositoryFormatTooOld
StorageFormatTooNew
StorageFormatTooOld
Io(Error)
Lock(LockError)
Serialization(String)
Config(String)
A checkout attached to a native Thread cannot sign a source operation
with that Thread’s owner key, so capture fails closed. Distinct from
Self::Config so callers can tell “no signer” from any other refusal.
ConfigParse
ConfigInvalidValue
Conflict(String)
Compression(String)
InvalidRefName(String)
InvalidFileSize(u64)
Corruption
MissingObject
InvalidTreeEntry(TreeError)
TreeStream(TreeStreamError)
RedactedTree(String)
A redacted-tree (HRT1) projection was encountered where a full,
materializable tree is required — e.g. asked to store, pack, or read an
HRT1 body as a Tree, or capture over a PartialTree whose withheld
leaves cannot be re-authored. This is a distinct, fail-loud signal (v4
redactable trees, Fable F): the wire-status mapping is handled by the
weft serve leg, but the heddle side must never silently drop the
withheld leaves.
ReservedWorktreePath
A worktree write would create a path through a repository metadata
directory (heddle#2028): .git at any depth, or the root .heddle.
Implementations§
Source§impl HeddleError
impl HeddleError
pub fn recovery(details: RecoveryDetails) -> HeddleError
Trait Implementations§
Source§impl Debug for HeddleError
impl Debug for HeddleError
Source§impl Display for HeddleError
impl Display for HeddleError
Source§impl Error for HeddleError
impl Error for HeddleError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()