abstract-blob-store icon indicating copy to clipboard operation
abstract-blob-store copied to clipboard

A test suite and interface you can use to implement streaming file (blob) storage modules for various storage backends and platforms

Results 18 abstract-blob-store issues
Sort by recently updated
recently updated
newest added

For example, [content-addressable-store](https://www.npmjs.org/package/content-addressable-store) has `all`, and [go-datastore](https://github.com/jbenet/go-datastore) has [KeyList](https://github.com/jbenet/go-datastore/blob/7804ee2c2eb368be9704da1ad94d1f5e1ba7e716/datastore.go#L55). You'll need some way to iterate through your storage if you want to garbage-collect dangling references or have external corruption-checking processes....

enhancement

Would really appreciate confirmation that `createReadStream` and `createWriteStream` make no guarantees relevant for: 1. Appending data to a blob. To append a blob, users have to stream the existing data...

question

Suggest collections: - tiered-blob-store -- layered access (for caches, local vs remote, etc) -- https://github.com/datastore/datastore#hello-tiered-access - sharded-blob-store -- shard on the key across multiple - https://github.com/datastore/datastore#hello-sharding

Would be nice if there was a standardised move or rename method. Most backends support that natively and those that don't support it through a bit more of manual work...

enhancement

is there a level-blob-store that allows using any level instance as a blob-store? i know that's very much not the goal of blob-store (big blobs instead of small values) but...

question

Using a test over at [memory-blob-store](https://github.com/retrohacker/memory-blob-store) to specify the behaviour of calling `createReadStream` from a key that has an open `Writable` returned from `createWriteStream`: ```js test('handles multiple readers during write...

Resumption is likely to become a necessity for very large blobs in many use cases. To start off discussion, what about: ### store.resumeWriteStream(resume_opts, opts, cb) Where `resume_opts` are the options...

I wonder if there should be something in this API to allow authors to optionally have their blob store emit progress events for reads/writes