Hi Yoav, The reasoning about adoption also applies to the feature after launch, although less so than the OT. The farther the feature progresses (from OT, to launch, to support in other browsers), the less risk a site is taking in adopting. In the meantime, since a good polyfill is not really possible, the intermediate phase is painful/costly.
For *existing* apps, taking full advantage of the API requires schema redesign/migration, which we anticipate to be pretty involved for the kind of sophisticated apps this API appeals to. Less sophisticated apps that don't need to manage lots of data will not use the API at all as they don't worry about minimizing the impact of storage eviction (which is, for now, its primary appeal). New apps that are written at a time when Buckets are broadly available will not face these hurdles. We hope that both sides of the risk/reward equation improve: adoption risks come down as other vendors implement, and we're able to keep adding useful functionality that justifies the investment to migrate. -- Evan Stade On Tue, Nov 21, 2023 at 9:56 PM Yoav Weiss <yoavwe...@chromium.org> wrote: > > > On Tuesday, November 14, 2023 at 9:38:55 PM UTC+1 Evan Stade wrote: > > Contact emails > > est...@chromium.org, a...@chromium.org, ajayrahate...@chromium.org > > Explainer > > https://github.com/WICG/storage-buckets/blob/main/explainer.md > > Specification > > https://wicg.github.io/storage-buckets > > Summary > > Storage Buckets gives sites the ability to organize on-device data into > separate "buckets", allowing user agents to evict the grouped data > independently of that which is in other buckets, and enabling sites to > ergonomically manage semantically related data. Each storage bucket can > contain data associated with established storage APIs such as IndexedDB and > CacheStorage. > > > Blink component > > Blink>Storage>Buckets > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EStorage%3EBuckets> > > TAG review > > https://github.com/w3ctag/design-reviews/issues/562 > > TAG review status > > Issues addressed > > Chromium Trial Name > > StorageBuckets > > Link to origin trial feedback summary > > https://docs.google.com/document/d/1C8LiQfjYj9wIt94Q4PeCVwiA57- > uf37jSLLoBHYhUCM > > > Can you expand on the OT results? Are the "slow to adoption" comments > relevant only to the OT itself or to the feature at large? > > > > Origin Trial documentation link > > https://developer.chrome.com/blog/storage-buckets/ > > Risks > > Interoperability and Compatibility > > If no other browsers end up implementing this API, websites will only be > able to use the default bucket that is supported today. > > > Gecko: Positive (https://mozilla.github.io/standards-positions/#storage- > buckets) > > WebKit: No signal (https://github.com/WebKit/ > standards-positions/issues/181) > > Web developers: Positive > > Other signals: > > WebView application risks > > Does this intent deprecate or change behavior of existing APIs, such that > it has potentially high risk for Android WebView-based applications? > > Doesn't change existing APIs. > > > Debuggability > > Devtools > > > Will this feature be supported on all six Blink platforms (Windows, Mac, > Linux, Chrome OS, Android, and Android WebView)? > > No > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> > ? > > No > > Flag name on chrome://flags > > storage-buckets > > Finch feature name > > StorageBuckets > > Requires code in //chrome? > > False > > Tracking bug > > https://bugs.chromium.org/p/chromium/issues/detail?id=1099413 > > Launch bug > > https://launch.corp.google.com/launch/4227670 > > Measurement > > https://chromestatus.com/metrics/feature/timeline/popularity/4378 > > Availability expectation > > Feature is expected to be available on Firefox, but timeline unknown. > Implementation in Safari would likely first require widespread use. > > Adoption expectation > > Expected to be applied **in new projects** soon after launch. Full > utilization of the API would require data migration, which is not easy and > may slow adoption in existing projects. Abstractions may be among the first > adopters as the API is, itself, an abstraction layer that simplifies > functionality such as namespacing and managing chunks of data. > > Adoption plan > > We intend to use the Buckets API to expose additional storage-related > functionality to the web, for example, session-scoped data, performance > controls, etc. This new functionality will help drive adoption. > > Non-OSS dependencies > > Does the feature depend on any code or APIs outside the Chromium open > source repository and its open-source dependencies to function? > > No > > Estimated milestones > > Shipping on desktop > > 121 > > OriginTrial desktop last > > 118 > > OriginTrial desktop first > > 115 > > DevTrial on desktop > > 110 > > Shipping on Android > > 121 > > OriginTrial Android last > > 118 > > OriginTrial Android first > > 115 > > DevTrial on Android > > 110 > > Shipping on WebView > > 121 > > OriginTrial webView last > > 118 > > OriginTrial webView first > > 115 > > > > Anticipated spec changes > > Open questions about a feature may be a source of future web compat or > interop issues. Please list open issues (e.g. links to known github issues > in the project for the feature specification) whose resolution may > introduce web compat/interop risk (e.g., changing to naming or structure of > the API in a non-backward-compatible way). > > > Open issues/questions are add-only enhancements. > > Link to entry on the Chrome Platform Status > > https://chromestatus.com/feature/5739224579964928 > > Links to previous Intent discussions > > Intent to prototype: https://groups.google.com/u/2/ > a/chromium.org/g/blink-dev/c/LZsMi8heTu0/m/bh0my7vpBwAJ Intent to > Experiment: https://groups.google.com/a/chromium.org/g/blink-dev/c/ > LGfcc48qBHY/m/cXjQrqRIAAAJ?utm_medium=email&utm_source=footer > > > This intent message was generated by Chrome Platform Status > <https://chromestatus.com/>. > > -- 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+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAO4XGS9tyWKEv414QHhtbahV32zFa%2B%3DQxhS%2BgOD7owmgHPJdbg%40mail.gmail.com.