• Address comparison of empty arrays. ()

    • Added on [IDBObjectStore](#idbobjectstore). (bug #19955)

    • Correct source used for [get()](#dom-idbindex-get), [getKey()](#dom-idbindex-getkey) and [openKeyCursor()](#dom-idbindex-openkeycursor) on [IDBIndex](#idbindex).

    • Added details around garbage collection of [IDBDatabase](#idbdatabase) objects. ()

    • Added [Exposed=(Window,Worker)] annotations to interfaces.

    • Added forced flag to the steps to close a database connection, described the firing of a “close“ event, and [onclose](#dom-idbdatabase-onclose). ()

    • Converted specification to a more algorithmic style, and define abstract types such as key more rigorously. ()

    • Added [getAll()](#dom-idbobjectstore-getall) and [getAllKeys()](#dom-idbobjectstore-getallkeys) on [IDBObjectStore](#idbobjectstore), and [getAll()](#dom-idbindex-getall) and on [IDBIndex](#idbindex). (bug #16595)

    • Replaced [DOMError](https://dom.spec.whatwg.org/#domerror) with [DOMException](https://www.w3.org/TR/WebIDL-1/#idl-DOMException). ()

    • Added [objectStoreNames](#dom-idbtransaction-objectstorenames) on [IDBTransaction](#idbtransaction). (bug #18)

    • Allow renaming stores and indexes via [IDBObjectStore](#idbobjectstore)‘s [name](#dom-idbobjectstore-name) and [IDBIndex](#idbindex)‘s [name](#dom-idbindex-name) attribute setters. ()

    • Added [continuePrimaryKey()](#dom-idbcursor-continueprimarykey) on [IDBCursor](#idbcursor). (bug #14)

    • Added [includes()](#dom-idbkeyrange-includes) on [IDBKeyRange](#idbkeyrange). ()

    • Added on [IDBObjectStore](#idbobjectstore). (bug #26)

    • Clarified when a transaction can attempt to commit. ()

    • Clarified open request / processing. (bug #9, , bug #79, )

    • Ensure event firing is done in the context of queued tasks. (bug #83)

    • Define precedence for exceptions when multiple error conditions apply. ()

    • Remove IDBEnvironment; expose globals with partial interface instead. (bug #94)

    • Clarify when [deleteDatabase()](#dom-idbfactory-deletedatabase) can fail. ()

    • Throw [SecurityError](https://www.w3.org/TR/WebIDL-1/#securityerror) if [open()](#dom-idbfactory-open) or [deleteDatabase()](#dom-idbfactory-deletedatabase) is called from an opaque origin. (bug #148)

    • Integrate with legacyOutputDidListenersThrowFlag hook in , replacing monkey patching. (bug #140)

    • Define hook for [HTML52], replacing monkey patching. ()

    • Fix handling of edge cases in key generation algorithm. (bug #147)

    • Use ‘s StructuredSerialize and hooks. (bug #170)

    • Use [[SameObject](https://www.w3.org/TR/WebIDL-1/#SameObject)]/[[NewObject](https://www.w3.org/TR/WebIDL-1/#NewObject)] in IDL where appropriate. (, issue #194)

    • Transaction-is- test can be an assertion in the asynchronously execute a request steps. ()

    • Use [HTML52]‘s hook. (issue #197, )

    • Define database‘s associated to align exceptions thrown from [createObjectStore()](#dom-idbdatabase-createobjectstore) and [deleteObjectStore()](#dom-idbdatabase-deleteobjectstore) with tests and implementations. (issue #192)

    • Set [=request/result]/ appropriately for requests from [open()](#dom-idbfactory-open) and [deleteDatabase()](#dom-idbfactory-deletedatabase). (issue #161)