<div dir="ltr">Hi Chris,<div><br></div><div>Thanks for sharing "Storage in Gecko" thread.</div><div><br></div><div>Regarding tests, current functions are covered by the original "test_module_LoginStore.js" [1] for now. Specific tests will be added once new functions are introduced.</div><div><br></div><div>Cheers,</div><div>Luke</div><div><br></div><div>[1] <a href="https://dxr.mozilla.org/mozilla-central/source/toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js">https://dxr.mozilla.org/mozilla-central/source/toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js</a></div><div><br><div class="gmail_extra"><br><div class="gmail_quote">2016-10-12 3:53 GMT+08:00 Chris Peterson <span dir="ltr"><<a href="mailto:cpeterson@mozilla.com" target="_blank">cpeterson@mozilla.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF">
Is JSONFile.jsm suitable for the long-sought Gecko storage system
that's not as hacky as <a class="gmail-m_-3828977301276209999moz-txt-link-freetext">about:config</a> prefs or as heavyweight as
SQLite? btw, I didn't see any tests specifically for JSONFile.jsm.
Are the other Password Manager tests on top of JSONFile.jsm adequate
test coverage?<br>
<br>
Here is a link to a 2013 "Storage in Gecko" thread on dev-platform
bikeshedding requirements around sync/async APIs and atomic and lazy
I/O. This thread spun out bug 866238 ("implement simple key-value
store on top of IndexedDB").<br>
<br>
<a class="gmail-m_-3828977301276209999moz-txt-link-freetext" href="https://groups.google.com/d/msg/mozilla.dev.platform/vYbQqkqGzlo/YYIvd-rB9ToJ" target="_blank">https://groups.google.com/d/<wbr>msg/mozilla.dev.platform/<wbr>vYbQqkqGzlo/YYIvd-rB9ToJ</a><div><div class="gmail-h5"><br>
<br>
<br>
<div class="gmail-m_-3828977301276209999moz-cite-prefix">On 10/11/2016 7:53 AM, Luke Chang
wrote:<br>
</div>
</div></div><blockquote type="cite"><div><div class="gmail-h5">
<div dir="ltr">
<div>
<div>Hey folks,</div>
<div><br>
</div>
<div>This is a notice about a module, JSONFile.jsm, just
landed in "toolkit/modules".</div>
<div><br>
</div>
<div>Matt, Steve and I have been working on Form Autofill [1].
While implementing, we intend to leverage modules of
Password Manager because of their similar behaviors.
LoginStore.jsm [2] is one of those modules.</div>
<div><br>
</div>
<div>The above-mentioned JSONFile.jsm is basically separated
from LoginStore.jsm, which is in charge of storing
login-related data in a ".json" file. In order to increase
the reusability of such JSON-formatted storage that we're
going to use in Form Autofill as well, we refactored
LoginStore.jsm. More specifically, those IO-specific APIs
were generalized and moved to JSONFile.jsm. Therefore,
LoginStore.jsm will focus on schema-related operations such
as data migrations.</div>
<div><br>
</div>
<div>To sum up, you can now utilize JSONFile.jsm to store
simple data in a single file as long as the data can be
serialized to JSON format. More details can be found in bug
1304322 [3].</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Luke</div>
<div><br>
</div>
<div>[1] <a href="https://wiki.mozilla.org/Firefox/Features/Form_Autofill" target="_blank">https://wiki.mozilla.org/<wbr>Firefox/Features/Form_Autofill</a></div>
<div>[2] <a href="https://dxr.mozilla.org/mozilla-central/source/toolkit/components/passwordmgr/LoginStore.jsm" target="_blank">https://dxr.mozilla.org/<wbr>mozilla-central/source/<wbr>toolkit/components/<wbr>passwordmgr/LoginStore.jsm</a></div>
<div>[3] <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1304322" target="_blank">https://bugzilla.mozilla.org/<wbr>show_bug.cgi?id=1304322</a></div>
</div>
<div><br>
</div>
</div>
<br>
<fieldset class="gmail-m_-3828977301276209999mimeAttachmentHeader"></fieldset>
<br>
</div></div><pre>______________________________<wbr>_________________
firefox-dev mailing list
<a class="gmail-m_-3828977301276209999moz-txt-link-abbreviated" href="mailto:firefox-dev@mozilla.org" target="_blank">firefox-dev@mozilla.org</a>
<a class="gmail-m_-3828977301276209999moz-txt-link-freetext" href="https://mail.mozilla.org/listinfo/firefox-dev" target="_blank">https://mail.mozilla.org/<wbr>listinfo/firefox-dev</a>
</pre>
</blockquote>
<br>
</div>
<br>______________________________<wbr>_________________<br>
firefox-dev mailing list<br>
<a href="mailto:firefox-dev@mozilla.org">firefox-dev@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/firefox-dev" rel="noreferrer" target="_blank">https://mail.mozilla.org/<wbr>listinfo/firefox-dev</a><br>
<br></blockquote></div><br></div></div></div>