Commit Graph

1877 Commits

Author SHA1 Message Date
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
Richard Newman
1a5b4a0eb1 Bug 806460 - Part 1: NS_ERROR_ILLEGAL_VALUE in nsINavBookmarksService.insertBookmark while inserting query. r=gps
* * *
Bug 806460 - Part 2: more nuanced rejection of malformed records. r=me (fix bustage).
2012-10-29 15:24:52 -07:00
Andres Hernandez
35e0e1c2b8 Bug 722977 - Tabs engine uses global Svc.Private to make decisions based on private browsing state; r=ehsan,gps,rnewman 2012-11-19 14:44:07 -06:00
Ed Morley
c10213c220 Backout 545cb0d6b5c6 (bug 811490), 4fd6fc029bbe (bug 722977) for xpcshell failures 2012-11-16 19:15:18 +00:00
Andres Hernandez
ac3ba82dab Bug 722977 - Tabs engine uses global Svc.Private to make decisions based on private browsing state; r=ehsan,gps,rnewman
--HG--
extra : rebase_source : 49f920e3a961a6c103bae28d62e2a322a5f9fad1
2012-11-09 10:48:23 -06:00
Richard Newman
fdaca42889 Bug 798430 - Copy our set HTTP headers across channel redirects. r=gps 2012-10-10 11:48:16 -07:00
Gregory Szorc
2a9980a278 Bug 792990 - Properly handle add-ons when resetting Sync; r=rnewman
Due to a bug in the add-on sync implementation, resetting Sync would
cause all add-ons to be uninstalled and not replaced with the server
data.
2012-09-21 11:22:59 -07:00
Gregory Szorc
dbdaf377e1 Merge mozilla-central into services-central 2012-09-18 11:37:04 -07:00
Gregory Szorc
28d60d3486 Bug 787273 - Part 7: Expose Status an an instance variable on Service; r=rnewman
The global Status is still there. But Service and its derived objects
avoid the singleton lookup.

There are likely a few lingering tests that reference Status when they
should reference Service.status. These will be dealt with when Status is
refactored.
2012-09-14 16:02:33 -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
20ab44ed9b Bug 787273 - Part 3: Don't rely on Identity in SyncStorageRequest; r=rnewman
The Identity singleton is going away. This refactors SyncStorageRequest
to not use it. Behavior now works like Resource. Instances are obtained
from the Service singleton and have authentication functionality
attached.
2012-09-14 16:02:32 -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
3b109be643 Bug 785225 - Part 8: Don't expose SyncScheduler as a singleton; r=rnewman 2012-08-29 14:43:41 -07:00
Gregory Szorc
44c8a9c680 Bug 785225 - Part 7: Bind SendCredentialsController to a Service instance; r=rnewman 2012-08-29 14:43:40 -07:00
Gregory Szorc
acef1d4ad5 Bug 785225 - Park 6: Move StorageCredentialsController to jpakeclient.js; r=rnewman
I'm not sure why it was in policies.js, as it has everything to do with
J-PAKE exchange.
2012-08-29 14:43:40 -07:00
Gregory Szorc
aa883d0730 Bug 785225 - Part 5: Partial removal of Clients singleton; r=rnewman
Clients was being exported and used as a singleton. We still use Clients
as a singleton in some places, but only in test code. The preferred
method to access Clients is now through a service instance.
Weave.Clients is no longer exposed. Callers go through Weave.Service
now.
2012-08-29 14:43:40 -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
b037af07da Bug 785225 - Part 3: Don't expose ErrorHandler as a singleton; r=rnewman
Some tests still expect there to only be a single instance of
ErrorHandler for the life of the tests. And, ErrorHandler itself is
pretty tighly coupled with being a singleton because it writes out
changes to prefs, etc. But, it's a step in the right direction.
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
Gregory Szorc
07bbfcb4b6 Bug 785225 - Part 1: Don't rely on Engines singleton in AddonsReconciler; r=rnewman 2012-08-29 14:43:40 -07:00
Gregory Szorc
03b466fd3b Bug 783721 - Refactor User API service interaction; r=rnewman 2012-08-29 14:43:39 -07:00
Allison Naaktgeboren
394e2f4fdf Bug 644734; r=gps 2012-09-12 15:08:07 -07:00
Gregory Szorc
4aef374315 Bug 781952 - Part 3: Remove unused Service._updateCluster; r=rnewman 2012-08-14 11:34:28 -07:00
Gregory Szorc
766a2d965e Bug 781952 - Part 2: Move cluster management out of service.js; r=rnewman 2012-08-14 11:34:20 -07:00
Gregory Szorc
2b7e5b1f01 Bug 781952 - Part 1: Refactor engine syncing logic out of service.js; r=rnewman 2012-08-14 11:34:14 -07:00
Gregory Szorc
226eb66194 Bug 781946 - Clean up notifications usage; r=rnewman 2012-08-13 16:51:58 -07:00
Gregory Szorc
54b5597244 Bug 781348 - Style improvements to service.js; r=rnewman 2012-08-08 16:35:37 -07:00
Gregory Szorc
c675bfe933 Bug 777989 - Make Add-on sync TPS tests work again; r=rnewman 2012-08-01 12:02:48 -07:00
Gregory Szorc
ec9dee356d Bug 777989 - Move add-on helper functions out of add-ons engine; r=rnewman 2012-07-30 17:05:33 -07:00
Sankha Narayan Guria
573ed47658 Bug 579604 - Save prefs file after setting up Sync; r=gps 2012-07-30 16:05:20 -07:00
Gregory Szorc
ae61901042 Bug 756366 - Preserve Sync credentials during client wipe; r=rnewman 2012-05-22 10:17:53 +02:00
Gervase Markham
ca171eec44 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Gregory Szorc
aa2a6a2c99 Bug 753515 - Move json{Load,Save} from services-sync into services-common; r=mconnor
--HG--
rename : services/sync/tests/unit/test_utils_json.js => services/common/tests/unit/test_utils_json.js
2012-05-10 12:21:21 -07:00
Rob Campbell
1c9a181020 merge fx-team to m-c 2012-05-10 11:54:23 -03:00
Blair McBride
16753d5585 Bug 746909 - Lazy load AddonRepository, and various other JS modules. r=dtownsend 2012-05-10 14:28:45 +12:00
Richard Newman
c77aeb8752 Merge m-c to s-c. 2012-05-06 18:58:00 -07:00
Gregory Szorc
4cc790e537 Merge m-c to s-c 2012-05-03 14:33:48 -07:00
Gregory Szorc
8ab3dda40c Bug 749957; r=rnewman 2012-05-03 14:25:33 -07:00
Anant Narayanan
a78f5f47a4 Bug 745069 - Add methods to DOMApplicationRegistry for AitC support; r=fabrice 2012-04-28 00:10:08 -07:00
Anant Narayanan
c825ee20c7 Bug 745065: Backing out removal of Apps sync engine 2012-04-26 11:27:16 -07:00
Anant Narayanan
cd4feddfe0 Bug 745425 - Move Utils.encodeBase64url to CommonUtils; r=gps 2012-04-17 15:42:33 -07:00
Gregory Szorc
2084bafe61 Bug 745396 - Refactor Sync utility functions into services-{common,crypto}; r=rnewman 2012-04-16 12:19:01 -07:00
Anant Narayanan
ecb589b2f2 Bug 745065 - Remove sync engine for apps (superseded by AitC) 2012-04-13 11:13:01 -07:00
Gregory Szorc
ccb6375f4f Bug 743413 - Move some utility functions from sync to common; r=rnewman
--HG--
rename : services/sync/tests/unit/test_utils_atob.js => services/common/tests/unit/test_utils_atob.js
rename : services/sync/tests/unit/test_utils_utf8.js => services/common/tests/unit/test_utils_utf8.js
2012-04-09 15:39:59 -07: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
f5a85aa6b3 Bug 741670 - Don't sync hotfix extensions; r=rnewman, Unfocused 2012-04-03 08:55:58 -07:00
Gregory Szorc
6588b2bbf8 Bug 739320 - Handle title in received "display URI" Sync commands; r=rnewman 2012-03-28 12:53:57 -07:00
Richard Newman
ac8003a9b7 Bug 739892 - correct type comparison error and typo in 7703db949571 (Bug 739339). a=borkage 2012-03-27 22:21:22 -07:00
Marina Samuel
9dbb1d27a1 Bug 739320 - Send title in display URI command; r=gps 2012-03-27 10:13:52 -07:00
Richard Newman
bc4794f1bf Bug 739339 - make desktop Sync more robust against malformed bookmark records. r=gps 2012-03-26 18:40:28 -07:00
Pallani Kumaran
914326cf20 Bug 701967 - Misc code cleanup in Sync's util.js; r=gps
This is a re-land of eb4233025be0. References to defunct tests have been
removed.
2012-03-13 02:12:47 +08:00
Gregory Szorc
2a1bfd26ab Bug 730989 - Refactor identity and authentication in Sync; r=rnewman 2012-03-22 15:49:50 -07:00
Gregory Szorc
9fa8034de1 Backed out changeset eb4233025be0 for xpcshell test failures 2012-03-22 15:49:39 -07:00
Pallani Kumaran
e0042a8a47 Bug 701967 - Misc code cleanup in Sync's util.js; r=gps 2012-03-13 02:12:47 +08:00
Richard Newman
a82a195f5e Bug 733886 - Ensure that tabs engine always uploads integer timestamps, not strings. r=gps 2012-03-13 16:45:26 -07:00
Gregory Szorc
888367ee92 Bug 751950 - Detect Sync Key properly on first sync; r=rnewman 2012-05-04 11:55:40 -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
f183cc6a27 Bug 729659 - Implement HTTP MAC authorization signing API; r=rnewman, dchan 2012-02-27 17:52:48 -08:00
Marco Bonardo
612c9018f6 Bug 613588 (Sync) - Load-on-demand livemarks.
r=rnewman
2012-02-24 13:42:32 +01:00
Gregory Szorc
1839a30f3b Bug 712542 - Apply add-on state before install when installing through Sync; r=Unfocused, r=rnewman 2012-02-20 14:53:03 -08:00
Geoff Lankow
22383d15ab Bug 718255 - Merge nsIPrefBranch2 with nsIPrefBranch - Part G, remove remaining uses of nsIPrefBranch2; r=bsmedberg 2012-01-18 23:23:28 +13:00
Gregory Szorc
519813fa87 Bug 725083 - Handle undefined sourceURI when installing add-ons; r=rnewman 2012-02-07 14:14:41 -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
6574d253c9 Bug 704539 - Better handling of HTTP channels in Sync; r=rnewman 2012-01-17 11:51:45 -08:00
Gregory Szorc
58abae6ca3 Bug 708134 - Rewrite add-on URL to note it was installed by Sync; r=rnewman, Unfocused
--HG--
extra : rebase_source : cbcdcf2f85d8b68c57accef1b1e2db887df4925f
2012-01-12 17:45:37 -08:00
Gregory Szorc
b7a5a93bce Bug 714202 - Fix implementation of AddonsReconciler.pruneChangesBeforeDate(); r=rnewman 2011-12-30 13:55:19 -08:00
Rafael Ávila de Espíndola
37858b3ecc Bug 702848 - Finalize the statements in services sync/modules/engines/forms.js. r=dolske. 2011-12-22 11:21:37 -05:00
Gregory Szorc
ac1d404f8b Bug 711263 - Prevent race condition when saving reconciler state; r=philikon
This is a recommit. The original commit was backed out due to mochitest
failures. Those failures have (hopefully) been fixed in previous
commits. philikon did not explicitly r+ this commit, but the original
patch. There is an implicit a=bustage on the commit because the tree is
broken and this patch should have been included with the mochitest fix
commit.
2011-12-19 20:12:00 -08:00
Gregory Szorc
1ba3d36c12 Bug 711263 - Don't register AddonsReconciler unless addons engine is enabled; r=philikon 2011-12-19 17:13:33 -08:00
Matt Brubeck
df067d069f Back out 259262c87f23 (bug 711263) because of test failures 2011-12-19 13:57:01 -08:00
Gregory Szorc
22611c262b Bug 711263 - Fix potential race condition when saving add-on reconciler state; r=philikon
a=philikon for landing on s-c after train departure because it seems to
fix an xpcshell orange.
2011-12-16 13:58:23 -08:00
Gregory Szorc
7b81b26dda Bug 534956 - Part 1 - Sync engine for add-ons; r=mconnor
This includes the core engine, support code, and tests. UX is not
included.
2011-12-14 17:10:34 -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
Gregory Szorc
6cda03730b Bug 709325 - Log records without newlines; r=rnewman
--HG--
extra : rebase_source : a9d75a4385a51e79884c8b97675754025ab46d7b
2011-12-13 14:54:17 -08:00
Nigel Babu
bf7e0f110b Bug 691854 - Double period in Firefox Sync server maintenance message, r=philikon 2011-12-08 13:54:42 -08:00
Fabrice Desré
2ac8ece288 Bug 706545 - Implement a sync engine for apps exposed by navigator.mozApps : Part 2: sync engine [r=philikon] 2011-12-08 05:33:23 -08:00
Marco Bonardo
34ce6d094a Bug 700296 (Sync) - Remove dynamic containers implementation from Places.
r=rnewman
2011-11-29 02:22:47 +01:00
Philipp von Weitershausen
fdd10ef338 Bug 684798 - Part 6: Avoid sync scheduling loops when a score-triggered sync is overdue and login reproducibly fails. r=rnewman 2011-11-01 11:41:47 -07:00
Richard Newman
71fbb106c5 Bug 690170 - Part 2: clean up Resource and friends now we've found the culprit. r=philikon 2011-10-28 14:43:18 -07:00
Richard Newman
a32624268e Bug 690170 - Part 1: Fix channel management to avoid nsIHTTPChannel.responseStatus => NS_ERROR_NOT_AVAILABLE in Sync HTTP requests. r=philikon 2011-10-28 14:43:18 -07:00
Philipp von Weitershausen
ddadb9f464 Bug 684798 - Part 5: follow-up for wipeRemote error handling. r=rnewman 2011-10-27 22:25:01 -07:00
Richard Newman
6769b3bc54 Bug 692714 - Part 1: handle node reassignment on all storage requests. r=philikon 2011-10-27 22:25:01 -07:00
Richard Newman
d832dd472c Bug 692714 - Part 0: cleanup and logging. r=philikon (reland) 2011-10-27 22:25:01 -07:00
Richard Newman
c6b4528226 Bug 684798 - Part 4: Schedule syncs on temporary/recoverable login errors. r=rnewman (reland) 2011-10-27 22:25:00 -07: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
Richard Newman
4b54a00d2b Bug 684798 - Part 2: Sanitize wipeServer and catch all server maintenance errors. r=rnewman (reland) 2011-10-27 22:25:00 -07:00
Richard Newman
8f09b9ae0f Bug 684798 - Part 1: Catch server errors for crypto/keys. r=rnewman (reland) 2011-10-27 22:25:00 -07:00
Richard Newman
1bcf84ee29 Bug 653335 - Sync setup wizard triggers Change Master Password dialog. r=philikon 2011-10-26 13:46:40 -07:00
Philipp von Weitershausen
974d53a1dc Merge backout on this CLOSED TREE 2011-10-20 16:21:52 -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
1b3e5ac873 Back out bug 692714 and bug 684798 part 4. 2011-10-20 16:19:47 -07:00
Richard Newman
d256acd73b Bug 692714 - Part 1: handle node reassignment on all storage requests. r=philikon 2011-10-19 17:54:55 -07:00
Richard Newman
c89c39d2d8 Bug 692714 - Part 0: cleanup and logging. r=philikon 2011-10-19 17:43:54 -07:00