This page briefly covers any API changes which have the potential to break client-side code, newest first.
- The signature of JS functions passed to
sqlite3_exec()was simplified to remove the arguments which are extraneous for JS. The "full" form can be used from JS by manually installing a callback and passing its pointer, instead of the function object, to
rowModeoption previously accepted a column name reference in the forms
":X". The latter two have been removed because they are superfluous and having unnecessary variety seems likely to cause confusion.
Renamed several oft-used methods of the
sqlite3.wasmnamespace, but retained the older names as aliases:
The names peek and poke are explained in detail on Wikipedia.
pokePtr()are simply convenience forms with one fewer argument.
The return semantics of
wasm.pokePtr()have changed. They now return
thisinstead of returning the function itself. They also now accept an array of addresses, but that is not a potentially breaking change.
sqlite3.wasm.cstringToJs()was renamed to
free()). It is not expected that any clients are affected by this unless, perhaps, they link
sqlite3.wasminto a larger application. This change eliminates some client-side inconsistencies in how JS-side WASM memory has to be managed, most notably via
sqlite3_deserialize()and parts of the virtual table interface.
sqlite3.oo1.OpfsDb, for consistency with other
oo1.DBsubclasses. The older name will be usable for a brief period but will be removed by the 3.41 release. (Update: removed 2022-12-06.)