Use IndexedDB instead of WebStorage
Type: code issue
WebStorage uses text files with serialized JSON. It has multiple issues.
- The file is completely rewritten on any modification. This causes flash burning out on devices using flash memory-based SSD.
- json escapes special characters, which is inefficient.
- You have to serialize binary data into base64 which is damn inefficient.
The better approach is to use IndexedDB which allows storage of binary data and also has DB capabilities, which can be used for incremental updates.
I guess some compression support is also needed, maybe some modification to FF allowing to use compressed SQLite files.
From what I understand, this change will be automatic with FF 56. Is that correct?
https://blog.mozilla.org/addons/2019/02/15/extensions-in-firefox-66/
I don't think so. DB is more than just a key-value storage. Though it may solve some issues, to make the stuff work better, one should make use of DB features like transactions.
From what I understand, this change will be automatic with FF 56. Is that correct?
https://blog.mozilla.org/addons/2019/02/15/extensions-in-firefox-66/
My understanding is that the change should be automatic from FF 66, but storage waste with JSON escape and base64 encoding will remain to be solve on the extension side.