Skip to content

Conversation

@autonome
Copy link
Contributor

@autonome autonome commented Sep 12, 2024

Caniuse:

  • has a feature for Web Storage - name/value pairs at 97% which points to the storage spec
  • has a feature for Storage at 95% which also points to the storage spec
  • the rest are pulls from MDN

MDN

  • rolls most everything up under Storage API and points at the various flavours
  • Web Storage API and Storage interface (local/session storage)
  • Shared Storage
  • IndexedDB
  • Storage quotas/eviction maybe needs a separate feature...
  • Cookies
  • Cache API

Web Features

  • FeatureStorage buckets from Add Storage buckets group #555
  • Feature Storage access from Add storage access API #1032
  • no storage-related groups yet
  • Drafts generated from specs
    • features/draft/spec/storage.yml - Storage globals and StorageManager (but not the storage implementations)
    • features/draft/spec/shared-storage.yml - Shared Storage API
    • features/draft/spec/saa-non-cookie-storage.yml - Extending Storage Access API (SAA) to non-cookie storage -
    • features/draft/spec/requeststorageaccessfor.yml - the requestStorageAccessFor API
    • features/draft/spec/indexeddb-3.yml - IndexedDB
    • features/draft/spec/html.yml - has the Storage implementation globals and their APIs
    • Cache API is in the serviceworkers spec
    • Cookies in a various places

Plan:

Ignore Cookie and Cache APIs for now. Start w/ the Storage interface and its implementations, as that'll set the direction and be reference point for storage approaches that followed it. Add the "late additions" and recent privacy storage bits as separate features. The rest is mostly non-controversial standalone features. Add a group called "storage" and put everything in it.

  • Feature: Storage API - implementations of the Storage interface and their globals, and includes Storage manager
  • Feature: Shared storage
  • Feature: Shared storage access for non-cookie storage (late addition, explicit difference)
  • Group: storage

Not addessed:

  • Cookies
  • Cache
  • IndexedDB

@autonome autonome marked this pull request as draft September 12, 2024 12:22
@github-actions github-actions bot added the feature definition Creating or defining new features or groups of features. label Sep 12, 2024
Copy link
Collaborator

@ddbeck ddbeck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple notes, but I'd be interested in seeing this developed more concretely. Being somewhat unfamiliar with anything outside of window.localStorage, names and descriptions will go a long way to understanding how these things fit together.

@ddbeck
Copy link
Collaborator

ddbeck commented Sep 20, 2024

Oh one more thought: if you want to start the group on the existing features now, before landing the new features, that would probably get merged quickly.

@autonome
Copy link
Contributor Author

autonome commented Oct 9, 2024

Ok integrated earlier review comments, simplified overall approach and took out IndexedDB.

@autonome autonome marked this pull request as ready for review October 9, 2024 11:40
@autonome autonome changed the title Add Storage API Add Storage APIs Oct 9, 2024
ddbeck
ddbeck previously requested changes Oct 10, 2024
autonome and others added 6 commits October 10, 2024 21:24
Co-authored-by: Daniel D. Beck <daniel@ddbeck.com>
Co-authored-by: Daniel D. Beck <daniel@ddbeck.com>
Co-authored-by: Daniel D. Beck <daniel@ddbeck.com>
@autonome
Copy link
Contributor Author

Ok I think all review comments addressed, just figure out a way forward for requestStorageAccessFor.

Copy link
Contributor

@captainbrosset captainbrosset left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving because I think this is the right way to create those features. But, please take a look at my remaining comments.

@autonome
Copy link
Contributor Author

Addressed all review comments but GH still showing blocked for some reason, so removing @ddbeck review to unblock merging, can follow up w/ any remaining issues afterward. Thanks everyone for helping w/ this one!

@autonome autonome dismissed ddbeck’s stale review October 17, 2024 05:06

Review comments resolved

@autonome autonome merged commit a6f6b25 into web-platform-dx:main Oct 17, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature definition Creating or defining new features or groups of features.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants