pub trait WriteBackend: Sized + Debug {
type Source;
fn init(source: Self::Source) -> Result<Self, StoreError>;
fn objects_mut(&mut self) -> &mut Objects;
fn packages_mut(&mut self) -> &mut Packages;
fn flush(self) -> Result<(), StoreError>;
}