Commit Graph

1429 Commits

Author SHA1 Message Date
Edward Lee
39e968e8de Bug 531489 - weave lost bookmarks with same url
Do dupe detection for bookmarks like how we do folders/separators but check against the url/title. Add parentName to bookmark records, so bump version.
2010-01-25 09:33:49 -08:00
Edward Lee
4cbaa75427 Lower tab logging to trace when wrapping tabs. 2010-01-21 09:59:27 -08:00
Edward Lee
8dfdbe920a Bug 526937 - Bookmarks are re-uploaded when they get visited
Don't mark item as changed on a favicon notification to avoid churn that can result in merge messing up bookmark ordering.
2010-01-19 11:24:00 -08:00
Mike Connor
d8ffe9498d Bug 524221 - Weave's current auto-login behavior is super-annoying if you have a master password. r=Mardak
Only autoconnect if the master password has already been entered and autoretry later if not.
2010-01-07 16:13:44 -08:00
Edward Lee
e8ccb18a12 Bug 536595 - Sync fewer items per data type on mobile
Just sync a flat 50 instead of .1 of 1500 to avoid increasing slowdown when processing many items.
2010-01-06 10:00:05 -08:00
Edward Lee
def7a2495e Bug 536594 - Warn on record creation failure but continue the sync
Wrap createRecord and encrypt incase an engine fails to create one or more of the records similar to how process incoming records are wrapped.
2010-01-06 09:59:05 -08:00
Edward Lee
c53310f982 Bug 536596 - Don't force garbage collections on every record processed
Remove the forceGC at the end of each onProgress from Collections and let normal actions trigger GC.
2010-01-06 09:57:05 -08:00
Edward Lee
48b1cf979f Bug 537954 - Some tabs don't get synced
Listen for load before adding the unload listener (and the Tab listeners).
2010-01-06 09:54:15 -08:00
Edward Lee
934cd0c6ea Bug 536457 - Include the version when pinging
Append a v=<version> to include the version and make it easier to add things in the future.
2009-12-22 13:46:34 -08:00
Edward Lee
fdaee13190 Bug 535722 - Reduce the amount of logging for default log levels
Include the URI on success/fail requests and only trace log the onStartRequest. Switch various debug messages to trace and remove importing Log4Moz in fx-weave-overlay and generic-change. Drop the rootLogger to Debug to not log trace messages from unpreffed loggers.
2009-12-17 18:51:55 -08:00
Edward Lee
d3218dee1f Bug 535479 - Be smarter in getting rid of the "remote tabs" notification
Add a tri-state pref that is unset, 0, or a number (modified time in seconds) and don't show the notification if it's in the "0" state. Unset pref means no modified time has been saved, and a non-0 state is the modified time of the last synced tab. So when tabs arrive with a different modified time, switch to the 0 state. Additionally, still remember if the user ever dismissed the notification and never show it again.
2009-12-17 12:20:07 -08:00
Edward Lee
16a6c51fc6 Bug 535477 - Always sync tabs but inform Fennec users that recent tabs need syncing
Remove special casing of tabs prefs and remove tabs.backup to simplify the UI logic. Also remove dynamically enabling/disabling based on number of clients. For Fennec, show a notification about recent tabs need syncing.
2009-12-16 19:15:18 -08:00
Edward Lee
81644b3217 Bug 535476 - Ping the server once a day to help count active daily clients
Fetch info/collections? with an extra "?" once a day on a normal sync so that it gets the same data but is easily differentiated in access logs.
2009-12-16 19:08:36 -08:00
Edward Lee
33626cced1 Bug 532175 - Send event when Weave is ready to register new engines
Notify with "weave:service:ready" so observers can lazily load and wait to add engines, Weave UI.
2009-12-15 14:21:13 -08:00
Edward Lee
1213f59b7e Bug 534923 - Only show Mobile Bookmarks if there are mobile bookmarks
Fix up existing users as well as only creating the place query under AllBookmarks if there are mobile bookmarks.
2009-12-15 14:21:13 -08:00
Edward Lee
cee1a6e884 Bug 534944 - Avoid loading/importing weave files until necessary to speed up fennec startup
Have importing service.js trigger startup instead of only starting up from Weave.js, which now is used as a backup kickstarter. Only call import(service.js) when necessary from various Fennec files.
2009-12-15 14:21:12 -08:00
Edward Lee
baf9c41432 Bug 534687 - Weave's pref syncing can sync lightweight themes in a broken fashion
Trigger lightweight theme manager's currentTheme setter when changing the usedThemes pref.
2009-12-14 16:05:07 -08:00
Edward Lee
c77f5b2807 Have wipeRemote wipe just the engines' data and make sure the clients process the command. 2009-12-10 18:39:51 -08:00
Edward Lee
a48b0da141 Bug 532936 - Add root level node for bookmarks synced from Fennec
Create a mobile root in Firefox and link it to the Library UI as a query that fixes its own title if changed. Mark the mobile root on Firefox/Fennec as special so Weave uses "mobile" for the guid in the record, and items will appear in the appropriate folder.

--HG--
extra : rebase_source : fbd3afa2647204a370f7dacdf9d824e462ebb9b9
2009-12-10 16:12:14 -08:00
Mike Connor
6d3bbf8523 bug 533759 - delay real startup for 10 seconds on Fennec to get away from startup 2009-12-10 12:20:16 -08:00
Mike Connor
c12a983183 Bug 533580 - strip busted tbird support 2009-12-08 16:09:26 -08:00
Edward Lee
6f16e5f19c Bug 532770 - Allow tab sync's filtered urls to be set by pref
Expose engine.tabs.filteredUrls as a string to be used as regex and filter case insensitively.
2009-12-03 14:54:23 -08:00
Mike Connor
ccf44215ac bug 530824 - close window and start syncing much sooner when setting up second machine
--HG--
extra : rebase_source : 10919d9957e323e0f12f5ca1b67e5fe9f8294288
2009-12-03 15:03:39 -05:00
Edward Lee
88aab17b7b Bug 532722 - Use AddonOptionsLoad event to update Weave options
Make the weave add-on guid available as a constant and watch for AddonOptionsLoad with the matching addonID.
2009-12-03 12:14:56 -08:00
Edward Lee
4676b9cb18 Bug 488922 - Treat bookmarks restore specially
Add observers for bookmarks-restore-* and ignore changes during import and trigger a fresh start on success.
2009-12-02 19:20:44 -08:00
Edward Lee
c52dbbee72 Bug 532449 - Tabs don't sync until 4 syncs have happened
Always update the lastModified time to avoid tabs only sometimes getting updated.
2009-12-02 19:03:27 -08:00
Edward Lee
0da867fd27 Bug 532570 - "keyring doesn't contain a key" when signing-in with a differently-cased username
Make sure username is always lowercase so that pubkey uri, storage uri, etc. are all the same no matter how the user logged in. Server needs to be wiped to make sure existing keys with other casing are removed.
2009-12-02 18:25:18 -08:00
Edward Lee
835dcd80cf Bug 531005 - Sync is not working after update IWeaveCrypto.unwrapSymmetricKey NS_ERROR_FAILURE
Avoid concurrent key generation by updating meta/global immediately after resetting the client and have wipeServer not delete the meta collection. Also on detecting a syncid mismatch, sleep to allow remote keypair to be uploaded, and don't force a mismatch on upgrade.
2009-12-02 17:57:13 -08:00
Edward Lee
86d2294e4d Bug 531005 - Sync is not working after update IWeaveCrypto.unwrapSymmetricKey NS_ERROR_FAILURE
Check that the cryptometa is unwrappable when syncing; if not purge the key and data and make a new crypto record.
2009-12-02 17:25:14 -08:00
Edward Lee
bef67b3db3 Bug 532173 - Don't sync tabs of some pages (weave firstrun, about:blank)
Ignore certain filtered urls when creating a list of tabs for remote machines.
2009-12-02 14:46:02 -08:00
Edward Lee
08eca0017c Bug 530717 - sync after wipe local should always replace local values with remote
Always take the incoming item after a wipe and otherwise do the normal reconcile.
2009-12-02 14:44:52 -08:00
Edward Lee
c5bc7653dd Bug 531239 - clear out duplicate/old machines from Clients record
Get rid of persistent storage for clients and tabs to always fetch fresh records.
2009-12-02 14:44:17 -08:00
Igor Velkov
f0ff5ea6b0 Bug 526521 - Can't open preferences in SeaMonkey 2.0.1pre. r=Mardak
Reorganize fx-prefs to overlay itself so seamonkey can reference the same id and add Tabs sync.
2009-12-01 11:49:23 -08:00
Edward Lee
a46e202447 Share tab-gathering code for both createRecord and locallyOpenTabMatches. 2009-12-01 11:36:56 -08:00
Edward Lee
78b1fdad91 Provide a fake service for platforms that don't have the service like Private Browsing (for Fennec/Seamonkey). 2009-11-30 14:36:03 -08:00
Edward Lee
74e2b05d84 Bug 531943 - Sync scheduled by global threshold during private browsing
Use checkSyncStatus instead of directly calling syncOnIdle or scheduleNextSync so that we only schedule if we're okay to sync.
2009-11-30 14:03:59 -08:00
Edward Lee
8b1c00090a Bug 530863 - Global threshold update causes multiple syncs to fire
Make sure we only add one idle observer by keeping a flag.
2009-11-30 13:35:20 -08:00
Edward Lee
eb87765d7b Bug 530823 - Engines need to be able to specify a prefName for sharing prefs (different history types)
Use prefName for checking if an engine is enabled and have forms share a prefName with history.
2009-11-30 12:15:18 -08:00
Edward Lee
d851be860d Remove unused SnapshotStore. (Bug 524916) 2009-11-25 17:59:26 -08:00
Edward Lee
d4295ef8e9 Remove unused prefs and imports. (Bug 524916)
--HG--
extra : rebase_source : 074e542f63ee840b61db7fe63a6c3540c13a31a5
2009-11-25 17:49:15 -08:00
Mike Connor
7e923534c2 archive local bookmarks before wiping
--HG--
extra : rebase_source : dd54af2118cf60c9e4f4b3bf08b7a5c61e9e78b8
2009-11-25 17:09:32 -08:00
Mike Connor
86380e1e7c bug 530832 - make Merge more prominent, and clearly the recommended choice, with crisper wording
--HG--
extra : rebase_source : 68fdf9035bf3354a99c93b5050eb4af58c54a072
2009-11-25 17:08:51 -08:00
Edward Lee
7820fd7df1 Bug 530904 - tabs list style doesn't match fennec lists
Make headers larger, adjust text margins, add nokia sans font family.
2009-11-25 16:59:02 -08:00
Edward Lee
df947df75e Bug 531177 - Tabs don't sync from firefox (when there's lots of tabs)
Simplify tab record to just use deferGetSet like the other records and sort tabs based on their last usage to pick out a subset.
2009-11-25 15:22:45 -08:00
Edward Lee
dd2f688ee2 Bug 531171 - Tabs don't always update
Only expose that the tab engine knows about the current client's tabs, so always create/apply incoming and only create records tabs for local.
2009-11-25 15:17:39 -08:00
Edward Lee
877e53a9da Bug 531170 - Tabs don't sync from fennec
Add listeners for Fennec tab events the same way we do it for Firefox and share listener logic for various event types.

--HG--
extra : rebase_source : 685e45c16052db3d285c25c68db47680b7d15f72
2009-11-25 15:14:56 -08:00
Mike Connor
f4d942624f bug 527504 - overlay macBrowserOverlay so menu works on all windows that include
--HG--
extra : rebase_source : 1c95c891e89557f87539a66b678e3b54d659ce39
2009-11-24 15:50:51 -08:00
Edward Lee
b4233752d2 Bug 524916 - remove any/all code/images/strings that we aren't using anymore
Remove unused sync engines (cookies, extensions, input, microformats, plugins, themes).
2009-11-24 16:02:55 -08:00
Edward Lee
c05e0c5f94 Remove trailing whitespace from the codebase. 2009-11-20 14:34:20 -08:00
Edward Lee
d032f1effe Bug 527790 - Allow client names to be different from the default "Firefox"
Generate a client name based on the logged in username, appname, hostname, and profile name.
2009-11-19 23:31:04 -08:00
Edward Lee
c9efc4abfe Bug 514545 - weave mangles bookmarks
For both folders and separators, use the parent name (not guid) in addition to the item's title/position to determine if it's a dupe. This modifies the bookmark format for folders and separators, so a storage version bump is needed.
2009-11-19 21:34:17 -08:00
Edward Lee
0342adbfbc Bug 528539 - Start over should warn about incorrect username/password before prompting for secret phrase
Show Connecting... when signin in on page 0 and Verifying... when checking the passphrase on page 1.
2009-11-18 14:42:13 -08:00
Edward Lee
19934febcc Bug 507666 - Handle deleting places history
Use onBeforeDeleteURI to get the page's GUID and upload the delete record and process it by removing the page.
2009-11-18 11:47:25 -08:00
Edward Lee
ac2b6c824d Bug 529103 - Removing folders must use removeItem not removeFolder
Switch to Svc.Bookmark.removeItem from this._bms.removeFolder.
2009-11-18 10:24:09 -08:00
Edward Lee
b9f1c4dc0e Bug 525786 - Weave's log has a record of private browsing start/stop times
Switch some messages like private browsing, network change to trace and make the default service.main level Debug instead of Trace.
2009-11-16 17:11:10 -08:00
Edward Lee
cc9e18c9bf Comment out some trace logging in service.main for now (they always appear). 2009-11-12 19:25:43 -08:00
Edward Lee
8bcc3584b3 Bug 526942 - Try to sync tabs when viewing remote tabs
Try fetching tabs when loading the remote tabs view and if the sync got new tabs, reload the page.
2009-11-12 15:18:43 -08:00
Edward Lee
8b8ea72a82 Bug 528343 - Tabs don't sync
Set the current client on any tab change for tracker.changedIDs and reset that when sync finishes.

--HG--
extra : rebase_source : 3100141bc1fdfaaa959b5f990a9538527761aace
2009-11-12 14:48:54 -08:00
Edward Lee
79f980a983 Bug 527767 - Sync more history items on first sync
Syncing 1000 items should be good enough for anybody......
2009-11-12 13:51:28 -08:00
Edward Lee
64503c605c Bug 528090 - When logging out, stay disconnected until told to connect
Toggle the autoconnect pref on login/logout.
2009-11-12 13:49:41 -08:00
Mike Connor
8ebf17dca7 Backed out changeset 23d90c46b89c 2009-11-12 15:44:33 -05:00
Edward Lee
9723bf4362 Bug 528278 - Remove remote commands and wait for user on wipeRemote/changePassphrase
Store the reason for starting fresh (new syncId) in meta/global and fail remoteSetup on certain reasons to let the UI show a notification to the user for a response (pick merge or change passphrase). Code paths (sync, prep, etc.) related to remote commands are removed.
2009-11-12 11:54:21 -08:00
Mike Connor
4ee721a9df bug 526569 - add explicit choice to setup flow for additional computers
--HG--
extra : rebase_source : 45e0af54dc4b059368e14fcf241fe4ab3250b151
2009-11-12 13:11:54 -05:00
Edward Lee
2c1baed50d Remove unwanted info logging for bookmark indices. 2009-11-11 15:20:19 -08:00
Edward Lee
37a2e8a729 Reset the score when calculating the global score. 2009-11-11 15:19:00 -08:00
Edward Lee
89460e2378 Bug 527766 - Sync history pages with a single visit
Backout bug 518972 (6954c93b8903) so now we push all data instead of pages with more than 1 visit.
2009-11-10 15:52:40 -08:00
Edward Lee
5013b211cb Bug 527775 - Allow customizable api version on the client
Add a new pref storageAPI (currently 0.5) that gets used for storage urls.

--HG--
extra : rebase_source : 74ca13de918d4211cbdcf708c30cc03d876fec7d
2009-11-10 15:24:31 -08:00
Mike Connor
a3dc67aa1b bug 518075 - fix copy/paste fail 2009-11-09 16:30:37 -05:00
Edward Lee
28e1e7e40d Bug 527379 - Passphrase gets synced back to previous value
Persist the new passphrase in the login manager to have it sync the modify (delete+add).

--HG--
extra : rebase_source : 940c8362aa3900615a06b73e34815acd6365e086
2009-11-09 12:56:14 -08:00
Mike Connor
36e194a542 bug 518075 - fix timer usage, reset engine score once added to globalScore 2009-11-09 14:33:53 -05:00
Mike Connor
14acb12656 bug 518075 - tweak original patch and item values 2009-11-09 12:57:58 -05:00
Edward Lee
8c078124a1 Bug 526661 - Use Firefox content to display the activity log
Just open the file as a tab to show the activity log. Remove related xul/js/strings. Saving can be done through normal Save Page As... No manual cleaning of the log, but the size is much smaller.
2009-11-04 17:01:49 -08:00
Edward Lee
419e62b8de Missing let for declaring meta. 2009-11-04 16:27:35 -08:00
Edward Lee
06bb9dbc7d Bug 519139 - Weave freezes the browser for 5-10 secs when starting sync
Correctly remove the separator getter just like for folders to prevent triggering the lazy loader on every sync.
2009-11-04 16:07:05 -08:00
Edward Lee
043bb186cb Bug 513438 - No easy way to enable / re-enable Weave
Assume Weave is always enabled (don't store it in a pref) and only disable if checks fail on startup.
2009-11-04 15:27:08 -08:00
Edward Lee
6c926b2c49 Avoid undefined property warnings by checking for null first instead of comparing. 2009-11-04 15:12:29 -08:00
Edward Lee
cdf02beb62 Remove unused openStatus util call for status.xul. 2009-11-03 14:39:35 -08:00
Mike Connor
18719870bc bug 524916 - remove /xmpp from Sync, since we're not using it 2009-11-02 22:38:50 -05:00
Mike Connor
bcb7b750cb bug 485108 - drop status dialog, show status including engines on statusbar, remove dead status bits 2009-10-28 03:42:35 -04:00
Mike Connor
51dd2f0b6c bug 520065 - partial sync fail should be an error, add better error string, and fix status object misuse so it actually works 2009-10-27 19:15:20 -04:00
Mike Connor
0254f70199 moar error checking, turn field validation back on in wizard, do better rewind/forward enabling
--HG--
extra : rebase_source : 473eccb2c879769b94011d6ae6b947a6e070fdaa
2009-10-23 03:05:41 -04:00
Mike Connor
258c4dcb9a merge backout 2009-10-23 01:11:07 -04:00
Mike Connor
95f627e9ca Backed out changeset 4e518b3ae5d2
overzealous pruning ftl ;)
2009-10-23 01:10:36 -04:00
Edward Lee
f8a9d55658 Bug 483089 - Weave Preferences button in Add-ons manager should be enabled
Show the new pref pane (bug 521357) by having the options.xul file for Fennec (bug 523384) close iteself and open the real prefs window.
2009-10-22 16:15:34 -07:00
Edward Lee
0046b94977 Bug 523384 - Update Fennec UI for 0.8 release
Provide an optionsURL to show settings on Fennec and update the options on various events like sync, login, options loaded.
2009-10-22 13:51:50 -07:00
Edward Lee
06738b4452 Remove unused TabsNotification for remote virtual tabs notification. 2009-10-19 17:06:50 -07:00
Edward Lee
704165705e Remove unused change password/passphrase/generic dialog. 2009-10-19 16:37:25 -07:00
Edward Lee
557fd95a67 Remove unused pick-sync dialog (<==, <==>, ==>). 2009-10-19 16:24:32 -07:00
Edward Lee
e5604f6745 Bug 517598 - Put useful interestingness/index values for bookmark
Use places to figure out the frecency of a bookmark and give items (not just bookmarks) a bonus if it's sitting in the toolbar.
2009-10-16 16:19:28 -07:00
Edward Lee
02e3dda699 Bug 517598 - Put useful interestingness/index values for history
Additionally get the frecency for a history GUID/page when getting the url and title.
2009-10-16 16:18:53 -07:00
Edward Lee
862fb7381e Ignore sortindex when comparing if records are different because it's only used for ordering of records. 2009-10-16 16:18:38 -07:00
Edward Lee
a9a420b1bb Keep the unsorted bookmark folder unsorted and not worry about the ordering. 2009-10-13 16:27:10 -07:00
Edward Lee
61295bf349 Bug 522084 - Automatically sync much sooner if there's more data to fetch from the server
Have the syncInterval getter return with a lower interval for non-mobile clients while still enforcing backoff if it's bigger than the sync interval.
2009-10-13 11:56:46 -07:00
Edward Lee
bd2a51d362 Bug 522077 - Download a certain total number of items each sync instead of fixed "catch up"
Limit the initial the first fetch of new items by a total number of fetch and subtract the number of items processed. Use the difference to keep fetching more items from the backlog in chunks.
2009-10-13 11:20:28 -07:00
Edward Lee
8ce9ab3899 Split multiple id deletes into 100-id chunks instead of hitting max apache URI length. 2009-10-12 18:11:31 -07:00
Edward Lee
6f198b2a1f Bug 482906 - Gracefully handle wiping weave passwords if syncing doesn't restore them
After potentially wiping out all local passwords, save the Weave passwords to disk.
2009-10-12 16:45:40 -07:00
Edward Lee
13cddbf9bc Bug 520215 - Only wipe if data is able to be restored from the server
For each engine, try decrypting a record from the server before wiping local data.
2009-10-12 16:22:54 -07:00
Edward Lee
a994e4258f Simplify logic for Engines.getAll/Enabled and use Enabled for main sync loop. 2009-10-08 13:51:22 -07:00
Edward Lee
7d40472caa Land external changes to Sync.js: setTimeout timer reference, checkAppReady comments/calls. 2009-10-08 11:45:51 -07:00
Edward Lee
3e50bcc32f Bug 517492 - Sync will not complete, causing firefox not to quit successfully
Lazily listen for quit-application on the first sync-async call and bail out if the notification is sent while waiting for the callback.
2009-10-07 18:15:38 -07:00
Edward Lee
92b88d22c8 Bug 519147 - "Sign In" is greyed out in Weave menu when Firefox starts, in Weave 0.7pre4
Switch back to STATUS_OK (from STATUS_DELAYED) when the delayed startup is actually called.
2009-10-07 10:47:55 -07:00
Edward Lee
4c119524e4 Move the status record into a separate Status object exported with the Weave object. 2009-10-07 10:47:43 -07:00
Edward Lee
b41a7fd607 Remove eval() workaround now that jit.chrome doesn't crash on latest 1.9.2 fennec (bug 517247). 2009-10-02 13:46:38 -07:00
Edward Lee
4af9c4ceef Don't try logging out when already logged out -- about:weave calls logout which tries to _log, but Fennec weave hasn't loaded Weave yet. 2009-09-30 15:16:56 -07:00
Edward Lee
545f5e72b9 Bug 518226 - Service should bubble up partial sync information
Set a flag on the status object to indicate partial sync after syncing an engine. For now, just show some text under the sync arrows to let the user know nothing needs to be done.
2009-09-30 14:46:59 -07:00
Mike Connor
a783c62509 fix merge fail 2009-09-29 18:40:18 -07:00
Mike Connor
8a69ade4d1 bug 518273 - need to handle not having an active node assigned, r=edilee
--HG--
extra : rebase_source : f86c6cc164241cee263345de5e13dd5ae0a3758b
2009-09-29 18:33:41 -07:00
Edward Lee
52565baca2 Remove unused threshold code that will be replaced soon with bug 518075. 2009-09-29 13:02:08 -07:00
Edward Lee
f519abe53b Don't wrap changePassword with _catch and persist the password on success. 2009-09-28 16:28:38 -07:00
Edward Lee
14764a5484 Don't unnecessarily throw from verifyLogin and remove its _catch wrapper.
--HG--
extra : rebase_source : ca74b47b96f4d1fbc1b8454d5b505a57b558e729
2009-09-28 16:13:42 -07:00
Edward Lee
c3a8636447 Bug 519262 - Forgot password doesn't work -> throbber keeps spinning
Just get the pref without slashifying with getURLPref.
2009-09-28 13:34:56 -07:00
Edward Lee
16a246fc75 Call eval() in Sync-async loop to work around crashes on 1.9.2 Fennec. 2009-09-25 20:53:46 -07:00
Edward Lee
622aae4ece Default to mobile sync interval (5 min) for account creation and upgrade. 2009-09-25 20:47:38 -07:00
Edward Lee
32f373dcc0 Don't unconditionally forceGC on processIncoming especially when there's nothing to process. 2009-09-25 18:39:24 -07:00
Edward Lee
a69c3b332a Sort the sync timing report to show certain functions first. 2009-09-25 18:38:47 -07:00
Edward Lee
ff074548e7 Use the default or backoff intervals only after checking a previously scheduled sync and pick the bigger of the two. 2009-09-25 17:32:35 -07:00
Edward Lee
81fce3dc55 Run sync on idle on a separate event so that login can return and release the lock before trying to sync. 2009-09-25 17:28:48 -07:00
Edward Lee
4f389c5c8a Bug 518972 - Only upload history records that have more than one visit
Allow each engine to provide a custom Collection object and have History provide a collection that filters out certain data. This is inefficient because we have to first create then encrypt the record before we can filter it out.
2009-09-25 16:52:12 -07:00
Edward Lee
51a7e2fb0b Bug 518958 - Only sync tabs if there has been tab activity
Check the score, which gets bumped up on tab open/close/select, to decide if tabs should be marked as changed.
2009-09-25 16:14:26 -07:00
Edward Lee
af91626ec4 Persist sync intervals because we only update it when changing the number of clients. 2009-09-25 15:41:27 -07:00
Edward Lee
f042fdc078 Bug 514601 - Don't send DELETE for old history/form data on every sync
Don't send any deletes as the server will do the delete with bug 518945.
2009-09-25 15:30:26 -07:00
Edward Lee
4abc9f56ba Bug 517597 - waste fewer resources while a user only has one client active
Adjust how often Weave syncs based on the number of clients and only sync tabs if there are multiple clients.
2009-09-25 15:05:09 -07:00
Edward Lee
87014d7af0 Bug 518864 - Persist "next sync time" across events that disable sync
Save a nextSync value in a pref and use it to trigger a sync-on-idle if the "next sync time" already passed when logging in. Make sure to default to backoff time first, then next sync, then use the default.
2009-09-25 11:46:29 -07:00
Edward Lee
f0d86921f5 Wire up "custom" inputs to set/read and show/hide server url box. 2009-09-25 09:11:19 -07:00
Edward Lee
e3741b6774 Bug 513944 - Weave should not load / do anything until it absolutely needs to
Weave already triggers on a late notification and puts itself on the event loop, so just additionally delay startup based on the number of open tabs (which will all be busy at startup).
2009-09-25 08:13:12 -07:00
Mike Connor
426cb34a4f Land some initial statusbar UI bits of bug 513944 and remove unused/debug code. 2009-09-24 23:16:27 -07:00
Edward Lee
7518b09ad6 Add a simpler-to-use nsITimer wrapper, Utils.delay, that can use a named property of an object to additionally delay or clear the timer. Get rid of Utils.EventListener and simplify/fix up users. 2009-09-24 22:51:38 -07:00
Edward Lee
2ca32ed22d Correctly cancel any sync triggers after starting a sync with a shared function that removes timers and idle observers. 2009-09-24 19:04:06 -07:00
Edward Lee
51761d2ab6 Bug 518146 - Generate shorter GUIDs than nsIUUIDGenerator
Randomly generate 10 characters from a pool of 70 possible characters for an equivalent 61.29-bit GUID which should have around 1% chance of collision (within a collection) after ~100 million records.
2009-09-24 15:54:47 -07:00
Edward Lee
2fbfee64a6 Bug 518077 - Add custom settings for "sign in" to set things like server url
Provide an initial implementation to read and set preferences: autoconnect, serverURL. For now show them in a "Custom settings" expando tab like the one for create account, but the styling isn't great.

--HG--
extra : rebase_source : 3fc1e8bad7786cf06e2da8c95e7bca5f50fb6ec3
2009-09-22 01:00:43 -07:00
Dan Mills
2c3554a154 Bug 518069: forgot password UI / bug 518067: directional sync dialog during setup 2009-09-21 23:52:00 -07:00
Edward Lee
6ffc23f7f0 Don't update the cluster on each login unless verify login failed or there was no cluster set. 2009-09-21 18:03:56 -07:00
Edward Lee
0e855e54d8 Bug 518022 - Logging in with invalid username results in "Couldn't sign in: Network error"
Report 404 info/collections responses as "login rejected" if we're on the right cluster.
2009-09-21 17:34:19 -07:00
Edward Lee
eba12cbe8d Bug 518018 - Default to serverURL instead of userAPI on 404 cluster check
Rework server/user/misc prefs to allow relative paths and full urls for generating API paths. Cache string properties of generated URLs under the storageAPI instead of using dynamic getters.
2009-09-21 17:13:41 -07:00
Dan Mills
2cc002ba27 implement forgot password/passphrase dialogs 2009-09-20 19:26:01 -07:00
Edward Lee
9b503e9895 Keep track of previously opened windows of pages that should only have one instance open and close the old one if it's still open. 2009-09-18 00:15:37 -07:00
Edward Lee
666d0373fe Land about-weave on weave. Bug 516350 - about:weave round 3 followup fixes. r=thunder 2009-09-17 14:51:00 -07:00
Edward Lee
0611761d74 Use trace logging for reporting GUIDs. 2009-09-17 14:41:24 -07:00
Edward Lee
8db1de49fa Merge weave to about-weave. 2009-09-16 19:16:48 -07:00
Edward Lee
b48bdeef35 Remove meta serialization now that resource takes objects. 2009-09-16 19:15:55 -07:00
Edward Lee
fe86dd9174 Remove trailing period for passphrase error code. 2009-09-16 19:15:46 -07:00
Edward Lee
5b99d57ab4 Use the lazyStrings object for error strings to avoid using the wrong file (locales vs locale). 2009-09-16 16:52:43 -07:00
Edward Lee
882a10af2c Resolve conflicts by taking the already-fixed about.js and locally-fixed constants.js.in. 2009-09-16 13:56:37 -07:00
Edward Lee
4b97bca2eb Merge mconnor's about-weave branch to weave-about-weave with conflicts. 2009-09-16 13:53:15 -07:00
Edward Lee
584475732e Resolve constants.js.in conflicts by switching to the new format. 2009-09-16 13:45:08 -07:00
Edward Lee
7a23b07d84 Merge weave to weave-about-weave with conflicts. 2009-09-16 13:39:51 -07:00
Dan Mills
08c0f91578 Bug 516350 - about:weave round 3 initial landing 2009-09-16 13:36:11 -07:00
Edward Lee
748bd77b8f Get rid of the ugly EXPORTED_SYMBOLS array of strings for constants and generate it from a constants hash that sets the value and provides the exported name. Remove some unused constants and line-up the values at 40th column. 2009-09-15 19:07:23 -07:00
Mike Connor
30f7aa6e96 fix minor merge kvetch 2009-09-15 21:57:06 -04:00
Dan Mills
5094a04f3d initial patch
--HG--
extra : rebase_source : 250c8f0d85483300147a6f0d691e0214db6d837b
2009-09-15 21:54:05 -04:00
Mike Connor
4faaba2018 bug 511549 - make detailedStatus much smarter about errors and backoff, r=edilee
--HG--
extra : rebase_source : 42e3eb9c89d2567d18c02e7583202e284dd69b0e
2009-09-15 21:38:52 -04:00
Edward Lee
e0cdb15290 Bug 516096 - Nothing loads; about:weave has empty boxes/buttons; can't log in or sync
Work around bug 514803 by not calling toLocaleString() and generate a date string manually.
2009-09-11 17:14:45 -07:00
Edward Lee
7efe9c1d76 Merge weave-partial-view to weave. Bug 507429 - Partial sync download support. r=thunder 2009-09-11 16:48:58 -07:00
Edward Lee
7556f0c2cd Address review comments nits. r=thunder 2009-09-11 16:44:26 -07:00
Edward Lee
d932000cff Chop off the end of long URIs for debug output onStartRequest. 2009-09-11 14:52:27 -07:00
Edward Lee
7f9b6c7f87 Be less chatty when showing GUIDs and ignore cases. 2009-09-11 14:39:48 -07:00
Edward Lee
91e977a052 Fix exception name. 2009-09-11 13:10:19 -07:00
Edward Lee
e856402be7 Add some comments to partial download code and remove other comments. 2009-09-11 08:24:42 -07:00
Edward Lee
9380981a9e Merge weave to weave-partial-view. 2009-09-10 23:18:33 -07:00
Edward Lee
fb1bc5da49 Bug 507429 - Partial sync download support
Only fetch a limited number of items on first/update syncs and if we get the same number, ask the server for the ids to fetch later. Also on every download, process some of the backlog and save the list of GUIDs to disk as json for cross-session support.
2009-09-10 23:11:33 -07:00
Edward Lee
8b8447ab6e Remove some unnecessary logs that follow right after the notify/event now that we only show verbose. Only log non-success response body for Trace. 2009-09-10 22:57:36 -07:00
Edward Lee
dadc08925c Use a short-circuiting check to determine if a history visit already exists. 2009-09-10 21:27:47 -07:00
Edward Lee
dc6d0cb84b Don't create a GUID when looking for dupes and set the GUID when adding a url. 2009-09-10 20:04:34 -07:00
Edward Lee
5944a1f90a Add limit as a param to Collection. Make requesting guids the default. 2009-09-10 14:18:31 -07:00
Edward Lee
b59b775794 Merge weave to weave-partial-view. 2009-09-10 12:42:29 -07:00
Edward Lee
8f5372e6b1 Update lastSync to the lastModified time from info/collections instead of updating times on each record. This is to prepare for fetching a list of GUIDs and processing a list of GUIDs. 2009-09-10 12:41:38 -07:00
Edward Lee
b0c3b9005e Bug 515676 - Allow giving objects to PUT/POST without Filters to avoid stringify([parse(stringify(stringify(obj)))])
Get rid of Filters and automatically JSON.stringify PUT/POST data that aren't strings, so plain Records can be passed in to PUT and POST. This leverages toJSON of Records to provide an object that can be serialized. Fix up client record serialize/deserialize to still escape/unescape non-ASCII.
2009-09-10 11:05:13 -07:00
Edward Lee
e8d9f12442 Bug 515678 - Provide a smart getter to get the object representation of a JSON Resource response
Always allow getting an object representation of potentially JSON response for any Resource instead of explicitly on filterDownload. Update existing Resource GETs that manually parse the response. This prevents the String response from accidentally toString()ing a filteredDownload that converted to a different type.
2009-09-10 11:04:36 -07:00
Edward Lee
0dc7cf0d81 Merge weave to weave-partial-view. 2009-09-08 23:35:21 -07:00
Edward Lee
87de5afcd8 Detect dupe separators by identifying them by their position and generate the lookup lazily with the folder/title mapping for now. 2009-09-08 23:33:58 -07:00
Edward Lee
258a985cee Expose a _handleDupe on engines and provide a custom one for bookmarks that tracks GUID changes so that it can keep an alias mapping to fix incoming item properties (id, parent, predecessor). Move out _reparentOrphans so that it is triggered on update and not just create because folders can change ids to the right parent. 2009-09-08 23:33:15 -07:00
Edward Lee
c021c5dcf6 Remove the brief log now that we only show verbose. 2009-09-07 18:24:21 -07:00
Edward Lee
19443b737b Bug 514323 - Use info/collections to check if there's new data. r=thunder
Fetch info/collections before syncing engines and set the lastModified property on the engine so that they can check if they need to process incoming.
2009-09-03 21:30:40 -07:00
Edward Lee
ec0c49c88c Bug 513191 - cloud -> client sync wipes auth cache, including weave credentials. r=thunder
Bug 506790 - Utils.setPassword unnecessarily removes logins and add them when the realm/user/pass are the same
Bug 506792 - Utils.setPassword gets called multiple times for both password and passphrase on login
Bug 514499 - Passphrase not verified with auto-login
Don't aggressively persist the password with smart (dumb?) setters that clear out the temp password; and provide a separate function to persist the login. This effectively makes setting password/passphrase always temporary until persisted, which will check if the value is different from the one already stored on disk. A number of verify/cluster functions are privitized to not need to take user/pass/passph as arguments so that the default authenticator will work, and verifyPassphrase will use the stored passphrase to correctly handle auto-login.
2009-09-03 21:11:32 -07:00
Edward Lee
9ec91eed07 Bug 514600 - Track how long various parts of sync take
Instrument all functions that are part of the sync engine (except some constructors, etc.) and generate statistics (min/max/sum/num/avg) for processing. For now with the default appender, implement toString to report just the total time.
2009-09-03 20:11:36 -07:00
Edward Lee
afeb89b845 Remove unimplemented engines so they do not initialize. 2009-09-03 19:57:02 -07:00
Edward Lee
0fa22bedac Switch to 0.5 server API for deleting multiple ids from a collection. 2009-08-31 18:30:44 -07:00
Edward Lee
0e889ae8fb Resolve bookmarks.js merge conflicts switching to batchSync (with trailing comma). 2009-08-31 18:04:40 -07:00
Edward Lee
5a3c53fd6a Merge weave to weave-partial-view w/ conflicts. 2009-08-31 18:03:35 -07:00
Edward Lee
678f177443 Detect dupe folders by title for now. Might need to update the hash during sync if titles are added. 2009-08-31 17:54:21 -07:00
Edward Lee
f8541ddf2f Pick a canonical guid to keep in a way that all machines can agree without having all data -- "smaller" guid. 2009-08-31 17:51:26 -07:00
Edward Lee
994b05a7d1 Implement multiple ids deletion for use with 0.3 APIs. 2009-08-31 17:50:23 -07:00
Edward Lee
97e3f746cb Switch end-of-sync deletes to something SyncEngine is aware of and runs at _syncFinish. 2009-08-31 17:30:34 -07:00
Edward Lee
5e9d07e643 Use places utils to find an existing bookmark dupe for an incoming record. 2009-08-31 17:29:47 -07:00
Edward Lee
5468320159 Convert uses of recordLike/findLikeId to findDupe except Bookmarks is unimplemented. 2009-08-31 17:27:30 -07:00
Edward Lee
e633a4dcea Remove mostly unused FaultTolerance service and fix up remaining references. 2009-08-31 17:17:20 -07:00
Edward Lee
c70241b5ce Bug 512457 - Report errors before they get eaten up by runInBatchMode
Save the exception from inside runBatched and not have runInBatchMode return failure, so we can then expose the exception.
2009-08-31 16:28:00 -07:00
Dan Mills
db5d4e1bd6 remove 'GPrefs' from Svc, Preferences will do fine; don't make the username in the center status a link, since the whole area is a click target; open 'generic dialogs' for change password & passphrase 2009-08-26 21:20:08 -07:00
Edward Lee
fae3856f53 Remove Firefox Weave pref pane and point Preferences... to about:weave.
--HG--
extra : rebase_source : c8e47a770d342dc52aa49d8912be66cd2fa1bfa2
2009-08-26 19:50:39 -07:00
Dan Mills
b039c047b4 about:weave polish: add localized help drawer & other small fixes
--HG--
extra : rebase_source : e82da40950dd20d6f418c90cb9b02ba896cd5693
2009-08-26 18:48:22 -07:00
Edward Lee
b8e1f6aad3 Bug 512637 - Use newlines instead of JSON collection for incremental parsing. r=thunder
Switch to newline mode when using a collection record handler, and look for newlines! Easy! Update test to provide newline-separated strings instead of JSON.
2009-08-26 18:09:41 -07:00
Edward Lee
ab865b703e Land weave-0.5-api on weave. r=thunder. 2009-08-26 18:03:52 -07:00
Edward Lee
f33e9b23f3 New User API returns server code 2 instead of http 417. 2009-08-26 17:59:50 -07:00
Edward Lee
cb743d3b33 Remove old modified arg for collections. 2009-08-26 17:52:46 -07:00
Edward Lee
76cc6cfde5 Save an exception/catch when failing to import a record. 2009-08-26 17:49:23 -07:00
Edward Lee
943386f42d Server expects catcha-challenge not captcha_challenge for new users. 2009-08-26 16:45:24 -07:00
Dan Mills
e24dbcf68f Parse new 0.5 error codes. 2009-08-26 16:44:30 -07:00
Edward Lee
4175f5ee7e Resolve lastChannel removal and 0.5 api changes. r=thunder 2009-08-26 16:09:48 -07:00
Edward Lee
9fd47b7f98 Merge weave to weave-0.5-api w/ conflicts. 2009-08-26 15:42:05 -07:00
Edward Lee
009411f482 Bug 511746 - Resource.foo shouldn't throw except in exceptional cases. r=thunder
Get rid of lastChannel and return a String object from _request with additional properties of status, succeeded, headers -- even if the response was handled by cache. Update engines to check for non-success and throw the failure. Update tests to use these additional properties instead of lastChannel, etc.
2009-08-26 15:32:46 -07:00