pub struct CommitNativeBundle { /* private fields */ }Expand description
The committed head bundle paired with the machine store it protects.
Implementations§
Source§impl CommitNativeBundle
impl CommitNativeBundle
Sourcepub fn for_resolved(resolved: &ResolvedDataDir) -> Option<Self>
pub fn for_resolved(resolved: &ResolvedDataDir) -> Option<Self>
Project stores have a conventional git path. Explicit and user-default stores do not: exporting either beside the caller’s cwd would recreate the wrong-directory backup bug under another name.
Sourcepub fn for_resolved_excluding_abouts(
resolved: &ResolvedDataDir,
excluded_abouts: Vec<String>,
) -> Option<Self>
pub fn for_resolved_excluding_abouts( resolved: &ResolvedDataDir, excluded_abouts: Vec<String>, ) -> Option<Self>
Builds a project bundle that carries authored memory while leaving release-owned abouts in the machine store only.
pub fn new( data_dir: impl Into<PathBuf>, bundle_path: impl Into<PathBuf>, ) -> Self
pub fn new_excluding_abouts( data_dir: impl Into<PathBuf>, bundle_path: impl Into<PathBuf>, excluded_abouts: Vec<String>, ) -> Self
pub fn path(&self) -> &Path
Sourcepub async fn begin_write(
&self,
store: &EmbeddedKernelStore,
) -> Result<PendingBundleExport, PortError>
pub async fn begin_write( &self, store: &EmbeddedKernelStore, ) -> Result<PendingBundleExport, PortError>
Proves that the live store and committed bundle are the same history, then marks a write as needing an export before the store can change. The returned guard holds the inter-process lock through publication.
Sourcepub async fn publish(
&self,
store: &EmbeddedKernelStore,
pending: &PendingBundleExport,
) -> Result<BundleHeader, PortError>
pub async fn publish( &self, store: &EmbeddedKernelStore, pending: &PendingBundleExport, ) -> Result<BundleHeader, PortError>
Writes the complete stream after a successful memory mutation. An identical digest is already current, so an idempotent retry does not churn the snapshot creation time in git.
Trait Implementations§
Source§impl Clone for CommitNativeBundle
impl Clone for CommitNativeBundle
Source§fn clone(&self) -> CommitNativeBundle
fn clone(&self) -> CommitNativeBundle
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more