Richard Newman
614e3df10c
Bug 679279 - Part 3: Object.keys and test improvements. r=philikon
2011-08-19 17:17:58 -07:00
Richard Newman
87ca8dd03f
Bug 679279 - Part 1: minor improvements to engines code. r=philikon
...
In particular, tracking of _modified items no longer allows _modified to
occasionally not exist! This condition was hit in Bug 675299.
2011-08-19 17:17:58 -07:00
Marina Samuel
c45b32a359
Bug 664792 - Tune sync intervals according to user behaviour. r=philikon
...
Part 4: Adjust sync interval based on idle time.
2011-06-27 14:24:33 +01:00
Richard Newman
5bf0b6446b
Bug 656513: part 1: provide a way for record handlers to abort incoming sync. r=philiKON
2011-06-15 00:03:32 -07:00
Philipp von Weitershausen
3095595fe1
Bug 661587 - Don't use the root logger. r=rnewman
2011-06-13 20:42:18 +02:00
Philipp von Weitershausen
546d99116d
Bug 662178 - Simplify timed callbacks. r=rnewman
2011-06-06 21:27:36 +02:00
Richard Newman
5b644a32fd
Move Resource.serverTime to AsyncResource, fix comments for AsyncResource. r=philiKON
2011-05-30 19:01:25 -07:00
Richard Newman
d86728156d
Move async utilities into async.js. Add Async.makeSpinningCallback as a temporary shim for wrapping Cb versions of functions. r=philiKON
2011-05-30 19:01:13 -07:00
Marina Samuel
7948b2a496
Bug 659107 - Only report failure for newly failed items. r=philikon,rnewman
2011-05-27 17:32:13 -07:00
Philipp von Weitershausen
08f48b17e4
Bug 648364 - Replace custom helpers with XPCOMUtils.jsm. r=rnewman
2011-05-19 18:08:35 -07:00
Philipp von Weitershausen
3bf3b1074c
Bug 646347 - Use Sync API version 1.1. r=rnewman
2011-04-08 14:52:08 -07:00
Philipp von Weitershausen
e48dd927d6
Bug 565430 - Service.startOver should purge client-specific data (i.e. client/tabs) from the server. r=rnewman
2011-04-08 14:51:55 -07:00
Richard Newman
9b5bd5c842
Bug 638301: SyncEngine._processIncoming: ensure we don't hit URL length limit for fetchBatch on desktop. r=philiKON
2011-04-06 17:18:22 -07:00
Richard Newman
77d7c794ad
Bug 642727 - Don't trigger sync error when bad HMAC records are deleted. r=philiKON
2011-03-20 16:10:40 -07:00
Philipp von Weitershausen
9e38e27df8
Bug 636312 - Forms and passwords engines: yield back to the main thread during batches of synchronous I/O. r=rnewman a=blocking-fennec
2011-03-07 13:07:59 -08:00
Philipp von Weitershausen
b0b3e2a514
Bug 636673 - Avoid accessing 'arguments' in code that's called a lot. r=rnewman a=blocking-fennec
2011-03-02 15:27:16 -08:00
Richard Newman
23ab949c38
Bug 629463: delete bad server-side clients records. r=philiKON a=beltzner
2011-03-01 11:56:29 -08:00
Philipp von Weitershausen
c218c4a0a0
Bug 636402 - Simplify Sync.js to avoid creating new objects. r=rnewman a=blocking-fennec
2011-02-25 14:43:18 -08:00
Philipp von Weitershausen
28e18f7541
Bug 622762 - Add batch API for incoming records, deal with exceptions in SyncEngine's recordHandler. r=mconnor,rnewman
2011-01-28 09:39:12 -08:00
Philipp von Weitershausen
df1fed815d
Bug 608757 - Make API and tests for Utils.json{Load|Save} async. r=mconnor
...
Utils.jsonLoad() already has an async API. Utils.jsonSave() had an ill-named 'callback' parameter which s renamed to 'obj'; an optional callback parameter (in the async sense) is added.
2011-01-26 21:43:24 -08:00
Philipp von Weitershausen
c2b6d4918e
Bug 615284 - Download chunking needs to be more resilient against app shutdowns. r=mconnor
2011-01-26 21:34:31 -08:00
Philipp von Weitershausen
448d9b94ac
Bug 609421 - Combine base_record/* files into record.js. r=rnewman
...
--HG--
rename : services/sync/modules/base_records/wbo.js => services/sync/modules/record.js
2011-01-18 16:23:30 -08:00
Philipp von Weitershausen
52ed8e305a
Bug 609421 - Move tracker and store implementation into engines.js. r=rnewman
2011-01-18 16:23:25 -08:00
Philipp von Weitershausen
9ee1e6ed53
Bug 623813 - Preserve stack traces when rethrowing exceptions conditionally. r=mconnor
2011-01-13 14:01:05 -08:00
Richard Newman
906e72b628
Bug 618341: Rethrow exceptions we aren't supposed to handle. r=philiKON
2010-12-10 15:43:12 -08:00
Richard Newman
b700f4e4a5
Bug 617709: Tests and functionality for on-the-fly HMAC error recovery. r=philiKON
2010-12-09 23:06:44 -08:00
Richard Newman
98051adf04
Bug 616265: Add download limit for history, lift magic number. r=mconnor
2010-12-06 17:25:35 -08:00
Richard Newman
ffb07cee37
Bug 603489, 614489: simplified crypto. r=mconnor
2010-11-29 16:41:17 -08:00
Philipp von Weitershausen
31d6d2b3c1
Bug 591126 - Handle upload interruption gracefully [r=mconnor]
2010-11-23 21:21:31 -08:00
Philipp von Weitershausen
7440175181
Bug 610923 - Allow engines to bypass the tracker for certain or all changed items [r=mconnor]
...
SyncEngine now uses the getChangedIDs() method to get all changed IDs before a sync. By default this still goes through the tracker, but engines can override this method to do queries based on timestamps, or to bypass the tracker entirely.
SyncEngine now also exposes a lastSyncLocal property that keeps the local timestamp of the last sync so that engines can do timestamp based queries.
2010-11-11 11:00:35 -08:00
Philipp von Weitershausen
08efe3cb23
Bug 609398 - Get rid of partial sync [r=mconnor]
2010-11-09 13:51:19 -08:00
Philipp von Weitershausen
3065b1ede2
Bug 601973 - SyncEngine._testDecrypt() yields wrong result [r=mconnor]
...
Fix a 'this' scoping error in SyncEngine._testDecrypt(). Rename this method to canDecrypt() since it's clearly public API.
Provide tests for SyncEngine.canDecrypt() as well as Service.wipeClient().
2010-10-05 20:32:56 +02:00
Philipp von Weitershausen
753f9d8d3e
Bug 600995 - Use a record's "encryption" property only as a fallback, default to the engine's value. [r=mconnor]
2010-10-04 22:39:08 +02:00
Philipp von Weitershausen
6e250f858f
Bug 569968 - Migration requires client to remove absolute URLs in crypto records
...
Make WBORecord.uri, CryptoWrapper.encryption, PubKey.privateKeyUri, PrivKey.publicKeyUri as well as the CryptoMeta keyring keys relative URLs in the payload. As a result, all records now *must* know their URI.
Bump storage version from 2 to 3 to trigger reupload of all data and exclude older clients.
2010-08-12 22:19:39 +02:00
Philipp von Weitershausen
c29a0e55af
Bug 578671 - Sync which engines are enabled across clients, wipe data for disabled engines [r=mconnor]
2010-09-07 18:44:01 +02:00
Philipp von Weitershausen
a2466ae2e3
Bug 582083 - Should inspect POST responses for failed WBOs [r=Mardak]
...
Make sure records that failed to upload continue to be marked in the tracker so that they'll be uploaded again in the next sync.
2010-07-31 13:28:00 +02:00
Mike Connor
39e9fff92b
Bug 578825 - sync should only sort on mobile clients, r=Mardak
2010-07-14 18:18:24 -04:00
Edward Lee
4e55362a90
Bug 570636 - Decide how to co-exist as a sync add-on and built-in sync [r=mconnor]
...
Map the modules directory to services-sync instead of weave and update imports.
2010-06-16 14:30:08 -07:00
Edward Lee
0d25dd2924
Bug 568677 - Failure to get CryptoMeta assumes it's missing [r=mconnor]
...
Explicitly check the status code to make sure we stop syncing on non-404 crypto meta failures. Add tests to check correct behavior of 404 and non-404 errors during syncStartup.
2010-06-14 15:16:53 -07:00
Edward Lee
9ddf0f8ed5
Bug 546551 - Weave status bar notifications are too busy [r=mconnor]
...
Remove status bar icon/text for setup/connect/sync status. Add menuitem for setting up sync instead of drilling down a 1-item submenu that leads to a button. Remove unused Engine.displayName and related strings.
2010-06-14 10:30:37 -07:00
Philipp von Weitershausen
721e3fa637
Bug 557596 - code audit and create unit test plan for resource.js [r=mconnor]
...
Lots of resource tests, Resource.serverTime initialized to null, Resource.headers normalized to lowercase.
2010-06-01 15:15:53 -07:00
Philipp von Weitershausen
ceaa8fab03
Bug 557588 - code audit and create unit test plan for engines.js [r=mconnor]
...
Tests for SyncEngine.sync(), incl some additions to harness.
2010-06-01 15:07:50 -07:00
Philipp von Weitershausen
ba3ea98599
Bug 557588 - code audit and create unit test plan for engines.js [r=mconnor]
...
Tests for EngineMangerSvc, Engine and SyncEngine sans sync().
2010-06-01 15:06:16 -07:00
Edward Lee
98d3a793fe
Bug 567371 - replace server and replace local options does not sync certain Passwords/bookmarks [r=mconnor]
...
Make sure to clear local cache when deleting crypto records from the server. Handle missing crypto by deleting any existing data and reuploading. Fix broken records by uploading new ones.
2010-05-21 12:15:58 -07:00
Edward Lee
433ac3095f
Bug 562515 - Reset sync option "Replace all data on this computer with your Weave data" is not handling local deletes correctly [r=mconnor]
...
Clear out any changed ids when wiping the client to prevent delete records from getting uploaded for these items.
2010-05-03 14:39:32 -07:00
Edward Lee
210f158298
Bug 556454 - engine.sync should always check engine.enabled [r=mconnor]
...
Just check if the engine is enabled at the beginning of sync. For now keep getEnabled as it's used for other behavior and not just sync.
2010-04-29 16:42:21 -07:00
Mike Connor
914768c99b
bug 496485 - make Service.wipeServer work properly, r=Mardak
2010-04-07 20:06:37 -04:00
Edward Lee
32b2f2a15a
Bug 557891 - Wipe local triggers deletions on all other clients! [r=mconnor]
...
Ignore tracker changes triggered by wiping the local client store.
2010-04-07 17:52:22 -07:00
Edward Lee
3b4aa0220d
Bug 550627 - Default reconciliation to server wins for older changed items [r=mconnor]
...
Save the time the tracker adds a new changed id and use that to compare the age of the record on the server vs the age of the local change to decide if it's server wins or client wins. Fix up various direct uses of changedIDs to use the API and make the save-to-disk lazy to avoid excessive writes. Add a test to make sure addChangedID only increases in time.
2010-04-01 15:54:53 -07:00
Edward Lee
e2f2dee6c3
Bug 546768 - form history uses hashes for GUIDs [r=mconnor]
...
Write a FormWrapper that knows about GUIDs and get/sets them in moz_formhistory as needed. It lazily adds the columns on failure and lazily generates GUIDs for entries that are missing it. Don't eagerly create a sha1 formItem mapping -- don't create it at all, so empty syncs will be much faster too.
2010-04-01 15:29:16 -07:00