Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Storage API #1773

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft

Add Storage API #1773

wants to merge 5 commits into from

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
  • Feature: Storage manager
  • Feature: IndexedDB - maybe a few discrete feature pieces here, TBD
  • Feature: Shared storage
  • Feature: Shared storage access for non-cookie storage (late addition, explicit difference)
  • Feature: requestStorageAccessFor API
  • Group: storage

Later:

  • Cookies
  • Cache

@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
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.

1 participant