Storage Foundation API is a storage API that resembles a very basic filesystem, with direct access to stored data through buffers and offsets. Our goal is to give developers flexibility by providing generic, simple, and performant primitives upon which they can build higher-level components. It's particularly well suited for Wasm-based libraries and applications that want to use custom storage algorithms to fine-tune execution speed and memory usage.
This new feature has some potential interoperability risks due to its nature as a novel and low-level API. Currently, there are no web features that expose such a generic interface and that focus on WebAssembly ports as one of it's main consumers.
We've also received feedback from other vendors that the functionality added in Storage Foundation API seems duplicative of File System Access API. We are exploring a merged design (details here: https://docs.google.com/document/d/121OZpRk7bKSF7qU3kQLqAEUVSNxqREnE98malHYwWec) while collecting feedback and validating design choices with this independent API.
In general, we would like to validate the whole surface of our API against developer expectations and more diverse use cases. In particular, we are interested in confirming that we provide the required performance to allow new uses, and to shed light on developer preference between a synchronous and asynchronous surface.
We are actively working with a partner that is running internal betas of their product. These tests will continue for next few releases (from M93 to M96), and have been a source of useful feedback so far. We’d like to continue supporting their experimentation during this same period. We are currently in discussions with other vendors to merge the functionality of Storage Foundation into the Origin Private File System of the File System Access API (more details here: <https://docs.google.com/document/d/121OZpRk7bKSF7qU3kQLqAEUVSNxqREnE98malHYwWec>), and their developer and user feedback will be useful when seeking consensus on the shape of the new surface. So far we’ve gotten feedback on the quota system and overall usefulness of the API (as well as more context on the sync vs. async question and issues with ArrayBuffer transfers). Continuing the experiment will provide more feedback and validation from real users as the partner’s tests keep growing in scope and user base. It will also allow us to get comparative feedback between Storage Foundation and prototypes of the merged surface.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAHExSGJbnbfA290uGCLHbyEZyd68R_A4y%2B8CEqaA1U-0o0%3DOTg%40mail.gmail.com.