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

Indexed DB v3 #516

Closed
3 tasks done
evanstade opened this issue Oct 3, 2023 · 9 comments
Closed
3 tasks done

Indexed DB v3 #516

evanstade opened this issue Oct 3, 2023 · 9 comments
Labels
focus-area-proposal Focus Area Proposal

Comments

@evanstade
Copy link

evanstade commented Oct 3, 2023

Description

Storage APIs allow web sites to store data locally in the browser, providing caching of resources, access to data while offline, and local state for applications. Indexed DB is the primary storage API for structured data, providing durability and transactions. It is commonly used by developers through libraries which provide higher level query APIs.

As of 2023, all engines have very good coverage for "V2" features, but some are missing some "V3" features that had been requested by developers, and there are inconsistencies in BFCache behavior.

Specification

https://www.w3.org/TR/IndexedDB/

Open Issues

No response

Tests

https://wpt.fyi/results/IndexedDB

Current Implementations

  • Blink
  • Gecko
  • WebKit

Standards Positions

base API already shipping in all major browsers

Browser bug reports

https://bugzilla.mozilla.org/show_bug.cgi?id=934640

https://bugzilla.mozilla.org/show_bug.cgi?id=1112702 (FF implements only non-standard and experimental API for specifying durability)

Developer discussions

https://stackoverflow.com/questions/69118042/if-there-is-any-function-in-firefox-to-get-all-indexeddb-names

Polls & Surveys

No response

Existing Usage

Dexie

Workarounds

No response

Accessibility Impact

No response

Privacy Impact

No response

Other

No response

@evanstade evanstade added the focus-area-proposal Focus Area Proposal label Oct 3, 2023
@foolip
Copy link
Member

foolip commented Oct 5, 2023

https://chromestatus.com/metrics/feature/timeline/popularity/9 and https://chromestatus.com/metrics/feature/timeline/popularity/3023 show that Indexed DB is very widely used. Some of that usage likely due to "fake" usage like fingerprinting, but at any rate it's true to say that Indexed DB is widely used, which makes interoperability more important.

@gsnedders
Copy link
Member

Is the intention here to include tests for all of IndexedDB, or only the new-in-V3 features?

@evanstade
Copy link
Author

The failing tests are pretty much all related to v3 features. I'm not sure if there's an easy way to link to those specifically.

@foolip
Copy link
Member

foolip commented Nov 1, 2023

This is a view of only failing tests:
https://wpt.fyi/results/IndexedDB?label=master&label=experimental&aligned&q=status%3A%21ok%20status%3A%21pass

That's 46 of a total of 457 tests. In the past we have not scoped focus areas to just the failing tests, but if there are large swaths of tests that are passing and that predate v3, it could make sense to exclude those.

@zcorpan
Copy link
Member

zcorpan commented Dec 11, 2023

In last week's Interop meeting I brought up that the storage-buckets.* tests should not be included since it's not part of IndexedDB.

@evanstade
Copy link
Author

@zcorpan is correct -- those storage-buckets tests should be marked tentative and not included in this proposal.

@inexorabletash
Copy link

Maybe we can slip w3c/IndexedDB#375 in there? Really minor but it'd be nice to align. Gecko needs no changes (IIRC), Chromium changes are ready to go, just waiting for an implementation commitment from WebKit.

@inexorabletash
Copy link

Possibly w3c/IndexedDB#412 as well though that is more intrusive and perhaps not in the spirit of Interop.

@dandclark
Copy link
Contributor

This proposal has been accepted as part of Interop 2024! On behalf of the entire Interop team, thank you for proposing it. You’ll be able to track progress on this topic throughout the year via the Interop 2024 dashboard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
focus-area-proposal Focus Area Proposal
Projects
Status: Done
Development

No branches or pull requests

6 participants