Commit Graph

657 Commits

Author SHA1 Message Date
Dan Mills
63f0615496 comment depth function for clarity, remove incorrect warning 2008-11-25 16:37:19 +09:00
Dan Mills
82dda0e367 sort incoming records by depth, so that folders are created before their containing items 2008-11-25 16:12:00 +09:00
Dan Mills
36a866416f query the bookmarks service to find out if we have an item (instead of our snapshot cache) 2008-11-25 14:49:18 +09:00
Dan Mills
fbbdb6c964 use the new modified property returned after a server POST 2008-11-25 14:48:22 +09:00
Dan Mills
938a1e7ad5 server payload decoding problem is fixed, so remove hack. we now always decode the payload after downloading. 2008-11-25 14:47:43 +09:00
Dan Mills
69074b307e collection iterator is now async, it needs to run the new record's download filter 2008-11-25 14:46:18 +09:00
Dan Mills
fb99c9f85e fix bookmark deletion sync 2008-11-25 01:49:02 +09:00
Dan Mills
e5c9923591 add some debug chatter 2008-11-25 01:48:38 +09:00
Dan Mills
409940f099 clean up sync function, get last timestamp properly from post result, save correct snapshot at the end, only attempt to post changes to server if there are any changes at all 2008-11-25 01:04:14 +09:00
Dan Mills
46c108167d add tmp hack to work around server payload json decoding bug 2008-11-25 01:03:01 +09:00
Dan Mills
5b84631f1a enable batch upload, yay! 2008-11-20 10:38:53 +09:00
Dan Mills
e3f35ddd81 merge with upstream changes 2008-11-20 09:25:32 +09:00
Dan Mills
35bbc1b8c0 work with NewEngine 2008-11-20 09:21:12 +09:00
Dan Mills
48b9bd885e more NewEngine impl 2008-11-20 09:20:25 +09:00
Dan Mills
45c250d767 make it so filters can be called (to e.g. manually copy resource data out 2008-11-20 09:19:51 +09:00
Dan Mills
0ee5550418 attempt at fixing login/server setup, needs more work still 2008-11-20 09:18:35 +09:00
Dan Mills
5642c55e6b remove unused fields, add half-baked impl to get password from ui 2008-11-20 09:17:15 +09:00
Dan Mills
d8e17d1e30 add filter to wbo to set their id automatically based on uri 2008-11-20 09:16:08 +09:00
Dan Mills
a542b05bc8 collection class 2008-11-20 09:15:34 +09:00
Dan Mills
67f89e00ec add rsa gen debug messages 2008-11-20 09:15:16 +09:00
Dan Mills
14b5494b13 record import (cache) fix 2008-11-20 09:14:42 +09:00
Anant Narayanan
6fc8951de6 Fix redeclaration (bug #463870) 2008-11-13 01:51:24 +01:00
Dan Mills
cf0df0d424 cache crypto meta objects 2008-11-08 20:24:12 -08:00
Dan Mills
b12787f2f2 crypto changes: private keys get their own iv and salt, crypto meta records get a separate iv and no salt. various fixes in crypto code and other wbo related objects. fix crypto tests to match. 2008-11-08 02:00:33 -08:00
Dan Mills
7091144051 make sure records always have a data field that represents their state (e.g. for serialization); add some pki routines (createKeypair); add incoming/outgoing queue to NewEngine 2008-11-06 23:23:35 -08:00
Dan Mills
43d4c7b865 say sync complete when it is! 2008-11-06 19:19:32 -08:00
Dan Mills
6f6665b8e1 remove some sharing code, derive from NewEngine 2008-11-06 19:18:46 -08:00
Dan Mills
8d20157eb8 add a temp NewEngine class that will talk to the 0.3 server 2008-11-06 19:18:07 -08:00
Dan Mills
f617e369b1 lots o' fixes 2008-11-06 17:37:17 -08:00
Dan Mills
934870ff34 onException cleanup 2008-11-06 17:36:41 -08:00
Dan Mills
ac2f30d7d5 url -> uri 2008-11-06 17:36:19 -08:00
Dan Mills
32e411e1a4 print exception in async stack traces, skip async frames in async stack traces 2008-11-06 17:34:34 -08:00
Dan Mills
d918ddef75 use util module's stack formatter 2008-11-06 17:32:33 -08:00
Dan Mills
d3af90034a hg merge 2008-11-03 15:02:00 -08:00
Dan Mills
6151afb26d fix log4moz calls (new api), fix module imports for renamed modules 2008-11-03 15:00:38 -08:00
Dan Mills
11eb07f4eb remove lots of code that will not be needed with new server 2008-11-03 14:59:45 -08:00
Dan Mills
9e8b4efb40 remove server lock wrapper; change local lock to work with service.js local locking api 2008-11-03 14:57:59 -08:00
Dan Mills
8c5dd2449d makeUri: don't throw on invalid uris, return null instead 2008-11-03 14:56:56 -08:00
Dan Mills
aa849d577c log4moz api change: Log4Moz.Service is gone. There is now a Log4Moz.repository which will auto-instantiate to a LoggerRepository (but can also be set if one wishes to use a different one). Also includes some other minor changes, e.g. formatters are now optional (and default to a BasicFormatter if not provided) 2008-11-03 14:48:53 -08:00
Dan Mills
3de7d24138 Update Observers js module to latest version 2008-11-03 14:40:28 -08:00
Dan Mills
bf42503d89 add prefs js module 2008-11-03 14:40:09 -08:00
Dan Mills
644df6d0c3 remove dav.js (gone) and remote.js (resources now in resource.js) 2008-11-03 14:38:34 -08:00
Dan Mills
a8e372f80f add base record types for the new weave server api 2008-11-03 14:37:51 -08:00
Dan Mills
77c85160e0 updates to resource class, use a new Auth service with pluggable 'authenticator' objects 2008-11-03 14:36:29 -08:00
Dan Mills
3cc9e0fa65 bump version to 0.2.7 2008-10-16 12:32:40 -07:00
Dan Mills
6a2010fc4c disable bookmark sharing hooks 2008-10-16 12:30:30 -07:00
Dan Mills
75326713c1 Bug 443489: use the correct cookie xpcom interface 2008-10-16 12:29:21 -07:00
Dan Mills
14d2156bc7 Add some logging helpers to log4moz, written by myk 2008-08-19 17:28:02 -07:00
Dan Mills
7ff40bec59 Bug 450526: fix tag sync bug created by a typo in deepCopy. Fix by Mishail <mishail.mishail@gmail.com> 2008-08-14 17:23:11 -07:00
Dan Mills
e53290c477 catch exceptions from microsummaries that don't have a static title set 2008-08-13 15:23:15 -07:00
Dan Mills
72f3cc9e31 Bug 450396: password engine does not define a tracker 2008-08-13 15:19:56 -07:00
Dan Mills
1237305322 bump version to 0.2.6 2008-08-08 15:14:04 -07:00
Dan Mills
556e90536f merge upstream changes 2008-08-08 14:43:36 -07:00
Dan Mills
1f877adb30 move some code from the engine to remote.js; rename FileEngine to BlobEngine (since it doesn't actually sync complete files); clean up SyncEngine's sync method 2008-08-08 14:42:57 -07:00
Dan Mills
394f9d047f small fix in _fixParents; change reconcile to 1) not require a deepEquals to drop an incoming/outgoing command pair, merely a GUID match (we can do this because we know we'll drop server changes and use client ones, and because we know we'll actually do a fresh diff at the end to send commands to the server), and 2) check for creates of existing guids after the first pass (since we might find command pairs that go away and thus not hit that error) 2008-08-08 14:40:52 -07:00
Dan Mills
37058a3f80 whitespace fix 2008-08-08 12:34:01 -07:00
Anant Narayanan
2e689699eb Automated merge with ssh://anarayanan@mozilla.com@hg.mozilla.org/labs/weave 2008-08-07 20:00:46 -07:00
Anant Narayanan
c200956d6a Syncing for Awesome bar (bug 437133, r=thunder) 2008-08-07 20:00:35 -07:00
Dan Mosedale
f692f246c1 Fix a typo that could cause an error in appendDelta() 2008-08-06 14:51:41 -07:00
Anant Narayanan
f21fbf8051 Client-side OAuth support (bug 444528, r=thunder) 2008-08-04 17:34:21 -07:00
Anant Narayanan
94b9dfcd2e Automated merge with ssh://anarayanan@mozilla.com@hg.mozilla.org/labs/weave 2008-08-04 17:23:36 -07:00
Anant Narayanan
8d3528d073 Asynchronous bookmark sharing (bug 449113, r=thunder) 2008-08-04 17:23:23 -07:00
Dan Mills
f9a54a3f51 refresh clients on a timer when changed via the prefpane, otherwise just wait until next sync 2008-07-31 01:59:03 -07:00
Dan Mills
a0b0f5f888 sync client data when client prefs change 2008-07-31 01:02:41 -07:00
Chris Beard
1070b0cce4 UI for clients 2008-07-31 00:39:57 -07:00
Dan Mills
c5a94ec81c filter out invalid tags when applying edit commands 2008-07-31 00:21:22 -07:00
Dan Mills
010357f05a add a hack that supresses a strange error (this._remote.status.data is null, even though it was downloaded correctly) 2008-07-31 00:20:55 -07:00
Dan Mills
3fc5d0e8a1 fix typo in utils deepCopy 2008-07-30 23:37:21 -07:00
Dan Mills
691d0bae83 do log some stack traces 2008-07-30 22:53:27 -07:00
Dan Mills
7181afe98b have RemoteStore inherit from Store 2008-07-30 22:53:11 -07:00
Dan Mills
6b50b61a62 fix snapshot typos in SyncEngine 2008-07-30 22:52:49 -07:00
Dan Mills
0102f2cd60 more tab sync fixes, only disposing is left to fix; also allow the notify wrapper to pass along an optional data payload 2008-07-30 21:58:13 -07:00
Dan Mills
16810a84f4 get tab sync halfway working again, with fileengine 2008-07-30 00:05:09 -07:00
Dan Mills
eef307467c use client GUID (from ClientData) for FileEngine 2008-07-29 18:38:58 -07:00
Dan Mills
2dccefbe5d some more ClientData fixes; *do* wipe the server when there is no version file; upload the version file when needed; refresh ClientData on login 2008-07-29 18:34:10 -07:00
Dan Mills
26596e7d96 ClientData fixes; export to chrome as well 2008-07-29 18:15:13 -07:00
Dan Mills
a81ac5e9da Remote.put doesn't require the data arg anymore 2008-07-29 17:35:10 -07:00
Dan Mills
bbcd17ac62 mostly finish up ClientData impl 2008-07-29 17:34:21 -07:00
Dan Mills
25255efdbb allow Resource.put to have no data arg (in which case it will use its internal _data property) 2008-07-29 17:33:53 -07:00
Dan Mills
bd870bb118 initial client data module from chris+me 2008-07-29 15:44:36 -07:00
Dan Mills
59721cd147 Keychain's constructor doesn't need an identity anymore 2008-07-29 15:39:09 -07:00
Dan Mills
0ecc2cdce5 sync the *latest* 10 back-button entries per tab (not the earliest ones) 2008-07-29 15:37:59 -07:00
Dan Mills
7b63f59feb get crypto working with FileEngine 2008-07-29 12:04:41 -07:00
Dan Mills
acc0a427fd initial try to get crypto working with FileEngine 2008-07-29 11:03:06 -07:00
Dan Mills
58affe8131 Implement FileEngine 2008-07-25 17:02:43 -07:00
Dan Mills
a4fb63a8a0 print exceptions that come from engines 2008-07-25 16:54:37 -07:00
Dan Mills
c678010dcf split Engine into SyncEngine and FileEngine 2008-07-25 01:06:23 -07:00
Dan Mills
05a50f8f8b Default to not doing anything for resetGUIDs. Define an observer for subclasses to use 2008-07-24 19:29:11 -07:00
Dan Mills
ea65089051 when making deep copies of an object, default to alphabetically sorting the properties for adding 2008-07-23 15:46:48 -07:00
Dan Mills
8a7e0e07a2 only wrap the first 10 entries in a tab 2008-07-23 15:46:13 -07:00
Dan Mills
aaabd53604 merge upstream changes 2008-07-21 18:24:35 -07:00
Dan Mills
9ca663413e Fix network timeouts, make them take into account progress; re-upload new snapshot after 25 deltas 2008-07-21 18:23:51 -07:00
Dan Mosedale
533147ac4b Minor refactoring to allow for multiple application embeddings of Weave.
Also adds a Thunderbird embedding of weave and a fix to set the
username/password during verifyPassphrase (bug 446444), r=thunder@mozilla.com.
2008-07-21 18:12:27 -07:00
Dan Mills
b6cd1a1acd version bump to 0.2.5 2008-07-17 21:27:50 -07:00
Dan Mills
236663a98b fixes to request timeout code 2008-07-17 21:27:01 -07:00
Dan Mills
448faf27c3 time out requests after 30 seconds 2008-07-17 20:40:29 -07:00
Dan Mills
2e67371ec9 check at startup if the crypto module appears to be working and alert the user if not 2008-07-17 20:39:55 -07:00
Dan Mills
112006ce5f rollback last commit (1843a139184a), it causes cookie unit test to fail 2008-07-16 21:11:18 -07:00
Dan Mills
76d45e6917 Bug 443489: Use nsICookie2 interface instead of nsICookie. Patch by fabrice@bellet.info 2008-07-16 20:51:25 -07:00
Dan Mills
f1bea5c26d allow deep copies of objects to optionally copy object properties in alphabetical order. This is useful to guarantee the order in which they would be serialized as json (which may depend on the order in which properties are added) 2008-07-16 19:36:06 -07:00
Dan Mills
610f300600 during version check don't attempt to wipe the server when the version file isn't found (that was a workaround for old clients, before the version file existed) 2008-07-16 19:34:35 -07:00
Dan Mills
01d4a7e2f7 fix a strict warning when onComplete is null 2008-07-16 19:33:07 -07:00
Dan Mills
839d464575 version bump to 0.2.4 2008-07-12 21:08:36 -07:00
Dan Mills
cf199a8cbf fix sanity checks in getKeypair, cause key 404s to be interpreted as a success condition in verifyPassphrase, re-fetch keys after generating them in initialize 2008-07-12 20:58:19 -07:00
Dan Mills
b3f94ea68a fix verifyPassphrase() 2008-07-12 20:31:27 -07:00
Dan Mills
41dc6fa440 version bump to 0.2.3 2008-07-11 19:01:36 -07:00
Dan Mills
cd8154bbd9 rethrow exceptions the fault tolerance module says are bad. catch lock exceptions in the notify wrapper and don't rethrow them (hack) 2008-07-11 19:01:06 -07:00
Dan Mills
d734b12ae4 add last exception to fault tolerance module 2008-07-11 18:55:42 -07:00
Dan Mills
ffdc89548f login code refactoring 2008-07-11 17:40:52 -07:00
Dan Mills
f6d457946c beef up fault tolerance module and hook it up to the service 2008-07-11 14:47:15 -07:00
Dan Mills
94709c6381 move formatAsyncFrame to utils, don't print 'regular' stack trace when we have an async exception (it's not useful) 2008-07-11 13:40:06 -07:00
Atul Varma
0c474a106e Automated merge with http://hg.mozilla.org/labs/weave 2008-07-11 12:59:36 -07:00
Chris Beard
bfde197997 - added checks to see if registration is closed, and if so, shows a message to the user on the account creation pane.
- added description to 423 locking warnings, as they are not necessarily a bad thing.  temporary as we really need more reobust management of locking when multiple clients are potentially syncing at once.
- minor clean up of passphrase verification in the wizard. passphrase verification is still a bit buggy though...
2008-07-11 09:38:44 -07:00
Chris Beard
0d444333bb * sync on quit is now also skipped when there is a forced restart of the browser (e.g. updates, extension installs, etc.)
* formatting tweaks and cleanup for modal sync UI
2008-07-10 17:03:56 -07:00
Dan Mills
5a0524b185 merge upstream changes 2008-07-09 17:37:09 -07:00
Dan Mills
15995cac06 cosmetic cleanup to yield calls in the reconciler 2008-07-09 17:36:40 -07:00
Chris Beard
e9ac166a41 * major revision to the login dialog to be more robust, adding error handling, styling and a help link
* some minor hacking of the login progress to improve performance
* expanded the application exit sync dialog to be a general modal sync dialog that will display whenever appropriate (e.g. during initial setup, on manual "sync now" requests, and on application exit)
* added a progress meter and status messages to the modal sync dialog to provide users with a better understanding of what's going on, and to assist in debugging
* added ability to cancel a modal sync request, including on application exit. when cancel is clicked on by the user, it will attempt to cancel the sync at the next opportunity (i.e. before the next sync engine is processed)
2008-07-09 17:17:24 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
98215f2fc8 Made bookmarkSharingManager._updateOutgoingShare tolerant of outgoing shares that are lacking a server path annotation: it will warn that they're invalid and return, rather than dying. 2008-07-09 16:57:55 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
436fb329bb Made wrapping of outgoing shares not crash if an outgoing share is missing an exptected annotation. 2008-07-09 13:45:10 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
3cc4b5541f Restored a line in bookmarkSharingManager.js which I took out by accident when removing debugging dumps and stuff, changeset 969. It should not have been taken out; without it you get 'mounts undefined' error. 2008-07-09 13:24:49 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
3e2ccbce0c Removed a special menu item that I had installed in the main Weave menu just for debugging purposes. 2008-07-08 22:40:52 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1ebd8b0a44 Merged 2008-07-08 22:39:12 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
a0611ee8e1 I think I have fixed updateIncomingShare now. So everything should work, if I share with a user not myself. 2008-07-08 22:39:05 -07:00
Dan Mills
c2bdb5473d bump version to 0.2.2 2008-07-08 21:25:15 -07:00
Dan Mills
e7a43d3f19 sync every 5 minutes (up from 1); start the score threshold at 75 (down from 100); decrement threshold by 25 each iteration (up from 5). these changes guarantee even small changes will sync in no more than 15 minutes (down from 20) 2008-07-08 21:24:59 -07:00
Dan Mills
011f9243a4 version bump to 0.2.1 2008-07-08 19:40:55 -07:00
Dan Mills
163332a45b remove 'waitOnQuit.enabled' pref, always wait for a running sync before quitting 2008-07-08 19:35:20 -07:00
Atul Varma
899b6df522 Automated merge with http://hg.mozilla.org/labs/weave 2008-07-08 16:51:08 -07:00
Atul Varma
33c970ec5e If an exception is raised by a notification button callback, it is now logged. Also added a unit test for this new behavior. 2008-07-08 16:50:59 -07:00
Dan Mills
33bac67100 merge upstream changes 2008-07-08 16:34:52 -07:00
Dan Mills
1a6a8397c4 Bug 444119: catch errors during a lock and avoid a deadlock 2008-07-08 16:34:27 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
7f36e552e6 Removed a bunch of dump statements that were in bookmarkSharingManager for old debugging stuff that is now done; they were just cluttering up the log. 2008-07-08 15:05:24 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
cfe420f221 updateOutgoingShare now explicitly encodes data to json before encrypting and uploading. 2008-07-08 14:52:31 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5d937affe2 Fixed a typo in sendXmppNotification call 2008-07-08 14:51:14 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
386784122b Removed debugging dump statements from dav.js. 2008-07-08 14:37:51 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2895b903a2 Fixed another trivial bug in BookmarkSharingManager._stopSharing that was making it fail at sending out the xmpp notification. 2008-07-08 14:19:26 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
55ec19cf3c Fixed some trivial bugs in BookmarkStore._wrapMountOutgoing that were preventing the outgoing share from working properly. 2008-07-08 14:15:55 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2b8d2d7cb3 Factored the sending of xmpp notifications in bookmarkSharingManager out into a separate function, to save some duplicated code and make it easier to break xmpp stuff into a separate class later. Also made the bookmarkSharingManager cache the current weave username, which it uses a lot. Finally it now prepends /user/this._myUsername/ to server URLs to make them into absolute paths before sending them to the sharing partner over xmpp, which fixes a leftover TODO from a copule days ago. 2008-07-08 14:11:21 -07:00
Dan Mills
b0bede9548 sigh, my previous unlock change actually breaks unlock. fix fix fix. 2008-07-08 13:56:03 -07:00
Dan Mills
13c049d2de merge upstream changes 2008-07-08 11:59:28 -07:00
Dan Mills
31a5149a4c check that we have a local lock token before trying to delete it (or 'delete' will fail) 2008-07-08 11:58:59 -07:00
Pazu
318f20223c Sync on quit improvements.
A new preference called "waitOnQuit.enabled" was created. This preference controls whether Weave will perform any actions on quit. If false, Weave won't perform any actions on quit, nor wait for any running actions. If true, Weave will wait for any running sync to finish.

The old "syncOnQuit.enabled" preference now controls if Weave will actually perform a full sync on quit or not. If false, no sync is started, but we still wait for an active sync to finish, if waitOnQuit.enable is true.

Both options default to true.
2008-07-08 15:31:47 -03:00
Dan Mills
22d3e6a2d2 Move KeyPair object (which caches keys) to a property of the service. Clear it on logout 2008-07-08 18:37:14 -07:00
Pazu
e4dc334725 Clear KeyPair cache on server wipe, and make new key generation work again. 2008-07-08 17:06:21 -03:00
Pazu
795762882d Performance improvements: keypair is now fetched only once, and cached in memory. 2008-07-08 15:33:17 -03:00
Dan Mills
5082e5e422 keep track of errors during sync and throw after trying all engines 2008-07-08 17:44:00 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
acf0d0ded8 Merged 2008-07-08 01:18:40 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1cf9a1dea9 Fixed a bunch of bugs in bookmark share: stuf related to server-side paths being incorrect (because the defaultPrefix in DAV was getting reset to an empty string or was getting applied wrong). Discovered that updateOutgoingShare and updateIncomingShare were both calling the same _wrapMount() function, which was incorrect, so I broke that up and fixed what parts are meant to be outgoing and which incoming. 2008-07-08 01:18:30 -07:00
Dan Mills
54a2a8a785 Bug 443385: unconditionally remove saved local token, regardless of whether the UNLOCK command succeeded; also cleans up some variable naming re: local locks in dav.js; cosmetic changes in wrap.js 2008-07-07 22:30:32 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
9cfef4be35 Fixed a whole bunch of bugs in bookmark share, mostly related to adding in needed JsonFilters for remote Resources and fixing the server paths which are passed into DAV for the keyring file and encrypted share data files. (Also fixed a minor bug in DAV itself so that mkcol won't quit right away if you pass it something that starts with a slash.) 2008-07-03 17:57:21 -07:00