Commit Graph

1789 Commits

Author SHA1 Message Date
Mike Connor
ff2b435a77 bug 496485 - make Service.wipeServer work properly, r=Mardak 2010-04-07 20:06:37 -04:00
Mike Connor
db5f17224a bug 551572 - 100% CPU when sitting on merge-choice screen, r=Mardak
--HG--
extra : rebase_source : 1b2d36ff6d6d80b81cdadaad4fb53592f851e903
2010-04-05 23:53:31 -04:00
Edward Lee
ea7a2f7ba7 Bug 558654 - Firefox crashes every ~2min after update to 1.2 [r=mconnor]
Limit the number of initial form entries to 500 ordered by "frecency".
2010-04-11 12:34:27 -07:00
Edward Lee
1532b85056 Bug 558264 - Form data fails to sync when there's nothing to upload [r=mconnor]
Wrap the createStatement calls to guard against missing guid columns and lazily add it.

--HG--
extra : rebase_source : c59a692c6ad08321835c75023b54f02e8d1964da
2010-04-09 10:20:58 -07:00
Mike Connor
e303ce2d95 bug 558209 - Change password text says minimum is 12 characters 2010-04-08 21:57:21 -04:00
Edward Lee
b62b60e410 Bug 557891 - Wipe local triggers deletions on all other clients! [r=mconnor]
Ignore tracker changes triggered by wiping the local client store.
2010-04-07 17:52:22 -07:00
Paul O’Shannessy
fd5c20da8a Bug 557314 - Need cancel button after clicking Reset Sync [r=mconnor]
Added a cancel button that only shows on the sync options page when resetting.
Also removed the pref usage, so that resetting is properly cancelable (by pressing cancel, closing the window, or quitting).

--HG--
extra : rebase_source : cba1575d974aa882d20f641650d8502186f819a0
2010-04-06 16:50:46 -07:00
Edward Lee
9a5d570c4e Bug 543858 - Weave's change-password/passphrase dialogs allow me to leave password/passphrase unchanged [r=mconnor]
Check if the new value is the same as the current one and provide a warning.
2010-04-06 16:49:47 -07:00
Edward Lee
a5fc13f320 Bug 557623 - Tab sync broken on fennec since session-store was added [r=zpao]
Check for existance of both cid and iface in Cc/Ci to decide to use the platform's service or fake one. Remove unused lazyInstance to clean up API (iface == string not object).
2010-04-06 14:13:21 -07:00
Edward Lee
b4d4505934 Bug 549789 - Point user/misc urls to 1.0/ instead of 1/ [r=mconnor]
Fix up both url getters to have the extra dot oh.
2010-04-06 12:07:34 -07:00
Edward Lee
079257bf2f Bug 557503 - bookmark restore from backup and server-wins interact badly [r=mconnor]
Don't resetLastSync as that will make local changes look old and instead mark each as changed now that addChangedID doesn't jsonSave on each call.
2010-04-06 11:59:50 -07:00
Edward Lee
65f25d882a Remove trailing spaces in files under source/. 2010-04-02 16:38:05 -07:00
Edward Lee
35083577f3 Replace tabs in files under source/ with appropriate number of spaces. 2010-04-02 16:37:53 -07:00
Paul O’Shannessy
02de93e6b7 Bug 554936 - Make statusbar text "Set Up Weave..." until Weave has been configured [r=Mardak]
* Added a "Set Up Weave..." status message which is determined by Status.login states
* The "Set Up Weave..." message opens the pref window directly instead of showing the menu
* Added an additional error state for NO_PASSPHRASE
* Added checks to onStartup to check some status (no username/password/passphrase) for when autoconnect=false
* When the prefpane is opened and there's an error, it will open to the correct page so that can be corrected
* If using a custom server, that will be reflected when shown that page in the prefpane
2010-04-02 16:30:09 -07:00
Mike Connor
ca58a97947 bug 545725 - Changing passphrase should prevent other clients from syncing, r=Mardak 2010-03-31 21:58:07 -04:00
Edward Lee
084907c53f Bug 550627 - Default reconciliation to server wins for older changed items [r=mconnor]
Save the time the tracker adds a new changed id and use that to compare the age of the record on the server vs the age of the local change to decide if it's server wins or client wins. Fix up various direct uses of changedIDs to use the API and make the save-to-disk lazy to avoid excessive writes. Add a test to make sure addChangedID only increases in time.
2010-04-01 15:54:53 -07:00
Edward Lee
caac21044c Bug 546768 - form history uses hashes for GUIDs [r=mconnor]
Write a FormWrapper that knows about GUIDs and get/sets them in moz_formhistory as needed. It lazily adds the columns on failure and lazily generates GUIDs for entries that are missing it. Don't eagerly create a sha1 formItem mapping -- don't create it at all, so empty syncs will be much faster too.
2010-04-01 15:29:16 -07:00
Edward Lee
cc452bb5e2 Bug 544532 - Weave won't sync after resume from standby [r=mconnor]
Start an abortTimer onStartRequest and refresh the timer on each onDataAvailable only to cancel on an onStopRequest. If the timer triggers, the sync/async call will be aborted.
2010-04-01 15:25:47 -07:00
Edward Lee
1891e47f71 Bug 556361 - New searches from the searchbar don't get synced [r=mconnor]
Add a component that notifies when satchel methods are getting called. The notifications come as "form-notifier" with JSON data of the function name, arguments, and type (before vs after).
2010-04-01 15:21:54 -07:00
Edward Lee
0bc6e62a98 Bug 554924 - Weave should not sync during session restore [r=mconnor]
Get rid of STATUS_DELAYED and initialize Weave listeners, etc immediately. At the end of onStartup, wait a little bit to let sessionstore restore tabs and then count how many busy tabs to delay autoconnecting to avoid doing network while tabs are doing network.
2010-04-01 15:16:19 -07:00
Edward Lee
1fddfb0347 Bug 556509 - folders description not synchronised [r=mconnor]
Allow descriptions to be set on folder records and set description on creation.

--HG--
extra : rebase_source : d380f5d28130bd53532e5b4d293468aa053c19b2
2010-04-01 15:11:42 -07:00
Paul O’Shannessy
dfeaeaf6ac Bug 539057 - better flow with start over [r=mconnor]
* Adds an option to the manage account to change sync option.
* Changes "start over" to "use a different account".
* Hides the "start over" button on the sync options page when not running through the whole process.
* Adds a prompt when starting over (which fixes bug 524186).
2010-04-01 13:43:09 -07:00
Edward Lee
fe072a177b Bug 535326 - Need to rethink tab sync limit of 25 [r=mconnor]
Fit as many tabs as possible in 20000 characters by linearly estimating how many will fit then remove extras one by one.

--HG--
extra : rebase_source : 1ef3700a9cddd7e3cb0f96b9affada15e98ea672
2010-02-17 18:24:22 -08:00
Paul O’Shannessy
d424463253 Bug 532932 - No error prompting for invalid email on weave sign up [r=Mardak]
--HG--
extra : rebase_source : 43236961f871a7ff04a866646509121055ff927e
2010-03-31 23:05:50 -07:00
Mike Connor
71f982d974 bug 539056 - Better Tab sync UI and discoverability, r=Mardak
--HG--
extra : rebase_source : d0c98d78b889ed74f5b130077a6ee1806bd81282
2010-03-12 16:14:09 -08:00
Edward Lee
6c104ff79a Bug 552134 - Ensure that keyring/symmetric key haven't been tampered with [r=mconnor]
Store a HMAC with the encrypted symmetric key instead of just the wrapped key and verify that the HMAC matches before unwrapping. Test that normal getting works and a tampered payload/HMAC fails but succeeds on restoring the correct HMAC.
2010-03-25 19:23:44 -07:00
Edward Lee
46632f7ac1 Bug 549638 - Ensure that encrypted payloads haven't been tampered with [r=mconnor r=dolske]
Generate a SHA256 HAMC hex string from the base64 ciphertext and base64 symmetric key. Generate a HMAC key from the symmetric key and cache them together when unwrapping. Refactor the Utils.sha1 to share the same digest code.

--HG--
extra : rebase_source : dae973c62317eb3b738306fc30ea19870555c7df
2010-03-16 16:31:56 -07:00
Mike Connor
777762c48e bug 550597 - explicit server backoff is buggy, r=Mardak
--HG--
extra : rebase_source : 8e3621b0d7de77d918f1fe7ce1304f303fd19f97
2010-03-25 17:24:41 -04:00
Mike Connor
a8a384a3b0 bug 535136 - improve transition from single-client to multiple-client mode, r=Mardak
--HG--
extra : rebase_source : 8a667e947aa442e65eec1e13059e7076b00f9878
2010-03-25 17:24:41 -04:00
Mike Connor
9abadba210 bug 508112 - captcha will not work with noscript enabled, r=Mardak
--HG--
extra : rebase_source : 7b94ef2dfc4d9416189b0f970fab7d3f19da0f02
2010-03-12 15:49:10 -08:00
Edward Lee
503f711a99 Bug 550267 - Sync tabs before other data for Fennec [r=mconnor]
Move tabs to be first instead of last to sync for fennec.

--HG--
extra : rebase_source : 74596397668d4cdcd15993cd0930b0b65b0df777
2010-03-25 14:21:42 -07:00
Paul O’Shannessy
8a1c83fe01 Bug 555015 - JavaScript strict warning: bookmarks.js: undeclared variable record [r=Mardak]
Just make sure the record variable is declared before using it.
2010-03-25 13:58:27 -07:00
Edward Lee
e0f3625f3c Bug 503964 - Have per-engine versioning to avoid wiping all engine data [r=mconnor]
Add an engines object to meta/global to track version and syncID for each engine. If the server is outdated, wipe the data and set a new version and syncID. If the client is oudated, ask for an upgrade. Differing syncIDs cause a reupload. All engines are right now the default version 1.
2010-03-25 10:05:21 -07:00
Edward Lee
1cd3c07303 Bug 548066 - JavaScript strict warning: clientData.js, line 194: reference to undefined property this.clients[id] [r=mconnor]
Get rid of get/setInfo on ClientEngine and ClientStore and expose functions to read/modify client data: stats, clearCommands, sendCommand. Also expose the local client information as local[ID,Name,Type,Commands] and rework the storage to use these instead of trying to keep the JS object clients entry in sync with prefs, etc. Update users of the old interface (service/tabs/chrome) to use the new local*. Set the client type based on app id instead of from each app's overlay.
2010-03-16 16:39:08 -07:00
Edward Lee
1555ba9d3c Bug 554427 - Move syncID from clients.js to service.js [r=mconnor]
Switch from Clients.syncID to this.syncID for service.js. Don't special case resetSyncID and just use = "".
2010-03-25 16:52:45 +00:00
Edward Lee
7379a71033 Bug 547007 - Use a per-record IV instead of one for each symkey [r=mconnor]
Generate a random IV on every encrypt instead of taking it from the CryptoMeta. Don't bother generating a bulkIV per CryptoMeta.
2010-03-16 16:31:56 -07:00
Edward Lee
6e5b14f642 Bug 547048 - Only allow clients to issue delete records [r=mconnor]
Don't specially serialize/not encrypt delete records and store the deleted flag as part of the cleartext payload.
2010-03-16 16:31:56 -07:00
Edward Lee
e057d3a639 Bug 547049 - Verify that encrypted payloads correspond to the requested record [r=mconnor]
Write the record's id to both .data and .cleartext and check that they match when decrypting.
2010-03-16 16:31:56 -07:00
Edward Lee
eb92572129 Bug 549636 - Don't unnecessarily [wrap] cleartext for JSON.stringify [r=mconnor]
Remove the unnecessary indirection now that JSON.stringify can take strings.
2010-03-16 16:31:56 -07:00
Edward Lee
4b77738965 Bug 544069 - Move bookmark parentid into the encrypted payload [r=mconnor]
Tweak the get/setters to refer to the PlacesItem instead of WBORecord.
2010-03-16 16:31:56 -07:00
Edward Lee
039a4a056e Bug 546772 - Encrypt the clients records [r=mconnor]
Store data in cleartext instead of directly in the payload to have it encrypted with the CryptoWrapper. This cleans up some hacks needed to get the plain WBO client record to behave nicely with other encrypted data.
2010-03-16 16:31:55 -07:00
Edward Lee
48e1d05db4 Bug 545517 - Make the remote version check compare storage versions and not weave versions [r=mconnor sr=mhanson]
Move back to a model where multiple client versions can read the same data of the same storageVersion. The only time meta/global is written is on a freshStart/server wipe. Initialize the version to 1.2pre1.1 so that individual storage-incompatible changes can bump the value. Old versions are strings, so estimate with a parseFloat, but future versions will be integers.
2010-03-16 16:31:55 -07:00
Edward Lee
9406f55ac2 Bug 554472 - Only sync prefs under extensions.weave.prefs.sync. (with a trailing dot) [r=mconnor]
Add a "." to the end of WEAVE_SYNC_PREFS value and fix up uses that did extra work to remove the dot (or something that might not have been a dot).
2010-03-23 18:51:47 -07:00
Paul O’Shannessy
7bf23a06a0 Bug 539591 - Not localized string [r=mconnor]
Localized a string in fx-prefs.xul as confirm.client.moreinfo.label.
2010-03-19 12:40:56 -07:00
Edward Lee
cf3fc65766 Bug 551874 - Figure out if we can avoid getting into partial synced state [r=mconnor]
For not-mobile clients, sync everything by specifying Infinity to keep existing math/logic working. Don't add a limit ?query if it's Infinity.
2010-03-19 11:35:01 -07:00
Paul O’Shannessy
fd097ce9f9 Bug 548939 - Use SessionStore in tab engine [r=Mardak]
Created a fake SessionStore service for Fennec that imitates the parts of Firefox's SessionStore API that we need. Then used the now "consistent" SessionStore service in the Tabs engine.
2010-03-16 15:14:32 -07:00
Paul O’Shannessy
e6b66d0994 Bug 552532 - Sync form data to mobile [r=Mardak]
Add the "Form" engine to the list of engines used on Fennec.
2010-03-16 12:00:40 -07:00
Edward Lee
650316bd73 Bug 549633 - Standardize record creation so all SyncEngines encrypt data [r=mconnor]
Always add the id and encryption value so client and delete records can be encrypted.
2010-03-05 14:46:48 -08:00
Edward Lee
28164da619 Bug 549632 - Remove storage cache, which is mostly un/incorrectly used [r=mconnor]
Remove incorrectly used cache from some engines and clean up references from SyncEngine.
2010-03-05 14:43:11 -08:00
Edward Lee
78a722ffd5 Revert svc/svc == null change from 87f9860d8e5a. 2010-03-02 11:22:20 -08:00