Closed anorth closed 11 months ago
Also change it to stop using anyhow
when doing this.
Unfortunately, rust traits are not structural so this would be incompatible with the AMT, HAMT, car library, etc.
Ok maybe we can keep using the trait, but copy and customise the impls
That would work. You could also create a new type/trait and impl<T: YourBlockstore> fvm_ipld_blockstore::Blockstore for T
.
The fvm_ipld_blockstore package has some basic interfaces and wrappers for blockstore. These are very useful tooling for actor development and testing. Unfortunately they're hard to modify because they're in a different repo. The shared repo serves multiple clients, but for this simple code we'll have less friction with a specialised copy.
Copy the relevant code into this repo and drop the dependency. See also #678.