object-store-wasm

Crates.ioobject-store-wasm
lib.rsobject-store-wasm
version0.0.6
sourcesrc
created_at2024-04-11 14:45:08.153418
updated_at2024-09-09 23:58:53.995438
descriptionWebAssembly object_store implementation
homepage
repositoryhttps://github.com/H-Plus-Time/object-store-wasm
max_upload_size
id1205018
size75,221
Nicholas Roberts (H-Plus-Time)

documentation

README

object-store-wasm

A wasm-first implementation of the ObjectStore trait, accounting for the fundamentally non-Send nature of wasm_bindgen_futures::JsFuture (and therefore tacitly assuming single-threaded usage).

Why not just contribute this back to the object_store crate at apache/arrow-rs?

I'd like to, but that would require optionalizing most of the Send constraints on the traits in client and http (discounting the several thousand lines of code in aws, gcp, azure), behind a default on feature flag (threadsafe, multithread, whatever).

I expect there's a few parts of this that could be upstreamed, but I seriously doubt all of this belongs upstream. If that turns out to be incorrect, consider this repo an exercise in exterior refactoring.

Roadmap

  • get_opts via http/s
  • attempt actual streaming responses
  • avoid/provide a config option for swapping HEAD requests with zero-range GETs
  • JS bindings (behind a flag)
  • AWS read only operations
  • wasm-exposed get, list
Commit count: 34

cargo fmt