SOFTWARE / SYSTEMS / AIEngineering news. Technical depth.
NEWS / Web · 2 MIN READ

Firefox 153 adds bulk IndexedDB reads, video PiP, and JSPI

Firefox 153 ships getAllRecords for IndexedDB, desktop video picture-in-picture, WebAssembly Promise integration, and richer WebRTC diagnostics.

Announcement: · From Mozilla MDN

Mozilla released Firefox 153 on July 21 with IndexedDB getAllRecords(), desktop video picture-in-picture, JavaScript Promise Integration for WebAssembly, and expanded WebRTC capabilities. The MDN developer notes also document text module imports and new locale-information methods.

Storage and Wasm paths gain useful primitives

IDBObjectStore.getAllRecords() and the matching index method retrieve records and primary keys in batches, including constrained subsets. That can replace cursor loops in read-heavy local applications, but the result still occupies memory. Applications should select a count and range that match their data size rather than reading an entire large store at once.

JSPI lets WebAssembly suspend while waiting for a JavaScript Promise and resume when it settles. This reduces adaptation work for compiled code that expects synchronous-looking calls, while preserving the web platform’s asynchronous host operations. Rejection and cancellation remain part of the contract; suspending does not turn unreliable I/O into a synchronous guarantee.

Firefox also adds standard video picture-in-picture on desktop, distinct from the arbitrary-HTML Document Picture-in-Picture support introduced earlier. WebRTC gains remote-certificate access, the webrtc MediaCapabilities configuration type, and more transport statistics.

Watch capability checks and misleading detection

Firefox 153 recognizes ::-webkit-scrollbar in @supports selector() even though it does not implement the associated styling. Mozilla calls out this unusual compatibility behavior. Code that treats selector recognition as proof of visual support can therefore choose the wrong branch.

Test behavior directly where possible. For IndexedDB, check ordering, ranges, transaction aborts, and large result sets. For JSPI, cover rejected promises and teardown. For extensions, note that local file:// access now requires a separate user permission and is off by default. Keep preference-gated Nightly items in the experimental section of the notes out of production assumptions.

SOURCES & CONTEXT

See the original announcement for availability and release details.