Kyle Huey
1482122303
Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
...
--HG--
extra : rebase_source : 98337b6a8c07d05e8c961a452dd05a7d75c3c60b
2012-10-31 09:13:28 -07:00
Vicamo Yang
8297cdabd6
Backout 67cb43bb8865: Breaks B2G Marionette
2012-10-31 16:35:11 +08:00
Kyle Huey
bdf47895bb
Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
2012-10-30 12:28:11 -07:00
Ed Morley
777eed8444
Backout a145ded68994, e0cf397089ec & 1545e91c658e (bug 798491) for bustage on a CLOSED TREE
2012-10-30 17:02:31 +00:00
Kyle Huey
aa1997a51a
Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
2012-10-30 08:26:12 -07:00
Gregory Szorc
4242b1314b
Bug 787273 - Part 6: Remove Weave export from service.js; r=rnewman
...
This is mostly minor cosmetic changes. Weave was being exported from
service.js for no apparent reason. It was mostly used by tests.
There was a reference to it in engines.js, which should have been caught
when the engines were associated with a service instance. engines.js now
does the right thing.
Weave is no longer exported by service.js. Tests and modules no longer
import main.js.
WeaveSvc was also renamed to Sync11Service because why not.
Weave continues to be the main public API.
2012-09-14 16:02:33 -07:00
Gregory Szorc
ed996f6433
Bug 787273 - Part 5: Remove the CollectionKeys singleton; r=rnewman
...
CollectionKeys is gone. Instead, we export CollectionKeyManager (the
underlying type) and an instance is available on the Service singleton.
2012-09-14 16:02:33 -07:00
Gregory Szorc
e27709479f
Bug 787273 - Part 4: Refactor Identity to not be a singleton; r=rnewman
...
Access to IdentityManager functionality now goes through the Service
singleton.
2012-09-14 16:02:33 -07:00
Gregory Szorc
abf3a102f7
Bug 787273 - Part 2: Refactor Resource and Record to not rely on singletons; r=rnewman
...
Resource currently relies on the Identity singleton to perform
authentication. This is bad magic behavior. Resource instances should
authenticate according to the service instance they are associated with.
This patch removes Identity magic from Resource. Everything using
Resource now explicitly assigns an authenticator which comes from
the service instance/singleton. This required API changes to Collection
and Record.
The preferred method to obtain a Resource instance is to call
getResource() on a service instance.
The end result of this patch looks a little weird, especially in test
code. You have things like Service.resource(Service.cryptoKeysURL).
This ugliness will go away when a unified storage service client is
used.
2012-09-14 16:02:32 -07:00
Gregory Szorc
c2de204c74
Bug 787273 - Part 1: Remove Records singleton; r=rnewman
...
RecordManager is now an instance of the Service singleton and holds a
reference back to the service which is used to obtain needed "global"
state.
2012-09-14 16:02:32 -07:00
Gregory Szorc
7ece058f3d
Bug 785225 - Part 9: Refactor engines to not use singletons; r=rnewman
...
Engines now maintain a reference to the service they belong to. This
allows them to obtain references to other engine instances belonging to
that service and that service only.
Stores and trackers now maintain a reference to the engine they belong
to.
Engine managers now maintain a reference back to a service.
The clients singleton has been removed. It now exists as an instance
variable on Service. Parts of ClientsEngine do behave as singletons
(e.g. commands). This will be addressed in future refactoring.
2012-08-29 14:43:41 -07:00
Gregory Szorc
0ee793c5f0
Bug 785225 - Part 4: Remove unused exports from Weave; change engine loading; r=rnewman
...
Lots of exports from the Weave global object weren't being used. This
also changes how engines are loaded. There is now a mapping in
service.js of engine name to filename. Before, it was looking at Weave.
2012-08-29 14:43:40 -07:00
Gregory Szorc
76c6263b21
Bug 785225 - Part 2: Minimize Engines singleton usage; r=rnewman
...
Weave.Engines is no longer exported. Service now exposes an
EngineManager instance, which is the new recommended way to get at the
engine manager. Service was updated to reference the internal instance.
2012-08-29 14:43:40 -07:00
Gervase Markham
ca171eec44
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Gregory Szorc
10e97429b9
Bug 731494 - Refactor generic code from services/sync into services/common; r=rnewman
...
--HG--
rename : services/sync/modules/async.js => services/common/async.js
rename : services/sync/modules/log4moz.js => services/common/log4moz.js
rename : services/sync/modules/ext/Observers.js => services/common/observers.js
rename : services/sync/modules/ext/Preferences.js => services/common/preferences.js
rename : services/sync/modules/ext/StringBundle.js => services/common/stringbundle.js
rename : services/sync/tests/unit/test_async_chain.js => services/common/tests/unit/test_async_chain.js
rename : services/sync/tests/unit/test_async_querySpinningly.js => services/common/tests/unit/test_async_querySpinningly.js
rename : services/sync/tests/unit/test_log4moz.js => services/common/tests/unit/test_log4moz.js
rename : services/sync/tests/unit/test_Observers.js => services/common/tests/unit/test_observers.js
rename : services/sync/tests/unit/test_Preferences.js => services/common/tests/unit/test_preferences.js
rename : services/sync/tests/unit/test_restrequest.js => services/common/tests/unit/test_restrequest.js
rename : services/sync/tests/unit/test_utils_makeURI.js => services/common/tests/unit/test_utils_makeURI.js
rename : services/sync/tests/unit/test_utils_namedTimer.js => services/common/tests/unit/test_utils_namedTimer.js
rename : services/sync/tests/unit/test_utils_stackTrace.js => services/common/tests/unit/test_utils_stackTrace.js
2012-04-05 23:26:06 -07:00
Gregory Szorc
2a1bfd26ab
Bug 730989 - Refactor identity and authentication in Sync; r=rnewman
2012-03-22 15:49:50 -07:00
Gregory Szorc
3e3b7f899e
Bug 732605 - Only schedule shorter sync interval if records were successfully applied; r=rnewman, r=mconnor
2012-03-06 14:27:56 -08:00
Gregory Szorc
11e6746349
Bug 710448 - Rewritten Sync record reconciling to handle edge cases; r=rnewman, r=philikon
...
This patch rewrites Sync's record reconciling logic to properly handle
edge cases. Before, there were a few cases where data loss could occur
because of improperly handled and ignored timestamps.
2012-01-25 13:32:05 -08:00
Gregory Szorc
70e1165fe4
Bug 709424 - More robust handling of reconciling for duplicate records; r=rnewman
2011-12-13 15:46:54 -08:00
Richard Newman
1c9fffe824
Bug 684798 - Part 3: Catch server errors when wiping/disabling engines. r=rnewman (reland)
2011-10-27 22:25:00 -07:00
Philipp von Weitershausen
28bd994e45
Back out bug 684798 parts 1 thru 3.
2011-10-20 16:21:17 -07:00
Philipp von Weitershausen
c63e6756a8
Bug 684798 - Part 3: Catch server errors when wiping/disabling engines. r=rnewman
2011-10-12 13:55:19 -07:00
Gregory Szorc
0e59ef5a22
Bug 685757 - Document Store API; r=philikon DONTBUILD
2011-09-09 10:34:58 -07:00
Philipp von Weitershausen
ebb3454501
Bug 681863 - Replace Utils.isArray with Array.isArray. r=rnewman
2011-08-26 10:26:11 -07:00
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