Edward Lee
2f189ad5a8
Add a Utils.lock as a sync. version of Wrap.localLock.
2009-06-06 11:52:49 -07:00
Edward Lee
042c177ad0
Identity_getPassword: async + async/yield -> sync. Make onGetPassword take one cb to pass back the password.
2009-06-05 22:33:08 -07:00
Edward Lee
5ccf27941d
WeaveSvc__syncEngine: async/yield -> sync.
2009-06-05 22:21:34 -07:00
Edward Lee
4dd6ad0d2d
WeaveSvc__freshStart: async/yield -> sync.
2009-06-05 22:21:29 -07:00
Edward Lee
62089a8ca1
WeaveSvc_wipeServer: async + async/yield -> sync. Fix up chrome uses of wipeServer, resetClient, wipeRemote, wipeClient.
2009-06-05 22:21:27 -07:00
Edward Lee
16a159e5d9
WeaveSvc_processCommands: async + async/yield -> sync.
2009-06-05 22:21:25 -07:00
Edward Lee
a6ac402f34
WeaveSvc_wipeRemote: async + async/yield -> sync.
2009-06-05 22:21:24 -07:00
Edward Lee
5a9e604186
WeaveSvc_resetClient: async + async/yield -> sync.
2009-06-05 22:21:22 -07:00
Edward Lee
dfcbc774c5
WeaveSvc_wipeClient: async + async/yield -> sync.
2009-06-05 22:21:20 -07:00
Edward Lee
6ba0fbf69d
WeaveSvc_resetService: async + async/yield -> sync.
2009-06-05 22:21:18 -07:00
Edward Lee
40543e0998
WeaveSvc_verifyLogin: async + async/yield -> sync.
2009-06-05 22:21:16 -07:00
Edward Lee
5a0f364bb6
Add a Utils.catch as a sync. version of Wrap.catchAll.
2009-06-05 22:21:14 -07:00
Edward Lee
f9aeec8b2c
Engine_wipeClient: async -> sync. Engine__wipeClient: async/yield -> sync.
2009-06-05 15:34:35 -07:00
Edward Lee
3d3f786723
Engine_resetClient: async -> sync. SyncEngine__resetClient: async/yield -> sync.
2009-06-05 15:34:34 -07:00
Edward Lee
81f7652b56
Engine_sync: async -> sync. SyncEngine__sync: async/yield -> sync.
2009-06-05 15:34:32 -07:00
Edward Lee
f5ee514ea5
WeaveSvc_findCluster: async + async/yield -> sync.
2009-06-04 23:24:15 -07:00
Edward Lee
faf50c585f
merge weave
2009-06-04 23:08:56 -07:00
Edward Lee
14e0eda123
Remove trailing newline bug 480480 work-around: trim().
2009-06-04 23:04:56 -07:00
Edward Lee
0c563da3c8
PubKeyManager_uploadKeypair: async + async/yield -> sync.
2009-06-04 17:09:32 -07:00
Edward Lee
df16a63edb
PubKeyManager_getDefaultKey: async + async/yield -> sync.
2009-06-04 17:04:51 -07:00
Edward Lee
ce37486d9c
RecordMgr_get: async + async/yield -> sync.
2009-06-04 16:50:57 -07:00
Edward Lee
aa8b725087
RecordMgr_import: async + async/yield -> sync.
2009-06-04 16:25:12 -07:00
Edward Lee
1134960b32
Fix Resource.* call sites used for wiping the server and initial sync (+ key gen upload)
2009-06-04 10:17:27 -07:00
Edward Lee
428d54a14a
Change Resource.get() to be sync (no callback) and fix up call sites used for login + sync now.
2009-06-04 10:16:07 -07:00
Anant Narayanan
252a823626
Preference sync (bug #428370 )
2009-05-24 02:11:05 +02:00
Dan Mills
6aa937b947
Bug 493442: use app IDs instead of names to determine what engines to load
2009-05-18 11:11:07 -07:00
Edward Lee
0a32933db7
Bug 493004 - Create stubs of unimplemented engines to list them as disabled (extension, microformat, plugin, theme)
...
Add the 4 engines with just the base code to set their name and register them for Firefox.
2009-05-14 11:50:59 -05:00
Edward Lee
93847aa32d
Bug 493002 - List partially implemented engines (cookies, input history) as disabled
...
Import the outdated engines, but delete their pref so they show up as disabled. Clean up the old engines a little bit so they don't allocate unnecessarily and to not use syncCore.
2009-05-14 11:43:56 -05:00
Anant Narayanan
c07e95bbc7
Remove OAuth (we don't use it anymore)
2009-04-28 20:46:02 +02:00
Igor Velkov
8d61cb76a8
Bug 484982 - Weave should support SeaMonkey. r=thunder, r=Mardak
...
Add seamonkey bits for manifest/install. Start with Form, History, Password engines.. No places bookmarks and tabs seem to have issues applying(?)
2009-04-14 11:05:30 -05:00
Edward Lee
b7a138755c
Bug 488142 - Make it easier to add simple deferred cleartext/payload values
...
Add a couple Utils helper to create a pair of simple [gs]etters that use a hash property instead. Apply this to various records: WBORecord, {Priv,Pub}Key, Crypto{Meta,Wrapper}, and every engine's type records. Migrate by making sure key data exists (name change).
2009-04-13 16:39:29 -05:00
Edward Lee
fba6986892
Bug 487523 - Scheduled sync fires while a sync is running
...
Just skip the scheduled sync if we're already syncing
2009-04-08 19:23:14 -05:00
Edward Lee
a7b212ab0b
Bug 486810 - Engines (and their trackers) are created with every new window. r=thunder
...
Register the built-in engines on service start-up instead of from the overlay, and have Engines.register check if the engine has already been registered.
2009-04-08 14:39:14 -05:00
Edward Lee
75bacf714f
Bug 487308 - Allow registering of an array of engines
...
Import engines to the Weave global object and use them to register engines, which checks if the arg is an array. To support handling of errors (unused), the engine is returned on register failure.
2009-04-07 16:45:41 -05:00
Edward Lee
6431d3cb64
Backed out changeset 430ce13b63f3 (bug 482878)
...
Bug 482670 restored un-wrapped payloads, so until a version bump, those using trunk will need to do a manual server wipe.
2009-04-03 13:49:22 -05:00
Edward Lee
4f6ebe6be5
Bug 481741 - Switch to JSON from nsIJSON
2009-03-31 14:09:38 -05:00
Dan Mills
112832c1bc
shorten status messages
2009-03-27 20:57:38 -07:00
Dan Mills
b5a77fe555
fix missing yield in createAccount
2009-03-27 00:56:38 -07:00
Dan Mills
549745a59e
style police; split findCluster into two, findCluster (no side-effects) and setCluster (saves it); fix verifyLogin to work with any login, not just the saved one; add a createAccount call which creates an account on the server
2009-03-27 00:46:10 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
73387c906a
Bug 481319: Weave.Service can now be queried for top-level status (OK, failed, partial success), and also for an object that gives detailed status (what caused sync to abort, server status codes, status of each engine, etc.)
2009-03-24 19:23:53 -07:00
Edward Lee
75994bc68f
Bug 482898 - Allow an optional array of engines for wipeRemote, wipeServer, resetClient, etc.. r=thunder
2009-03-20 00:13:16 -07:00
Edward Lee
bbb0fa332f
More services cleanup; Expose a Utils.openWindow/openDialog
2009-03-19 14:00:57 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
cf045921fe
Never wipe the server if key generation is disabled; in case of version mismatch, describe the error and abort. This fixes 482062.
2009-03-18 13:22:40 -07:00
Edward Lee
46d43f7ad3
Bug 483037 - Need to wrap sync callback for timer callback - scheduled syncs don't work
2009-03-12 15:41:46 -05:00
Edward Lee
6fa9711450
Start sync timer after manually logging in
2009-03-12 15:01:04 -05:00
Edward Lee
ce257df07f
Fix whitespace in service.js
2009-03-12 10:34:12 -05:00
Edward Lee
bf5663b3cd
Bug 482793 - Process commands sent by remote clients. r=thunder
2009-03-12 01:33:14 -05:00
Edward Lee
2b8d95f026
Bug 482792 - Provide a wipeClient, wipeRemote, resetService for weave service. r=thunder
2009-03-12 01:33:14 -05:00
Edward Lee
dfc2d1f68a
Bug 481266 - Provide a way to perform actions on remote clients. r=thunder
2009-03-03 17:29:35 -06:00
Edward Lee
d62dd55e52
Bug 482878 - service (_remoteSetup) needs to migrate payload formats. r=thunder
2009-03-11 23:37:47 -05:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
6c4a4743b0
Fixed tabs in services.js.
2009-03-11 18:29:18 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2ecc2b01e1
Fennec now updates status line to show what engine is syncing and what it's doing. This fixes bug 481323.
2009-03-11 18:27:44 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
3615b62fdd
Was failing on Fennec because private browsing doesn't exist there -- now more gracefully handles missing components.
2009-03-10 17:12:59 -07:00
Edward Lee
5e62ecc193
Pushed too early :( really match up signatures
2009-03-10 14:13:18 -05:00
Edward Lee
65ef5fc7c7
Make method signatures for sync and _sync match up. (followup for bug 482003)
2009-03-10 14:12:05 -05:00
Edward Lee
6bb65722d3
Bug 481345 - Weave should be disabled while offline or private browsing mode is active. r=thunder
2009-03-10 06:30:36 -05:00
Edward Lee
a45ed6623b
Bug 482178 - Clean up services -> lazy services. r=thunder
2009-03-10 06:30:30 -05:00
Edward Lee
57435a08e9
Bug 482007 - Refactor "should sync" and schedule sync logic. r=thunder
2009-03-10 06:15:52 -05:00
Edward Lee
2f5bacad1e
Bug 482003 - Refactor _sync and _syncAsNeeded. r=thunder
2009-03-10 06:07:24 -05:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
02d92a86ca
Fennec now launches first run page, and updates extensions.weave.lastversion, so that it's no longer resetting syncId and therefore resetting the server every single time it tries to sync. Also set the download in resource.js to use LOAD_BYPASS_CACHE. Together these changes seem to fix bug 480270.
2009-03-07 00:55:47 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1bff582b35
Added a mostRecentError field to Weave.Service, which gets set to a string on any error that the user might need to know about; this is queried by the Fennec UI code to disply better error messages.
2009-03-04 15:49:58 -08:00
Edward Lee
a1d5234eea
Bug 480490 - Expose a wipeServer API for weave service. r=thunder
2009-02-26 22:14:32 -08:00
Edward Lee
edda1db597
Bug 480457 - Expose a resetClient API for weave service and engines. r=thunder
2009-02-26 22:36:14 -08:00
Dan Mills
2b3da2beec
don't fail when client metadata record doesn't exist, or has an empty payload. Reset last sync after a werver wipe on all clients
2009-03-03 11:57:30 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5cb6c7a434
Added more logging to service.js to help me figure out the caching problem.
2009-03-02 23:55:05 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
bb6846ecc2
Added favicons to Firefox tabs-from-other-computers menu.
2009-03-02 14:15:46 -08:00
Anant Narayanan
ecd8d4576c
Print meta information only if present
2009-03-02 19:25:50 +01:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
ff833098f5
Resource.js now always validates the cache (VALIDATE_ALWAYS) when downloading stuff. This seems to fix bug 480270 on Firefox but not on Fennec.
2009-02-27 18:28:26 -08:00
Edward Lee
9911ce923a
Bug 480480 - Finding cluster with api/register/chknode has trailing newline
2009-02-26 20:52:56 -08:00
Edward Lee
fe2b72924b
Bug 480381 - "lastsync" pref is sometimes a number and sometimes a string
2009-02-26 12:34:54 -08:00
Edward Lee
b8a8dd5c93
Bug 480271 - On first sign in, username is initialized with "undefined". r=thunder
2009-02-26 00:47:30 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
09db19632c
Fixed a typo in service.js ('paylaod' for 'payload')
2009-02-25 15:06:28 -08:00
Dan Mills
53f8ce9bb3
better logging about why the server is wiped when it does
2009-02-23 16:56:23 -08:00
Dan Mills
1ea15a3193
fix bad logic when checking metadata record
2009-02-23 16:27:41 -08:00
Dan Mills
aad93f5efc
use Gecko's version comparison API, don't clobber the server if the remote version > local client version
2009-02-23 12:36:55 -08:00
Dan Mills
db3eba2c39
fix 'last sync' date in weave menu
2009-02-22 00:21:15 -08:00
Dan Mills
8c671b69c9
Wrap.notify now takes the topic prefix as an argument, instead of requiring this._osPrefix to be set; use Observers.js in several places (sync.js, status.js, etc); some event topics have changed, beware; fix up status window, now prints some useful status as sync progresses
2009-02-22 00:04:58 -08:00
Dan Mills
f719914f62
Bug 479232: don't wipe tabs engine when it hasn't loaded
2009-02-19 16:41:53 -08:00
Dan Mills
99f6e5c581
make a more concerted attempt at doing a fresh start on various server conditions, such as missing keys, etc. clear local caches (makes it so Fx doesn't need to be restarted after a server wipe). set the lastsync pref here instead of having the window do it
2009-02-19 04:09:55 -08:00
Dan Mills
d5fc9b632c
reset engine lastSync prefs when wiping the server
2009-02-17 13:21:14 -08:00
Dan Mills
9f78bbf372
add version checking at startup using a global metadata record; wipe server on incompatible versions
2009-02-11 23:54:20 -08:00
Dan Mills
7265e3b754
use catchAll wrapper, remove wipeClient from the service
2009-02-11 22:08:56 -08:00
Dan Mills
8a6053f8d5
...chknode is returning a hostname again
2009-02-11 19:21:06 -08:00
Dan Mills
db63c19c3e
ldap chknode returns full url now
2009-02-11 19:16:15 -08:00
Dan Mills
57c5368d7a
remove sm-weave-proxy01 hack
2009-02-11 13:47:51 -08:00
Dan Mills
26f33178e3
ignore sync if weave is disabled
2009-02-11 13:38:50 -08:00
Dan Mills
12b9ddbbd1
add missing setter for the weave enabled pref
2009-02-11 11:24:16 -08:00
Dan Mills
d8982c5477
oops fix syntax error
2009-02-10 17:57:29 -08:00
Dan Mills
a53adc5e28
catch exceptions when trying to find out user's cluster
2009-02-10 17:50:40 -08:00
Dan Mills
a6a5e2c58e
automatically try to detect if the server supports the multi-cluster call (hack hack hack)
2009-02-10 15:56:37 -08:00
Dan Mills
a2ec312908
allow multi-cluster support to be turned off
2009-02-10 13:29:04 -08:00
Dan Mills
8dca51ec38
remove unused code; add multi-cluster support; use Svc.Prefs branch for prefs; move some code from the window overlay into onStartup (print weave version and user agent string); automatically disable weave if crypto module is not working
2009-02-10 00:56:42 -08:00
Dan Mills
d1d31b3bc4
disable scheduled sync when login fails
2009-02-03 15:50:41 -08:00
Dan Mills
a3802a68ed
server returns a json object for user root now, modify checkLogin() accordingly
2009-02-02 11:44:07 -08:00
Dan Mills
a3d9640e3c
Make records not extend Resource, instead they have a serialize() method that can be used to create a Resource for uploading if necessary.
...
Use global service instances under Svc.*
Consolidate various record managers (caches/convenience factories) to extend the same base object
Log exceptions caught by notify wrapper
2009-01-27 13:35:10 -08:00
Dan Mills
03ff21c860
Bug 471076: make notify wrapper catch exceptions; don't use catchAll wrapper in service, and check return value of login/verifyLogin
2009-01-24 16:49:23 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
c681501e5c
Added callback to Weave.Service.onStartup, which the Fennec UI uses to notify user that Weave has connected, that it ran into an error, or that it's awaiting configuration. Started moving fennec preferences from HTML to XUL.
2009-01-14 11:23:08 -08:00
Dan Mills
3c8aa12c49
syncCores are gone
2009-01-13 16:11:31 -08:00
Dan Mills
d72b5b3b4d
make sure we return false if veryfyLogin fails
2009-01-08 16:55:30 -08:00
Dan Mills
ff240dd3ce
add clients sync (list of clients with names and types); make it simpler to create Engine subclasses; remove the 2nd 'authenticator' parameter for Resources; resetServer is now wipeServer; consider 0 an invalid place ID (fixes bug when calculating item depths); add a Svc global exported from utils.js where commonly used services can live
2009-01-06 13:54:18 -08:00
Dan Mills
b707751a28
partially re-enable client data (guid,name,type)
2009-01-03 01:40:22 -08:00
Dan Mills
ff39e896cf
really actually fix login errors this time
2008-12-27 12:15:45 -08:00
Dan Mills
9ac0dce95a
Bug 471076: explicitly check login succeeded
2008-12-26 16:08:55 -08:00
Dan Mills
aff056726e
change serverURL to use 0.3 url schema
2008-12-23 13:51:30 -08:00
jonathandicarlo@user-64-9-236-168.googlewifi.com
8f14709c66
Removed extra debug code from service.js
2008-12-21 14:59:33 -08:00
jonathandicarlo@user-64-9-236-168.googlewifi.com
dc02f68f49
Weave on Fennec will no longer attempt to generate SSH keys -- for this release, you need to have a Weave account already and then connect Fennec to it.
2008-12-21 14:41:17 -08:00
jonathandicarlo@localhost
4e59b0d4d7
Wrote some scaffolding for the Fennec-weave UI -- doesn't do anything yet.
2008-12-21 14:08:33 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
54d7de2ca4
Major rehaul/simplification of the Fennec UI for connecting to your Weave account
2008-12-19 15:48:40 -08:00
Dan Mills
3ef1c0d9b1
enable history sync (not working yet)
2008-12-09 12:26:14 -08:00
Dan Mills
c1a443df70
use callbacks instead of snapshot diffs to figure out what changes to send to the server
2008-12-05 00:39:54 -08:00
Dan Mills
c327476fcc
remove unused 'cleartext' payload property; add fixme comment to set a pref listener
2008-12-01 18:58:28 -08:00
Dan Mills
5e2d2cec11
reset default key URLs whenever username is set via the service
2008-12-01 18:43:43 -08:00
Dan Mills
73077fa65b
fix 'logging in' debug string so it prints the actual username being used
2008-12-01 14:17:44 -08:00
Dan Mills
74e4f48a70
sync engines unconditionally on timer (for now, heuristic sync is broken somehow)
2008-11-27 00:23:25 +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
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
43d4c7b865
say sync complete when it is!
2008-11-06 19:19:32 -08:00
Dan Mills
f617e369b1
lots o' fixes
2008-11-06 17:37:17 -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
Anant Narayanan
c200956d6a
Syncing for Awesome bar (bug 437133, r=thunder)
2008-08-07 20:00:35 -07:00
Anant Narayanan
f21fbf8051
Client-side OAuth support (bug 444528, r=thunder)
2008-08-04 17:34:21 -07:00
Dan Mills
a0b0f5f888
sync client data when client prefs change
2008-07-31 01:02:41 -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
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
a4fb63a8a0
print exceptions that come from engines
2008-07-25 16:54:37 -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
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
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
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
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
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
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
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
163332a45b
remove 'waitOnQuit.enabled' pref, always wait for a running sync before quitting
2008-07-08 19:35:20 -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
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
10d9360015
Merged
2008-07-01 10:18:43 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
aa859a7626
Made _stopSharing and _stopOutgoingShare more fault-tolerant (they will no longer die if the expected annotation is missing.
2008-07-01 09:58:00 -07:00
Dan Mills
44c908db91
save username/pass in verifyLogin, at least for now
2008-06-30 23:41:47 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5d960d2e8f
Combined shareData and stopSharingData into one function to reuse code; made it so that if it gets called when Weave.DAV is already locked, instead of failing it sets up an observer that will trigger the share to happen as soon as the sync-succeeded or sync-failed message is received.
2008-06-30 22:30:04 -07:00
Atul Varma
07f3aacf01
Added documentation for Service._getKeypair().
2008-06-30 18:09:30 -07:00
Atul Varma
aa2cab9380
The auto-login at startup no longer unconditionally syncs; if the login fails, the sync is now aborted.
2008-06-30 17:55:48 -07:00
Atul Varma
7512505bb7
Added a Service.verifyPassphrase() method. Also, Service.login() now checks to ensure that the user's passphrase is valid, and if it's not, it throws an exception.
2008-06-30 16:50:19 -07:00
Atul Varma
4c44bcd581
Fixed a potential bug in Service.login() whereby a user's directory wouldn't be created if it didn't exist (though it would in Service.verifyLogin(), which is only called from the setup wizard).
2008-06-30 15:54:15 -07:00
Dan Mills
32d1262667
style fixes, js warning fixes
2008-06-30 14:00:06 -07:00
Dan Mills
e03543007a
make resetguids async
2008-06-29 07:00:53 -07:00
Dan Mills
6f246308bc
don't even try to sync when the local lock is taken
2008-06-26 16:37:38 -07:00
Dan Mills
703829a510
fix comment in verifyLogin
2008-06-26 14:30:38 -07:00
Dan Mills
5c7f8c6a40
check login status code in service's verifyLogin; attempt to create user directory when it's a 404
2008-06-26 12:27:54 -07:00
Myk Melez
cab1d95570
bug 436636: a system for showing various kinds of notifications in one consolidated location
2008-06-25 13:51:39 -07:00
Atul Varma
92f85d952e
Another automated merge. I'm kind of confused at this point, so I hope I'm not breaking anything by mis-merging.
2008-06-25 04:45:22 -07:00
Atul Varma
37225f431c
Changed AsyncException so that it dynamically subclasses the exception it's wrapping, and adds an 'asyncStack' property to allow access to the asynchronous call stack. This, along with my previous few commits, makes the processing of stack traces in our code much more streamlined, and also allows our debugging output to be more informative, as stack information is now logged from the point at which an exception was thrown, rather than the point at which it was caught.
...
Also renamed some things in async.js to be more descriptive and easier-to-understand, albeit a bit more verbose.
2008-06-25 04:43:07 -07:00
Justin Dolske
b015539e7a
Split account verification out from login(), make wizard work for using an existing account, related code cleanup/simplification
2008-06-25 00:22:53 -07:00
Atul Varma
7b4737aed7
Fixed something that I should've changed in my last commit; also removed a call to Utils.stackTrace() that shouldn't have been made.
2008-06-24 19:58:50 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2158cdf9c4
Merged
2008-06-24 13:41:25 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
c4fa84f683
Merged
2008-06-24 13:41:12 -07:00
chris@h-194.office.mozilla.org
32d06ac143
added embedded verification method to login (this wants to be it's own object method, but should work well enough for now.)
...
some formatted cleanup for wizard.js
2008-06-24 12:42:52 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
286e670fb2
Finished the bridge between UI code and bookmark engine so that stopSharing gets called when you pick the menu itme.
2008-06-24 12:22:32 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
ed99f7cb53
Make the stop-sharing-data command work
2008-06-23 18:23:08 -07:00
Justin Dolske
6ed3755104
Bug 433949 - Use WeaveCrypto component (NSS) instead of OpenSSL
2008-06-23 16:23:57 -07:00
Myk Melez
9668227aad
wrap notify around lock instead of the other way around so that notify includes locking failure/success in its notifications
2008-06-23 16:22:05 -07:00
Myk Melez
6cdf7d9c0d
bug 435341: sync automatically when Firefox quits
2008-06-23 16:10:31 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
68669b6a0f
Merged changes
2008-06-18 12:29:39 -07:00
Atul Varma
90d243db16
Refactored test_service and module code so that the weave service constructor is called, and auth is done more accurately.
2008-06-17 19:54:09 -07:00
Atul Varma
f9463209a2
Added a fixme/todo in the code.
2008-06-17 10:23:35 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
6ce93ffd1d
Merged
2008-06-16 11:24:41 -07:00
Dan Mills
f74b9f910f
catch 404s from initSession and do an initial upload; fix some bugs (missing yields, references to Engine properties) in RemoteStore.initialize
2008-06-16 00:21:44 +09:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
9805cdce23
Merged
2008-06-13 16:22:04 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
835100b96d
Fixed some minor bugs -- the name of the incoming shared folder is parsed correctly, and xmppClient now catches bounce errors that were previously parsed as messages.
2008-06-13 16:20:43 -07:00
Myk Melez
b12f3d03db
use nsIXMLHttpRequest::mozBackgroundRequest instead of DummyAuthProvider to suppress authentication dialogs and ensure XMLHttpRequests succeed even when the window that originated the request goes away
2008-06-13 13:08:36 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5c8481de3d
Merged
2008-06-12 17:35:57 -07:00
Myk Melez
b4967c8831
work around XmlHttpRequest bug 317600 by pausing for a 0ms timeout before trying to log in
2008-06-12 16:23:59 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
b462aad4a5
Merged changes.
2008-06-12 14:30:46 -07:00
Myk Melez
18d8e8fcd7
bug 410550: stop running scheduled sync when the user is not logged into weave
2008-06-12 12:36:58 -07:00
Myk Melez
f47209b9d2
only retrieve score once per engine when doing a scheduled sync, since retrieving the score can be a non-negligible cost for trackers that calculate the score on-demand (like the tab tracker)
2008-06-11 20:07:35 -07:00
Maria Emerson
7da4259fee
bug 438033: implement a better first-run wizard process; r=myk
2008-06-11 17:56:02 -07:00
Myk Melez
8182b10abf
resetting the score is not an asynchronous operation, so Service::_syncEngine shouldn't yield after calling it
2008-06-11 15:23:54 -07:00
Myk Melez
633afe0864
clarify wording in scheduled sync threshold debug statements
2008-06-11 14:16:03 -07:00
Myk Melez
2b2192aca5
once sync thresholds reach 1 (the lowest possible value), leave them there until something changes and we sync
2008-06-11 13:50:47 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5459e1733a
Resolved merging conflicts to service.js.
2008-06-11 11:54:44 -07:00
Myk Melez
932871d1bd
merge
2008-06-11 10:41:57 -07:00
Myk Melez
482d745360
bug 434816: use a decreasing threshold algorithm for the periodic scheduled sync to make sure we eventually sync even small changes to data; r=thunder
2008-06-11 10:38:25 -07:00
Dan Mills
5ca3a1eb7f
merge upstream changes
2008-06-11 23:31:28 +09:00
Dan Mills
de1d1acb26
Various changes:
...
Engine/RemoteStore:
* Move code to make the engine remote directory into RemoteStore.
* Fix initSession call in Engine to properly use callback / call yield.
* Do not check '_getServerData' return status in _sync, we will use exceptions from RemoteStore instead.
* Move code to push a new delta into RemoteStore (appendDelta()). Currently comments out code that forces a re-upload in cases where the server (engine) format version was different. We may add this back later into RemoteStore (?).
* Note that this patch also removes the 'this._encryptionChanged' conditional, which I believe is currently useless (we never set it).
Service:
* When wiping the server (due to a server version mismatch), skip .htaccess files, since they are usually not user-modifiable.
2008-06-11 11:12:04 +09:00
Anant Narayanan
9cb5d2c8cc
Make sync service check score before syncing: bug #434816 (r=thunder)
2008-06-10 13:45:37 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
b22dd7428c
Fixed a couple of minor bugs that were preventing bookmark share from starting (like, i was skipping enabled engines instead of disabled engines... duhh)
2008-06-09 18:44:13 -07:00
jonathandicarlo@localhost
98d1bf05f4
Made BookmarkEngine.sync() responsible for calling BookmarkEngine.syncMounts (to get the incoming shared bookmark folder contents), eliminating the FIXME that previously had this being called from special-case code in WeaveSvc.sync().
2008-06-06 19:22:23 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
473352178e
Resolved conflicts with Chris's changes (to use the username, unhashed, as the name of the server-side sharing directory)
2008-06-06 17:43:15 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
3db8dcb84c
Moved _createShare and _share() from engines.js to BookmarkEngine class in engines/bookmarks.js. The identity of the folder to be shared is now passed from the share dialog box (share.xul) into BookmarkEngine._share().
2008-06-06 17:33:44 -07:00
chris@h-194.office.mozilla.org
d7c750f0f9
- this check in will break everyone temporarily, as it involves the changes necessary to shift us from sha1(email) to usernames, and to enable sharing on the server.
...
- we are also changing the default preferences on the trunk to point to the new staging server at https://sm-labs01.mozilla.org:81 that has been modified to support usernames
- everyone will need to create a new account and this will be streamlined within the startup function, which will now kick off on first run (we'll check in the updated setup wizard shortly)
- this checkin also cleans up a number of strings
2008-06-06 14:18:50 -07:00
Dan Mills
b32b7d3549
merge upstream changes
2008-06-05 23:11:20 +09:00
Atul Varma
b74958a214
Moved all tab-syncing code to modules/engines/tabsjs.
2008-06-03 14:45:53 -07:00
Atul Varma
daf3be7564
Moved all form-syncing code into modules/engines/forms.js.
2008-06-03 14:20:51 -07:00
Atul Varma
1e0a1d1e06
Moved all password-syncing code into modules/engines/passwords.js.
2008-06-03 14:08:53 -07:00
Atul Varma
e2ce660c53
Moved all history-related functionality into modules/engines/history.js.
2008-06-03 13:56:16 -07:00
Atul Varma
f365f924cf
Re-removed cookie-related changes that were accidentally re-added by c1a58b24679c and/or 5a49daf87c94.
...
Also moved all bookmark syncing logic into modules/engines/bookmarks.js.
2008-06-03 12:38:48 -07:00
Myk Melez
690e2b800c
merge
2008-06-03 11:43:07 -07:00
Myk Melez
07ba8ea83e
bug 434817: sync tabs
2008-06-03 11:32:59 -07:00
Atul Varma
ada0204cac
Moved all code related to the syncing of cookies--e.g. CookieStore, CookieTracker, CookieEngine, CookieSyncCore--into their own file at modules/engines/cookies.js. I'll be doing the same to the other engines shortly.
...
This helps with code organization--all the logic for dealing with a particular data type is now in one place--and should also make it easier to write unit/regression tests.
2008-06-03 11:11:44 -07:00
Dan Mills
d526a56d57
log stack traces from sync exceptions
2008-06-02 13:02:04 +09:00
Dan Mills
0640f244d6
format exception correctly when an engine throws during sync
2008-05-30 17:40:08 -07:00
Atul Varma
243f1bce21
Refactored logging system so that clients don't need to call factory functions to create specific instances of formatters and appenders.
2008-05-29 18:15:50 -07:00
Dan Mills
fd0eac8eb3
continue sync of other engines even after one of them throws an exception; use constructor name instead of instanceof to check for array object in modules
2008-05-23 23:58:53 -07:00
Atul Varma
04c6dda2c2
Fixed bug 427113: https://bugzilla.mozilla.org/show_bug.cgi?id=427113
...
I should note that I think that there's a more idiomatic way of doing what I did, but I don't yet fully understand how Weave does things asynchronously. As such, this commit can probably be refactored to be more in the style of the surrounding code.
2008-05-23 12:22:08 -07:00
Atul Varma
0b8c18a3c7
Fixed bug 435103 ( https://bugzilla.mozilla.org/show_bug.cgi?id=435103 )
2008-05-23 12:08:03 -07:00
Anant Narayanan
36482f8bef
Sync form data: bug #434818 , r=thunder
2008-05-22 15:36:44 -07:00
Justin Dolske
8df51016ac
Bug 433762 – Sync stored passwords. r=thunder
2008-05-21 18:09:19 -07:00
Anant Narayanan
d0ee5b17d4
Allow login & sync when encryption is off
2008-05-21 16:28:23 -07:00
Anant Narayanan
ba0fa55299
Typo in log message
2008-05-21 11:16:39 -07:00
Dan Mills
2c39623eab
DAV: separate the root url of the DAV repository from the default prefix for all operations (i.e., the user's subdirectory)
2008-05-15 18:08:13 -07:00
Dan Mills
63af6c5dbd
service: remove accidental 'resetServer' call in sync (\!); dav: lock a file called 'lock', instead of the entire collection (workaround for bug 421610)
2008-04-16 14:46:57 -07:00
Dan Mills
6670eb2948
engines now get the pbe identity directly from the identity manager; engines now know their 'enabled' status (pref); main service syncs *all* registered (enabled) engines
2008-04-15 17:21:34 -07:00
Dan Mills
5a2d0451db
add engine registration service; use global id service in service.js
2008-04-14 18:53:35 -07:00
Dan Mills
83fd7d6261
Various improvements:
...
* async generators: much better stack traces
* dav: use global identity system rather than login/logout to manage
usernames and passwords.
* dav: there is a checkLogin() instead of login() which can be used to
verify auth at any time.
* dav: make it so that we can (only internally atm) hold multiple
locks for different URLs.
* identity: add an identity manager singleton service to keep
identities globally, referenced by a name, with aliasing support (so
e.g., dav can ask for the 'dav' identity, while something else can
alias 'dav' to another identity).
* service: keep track of logged in status here, rather than in the dav
service. Use the global id manager.
2008-04-10 21:38:15 -07:00
Dan Mills
a4b0ed4a6e
make login more robust, specially work around first-login oddities with services.m.c
2008-04-01 23:43:14 -07:00
jono@jono-gibbon-laptop
b405d397ce
Fixed a couple of missing symbol exports that were stopping CookieEngine from being able to be instantiated.
2008-04-01 17:32:14 -07:00
jono@jono-gibbon-laptop
640267d614
Merged changes and resolved conflicts between my cookie stuff and r282.
2008-04-01 14:46:29 -07:00
Dan Mills
a5bb6bf61f
[mostly] beat login dialog into submission; use DAV singleton instead of making a new DAVCollection in service.js; split up checks from login into their own functions, call them on sync(); check we are logged in before syncing
2008-03-31 07:20:09 -07:00
Dan Mills
acdfa5a921
use the wrapper notifier for login(), change observers to the slightly different observer topics; allow server url to not have a trailing slash (add one automatically); dial down dav.js verbosity; add serverWipe service method; change 'reset server data' button in prefs pane to do serverWipe instead of resetServer; allow for wrappers to have extra args both saved in the closure (at wrap creation time) as well as passed in later (via .async())
2008-03-30 08:40:23 -07:00
Dan Mills
78041c490b
fix 'clear logs' on windows
2008-03-28 19:36:11 -07:00
Dan Mills
eaca70f4d9
add status notification to sharing dialog; fix async generators in the case where an async method is missing a yield (better error, continue execution in parent); add guts of demo sharing code to engine & store (for bookmarks, with some spillage)
2008-03-28 03:25:51 -07:00
Dan Mills
62e963c8b9
status label now has service status instead of username; service [un]lock observer notifications are gone; don't error when async methods don't call done() - consider them methods with no return value; don't require passing null into login() to cause the identity to look up the password in the pw mgr; make some wrapper 'method generators' to make lock handling and observer notification simpler
2008-03-27 19:12:53 -07:00
Dan Mills
24ba577b6f
improve async generator logging; don't call done() on StopIteration when we already have a timer set (it means the generator just 'bottomed out' after calling done()); make XHRs be synchronous (blocking) - temporarily; fix up sharing code (adding to the keyring)
2008-03-26 00:59:34 -07:00
Dan Mills
7ec09f1317
add sharing ui+backend code (not working yet); make engines less chatty when applying commands
2008-03-25 23:01:34 -07:00
Dan Mills
0a4be048f7
make service.js the main entry point from chrome/content; make the service be lazy-loaded; make crypto be lazy-loaded
2008-03-25 15:14:00 -07:00
Dan Mills
233a0d648d
fix resetClient's locking. change bookmarks wrap format to have hardcoded guids for the 3 roots (menu, toolbar, unfiled) rather than random ones.
2008-03-21 15:56:41 -07:00
Dan Mills
2739b301fc
split up/simplify login functions; add a global (server-wide) storage version; wipe server for storage version upgrades
2008-03-19 18:42:12 -07:00
Dan Mills
16920cd2ae
Various improvements:
...
* Logging improvements / default log levels tweaked. Less chatty now.
Ability to tweak log levels of individual loggers via prefs.
* Various crypto module fixes, specially for RSA.
* 'service' lock removed, reuses server lock now. dav module supports
temporarily blocking locks to simulate the 'service' lock (login()
needs this, since dav is not configured at that time).
* PKI support: data encryption uses randomly-generated symmetric keys,
which are then encrypted with RSA public keys and stored on the
server.
2008-03-19 15:17:04 -07:00
Dan Mills
732f6b234c
workaround for services.m.c 500 error on some GET requests
2008-03-12 23:06:28 -07:00
jono@jono-gibbon-laptop
a2c4928bc5
My changes to weave to enable cookie synchronization. So far untested and still missing a thing or two.
2008-03-11 12:08:38 -05:00
Dan Mills
48733f699a
add a dav method for getting a list of server files/directories; delete all server data when private key isn't found (this will cause everyone's server data to get wiped, since no one has a key yet); fix a bug in checkStatus with specific status codes (as opposed to ranges)
2008-03-07 04:20:55 -08:00
Dan Mills
941dd24c3b
Asynchronous generator helpers rework + PKI work
...
* Async helpers are in a module of their own now
* Async routines have simpler semantics now. onComplete handlers are taken care of by the helpers. Exceptions are bubbled up across nested asynchronous generators
* Stack traces are automatically logged for unhandled exceptions
* Async generators are now allowed to 'bottom out' (StopIteration is ignored) - this is configurable.
* RSA key generation fixes
* On login we now create an RSA keypair, encrypt the private one with PBE, and upload them to the server
* Log files are now limited to 2MB (down from 5)
2008-03-07 01:56:36 -08:00
Dan Mills
0ed61df581
don't sync bookmarks/history unless they have been enabled
2008-03-05 18:36:58 -08:00
Dan Mills
261ddf2a9e
clean up prefs; add logging prefs; check weave is enabled on scheduled sync
2008-02-13 16:07:11 -08:00
Dan Mills
d6b5a9fc29
put utility functions in an object to avoid namespace pollution
2008-02-13 14:30:44 -08:00
Dan Mills
d5c5e064e7
create user directories when they don't exist - good for personal webdav servers
2008-02-08 01:03:45 -08:00
Dan Mills
731575d8bf
add openssl support
2008-02-05 14:15:53 -08:00
Dan Mills
7e968fc10e
remove debug statements
2007-12-26 16:11:19 -08:00