Confirmed users
360
edits
(Update the page per discussion with storage advisory group) |
m (lmdb landing bug linkage) |
||
Line 11: | Line 11: | ||
If you are looking for a way to store data in Firefox, here are the usual options: | If you are looking for a way to store data in Firefox, here are the usual options: | ||
* JSON flat files. This usually is not a viable option from C++ because we don't have convenient ways to manipulate JS objects from C++. | * JSON flat files. This usually is not a viable option from C++ because we don't have convenient ways to manipulate JS objects from C++. | ||
* [https://github.com/mozilla/rkv rkv], a "simple, humane, typed Rust interface to LMDB". LMDB is a memory-mapped flat file database. | * [https://github.com/mozilla/rkv rkv], a "simple, humane, typed Rust interface to LMDB" available in Gecko since [https://bugzilla.mozilla.org/show_bug.cgi?id=1445451 Firefox 63]. LMDB is a memory-mapped flat file database. | ||
* SQLite via the mozStorage API or bindings. You should *NOT* directly access the SQLite API. If you are using rust code and would like a better binding API than mozStorage, that makes sense, but please reach out to the Storage Advisory Group so that we can reach consensus. We do not want to have N separate bindings to SQLite, especially since mozStorage is responsible for global configuration settings that could fight with other SQLite bindings. | * SQLite via the mozStorage API or bindings. You should *NOT* directly access the SQLite API. If you are using rust code and would like a better binding API than mozStorage, that makes sense, but please reach out to the Storage Advisory Group so that we can reach consensus. We do not want to have N separate bindings to SQLite, especially since mozStorage is responsible for global configuration settings that could fight with other SQLite bindings. |