pub enum PushError {
Parse {
line: String,
},
InvalidLocalSpec(String),
RemoteRef(RefNameError),
Sha(ShaError),
Store(ObjectStoreError),
Git(GitError),
Io(Error),
Packchain(PackchainError),
}Expand description
Errors surfaced by the push path. These abort the helper — per-ref
failures (multi-bundle, ancestor mismatch, lock contention, …) are
returned as PushOutcome::Error without aborting the batch.
Variants§
Parse
push <refspec> line could not be parsed.
InvalidLocalSpec(String)
Local rev-spec failed permissive ref-name validation.
RemoteRef(RefNameError)
Remote ref name is malformed.
Sha(ShaError)
SHA hex extracted from a stored bundle key was malformed.
Store(ObjectStoreError)
Object-store transport / auth failure.
Git(GitError)
Local git operation failed (rev-parse, bundle, archive).
Io(Error)
Local I/O failure (tempdir, file read).
Packchain(PackchainError)
Packchain-engine-specific failure surfaced by
[crate::packchain::push::push_batch]. Wrapped here so the
per-ref error <ref> arm in [push_batch] can render a
uniform wire line regardless of which engine produced the
error.
Trait Implementations§
Source§impl Error for PushError
impl Error for PushError
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()
Source§impl From<ObjectStoreError> for PushError
impl From<ObjectStoreError> for PushError
Source§fn from(source: ObjectStoreError) -> Self
fn from(source: ObjectStoreError) -> Self
Source§impl From<PackchainError> for PushError
impl From<PackchainError> for PushError
Source§fn from(source: PackchainError) -> Self
fn from(source: PackchainError) -> Self
Source§impl From<PushError> for ProtocolError
impl From<PushError> for ProtocolError
Source§impl From<RefNameError> for PushError
impl From<RefNameError> for PushError
Source§fn from(source: RefNameError) -> Self
fn from(source: RefNameError) -> Self
Auto Trait Implementations§
impl Freeze for PushError
impl !RefUnwindSafe for PushError
impl Send for PushError
impl Sync for PushError
impl Unpin for PushError
impl UnsafeUnpin for PushError
impl !UnwindSafe for PushError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> ErrorExt for T
impl<T> ErrorExt for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.