Commit Graph

1874 Commits

Author SHA1 Message Date
Kyle Huey
dd0cfd935a 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
755e644afe 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
7141c6595b 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
cd5c2421eb Backout 545cb0d6b5c6 (bug 811490), 4fd6fc029bbe (bug 722977) for xpcshell failures 2012-11-16 19:15:18 +00:00
Andres Hernandez
13a04a1089 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
fedbb19297 Bug 798430 - Copy our set HTTP headers across channel redirects. r=gps 2012-10-10 11:48:16 -07:00
Gregory Szorc
3b76165d39 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
216e4ddfbc Merge mozilla-central into services-central 2012-09-18 11:37:04 -07:00
Gregory Szorc
187933e7d7 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
43c6e1d377 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
98dea330a4 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
48db52e99d 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
d9a82c9c27 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
58bcd2801d 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
c9586f34a5 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
45d3f90cf3 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
88f9794fe7 Bug 785225 - Part 8: Don't expose SyncScheduler as a singleton; r=rnewman 2012-08-29 14:43:41 -07:00
Gregory Szorc
db187465ed Bug 785225 - Part 7: Bind SendCredentialsController to a Service instance; r=rnewman 2012-08-29 14:43:40 -07:00
Gregory Szorc
5628a0cd3b 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
bb5d240869 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
57684fd336 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
b11d37e791 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
50628a23db 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
cf876cf19b Bug 785225 - Part 1: Don't rely on Engines singleton in AddonsReconciler; r=rnewman 2012-08-29 14:43:40 -07:00
Gregory Szorc
512b106c9a Bug 783721 - Refactor User API service interaction; r=rnewman 2012-08-29 14:43:39 -07:00
Allison Naaktgeboren
a7be27abcd Bug 644734; r=gps 2012-09-12 15:08:07 -07:00
Gregory Szorc
70ae3d2aef Bug 781952 - Part 3: Remove unused Service._updateCluster; r=rnewman 2012-08-14 11:34:28 -07:00
Gregory Szorc
46d44b7e4f Bug 781952 - Part 2: Move cluster management out of service.js; r=rnewman 2012-08-14 11:34:20 -07:00
Gregory Szorc
02c00a0d0b Bug 781952 - Part 1: Refactor engine syncing logic out of service.js; r=rnewman 2012-08-14 11:34:14 -07:00
Gregory Szorc
79239ec0c0 Bug 781946 - Clean up notifications usage; r=rnewman 2012-08-13 16:51:58 -07:00
Gregory Szorc
a452894077 Bug 781348 - Style improvements to service.js; r=rnewman 2012-08-08 16:35:37 -07:00
Gregory Szorc
190cd28d00 Bug 777989 - Make Add-on sync TPS tests work again; r=rnewman 2012-08-01 12:02:48 -07:00
Gregory Szorc
b5da03f768 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
3dc82e3bf5 Bug 579604 - Save prefs file after setting up Sync; r=gps 2012-07-30 16:05:20 -07:00
Gregory Szorc
da3ef15a1f Bug 756366 - Preserve Sync credentials during client wipe; r=rnewman 2012-05-22 10:17:53 +02:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Gregory Szorc
17660cf146 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
0226390b82 merge fx-team to m-c 2012-05-10 11:54:23 -03:00
Blair McBride
f7913f5587 Bug 746909 - Lazy load AddonRepository, and various other JS modules. r=dtownsend 2012-05-10 14:28:45 +12:00
Richard Newman
bc544dd5f3 Merge m-c to s-c. 2012-05-06 18:58:00 -07:00
Gregory Szorc
fdb09d5559 Merge m-c to s-c 2012-05-03 14:33:48 -07:00
Gregory Szorc
8702cdf9b5 Bug 749957; r=rnewman 2012-05-03 14:25:33 -07:00
Anant Narayanan
a13fc78774 Bug 745069 - Add methods to DOMApplicationRegistry for AitC support; r=fabrice 2012-04-28 00:10:08 -07:00
Anant Narayanan
cea4a920c0 Bug 745065: Backing out removal of Apps sync engine 2012-04-26 11:27:16 -07:00
Anant Narayanan
40e445624c Bug 745425 - Move Utils.encodeBase64url to CommonUtils; r=gps 2012-04-17 15:42:33 -07:00
Gregory Szorc
eb60a9651c Bug 745396 - Refactor Sync utility functions into services-{common,crypto}; r=rnewman 2012-04-16 12:19:01 -07:00
Anant Narayanan
c3980e163e Bug 745065 - Remove sync engine for apps (superseded by AitC) 2012-04-13 11:13:01 -07:00
Gregory Szorc
889eca9a49 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
49412510e0 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
6f41b50825 Bug 741670 - Don't sync hotfix extensions; r=rnewman, Unfocused 2012-04-03 08:55:58 -07:00
Gregory Szorc
bfb043da1b Bug 739320 - Handle title in received "display URI" Sync commands; r=rnewman 2012-03-28 12:53:57 -07:00
Richard Newman
2a4fc96e59 Bug 739892 - correct type comparison error and typo in 7703db949571 (Bug 739339). a=borkage 2012-03-27 22:21:22 -07:00
Marina Samuel
550215a57b Bug 739320 - Send title in display URI command; r=gps 2012-03-27 10:13:52 -07:00
Richard Newman
15fde3b635 Bug 739339 - make desktop Sync more robust against malformed bookmark records. r=gps 2012-03-26 18:40:28 -07:00
Pallani Kumaran
463758908d 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
9849ea91e2 Bug 730989 - Refactor identity and authentication in Sync; r=rnewman 2012-03-22 15:49:50 -07:00
Gregory Szorc
9d2a0e6bb7 Backed out changeset eb4233025be0 for xpcshell test failures 2012-03-22 15:49:39 -07:00
Pallani Kumaran
d00a421293 Bug 701967 - Misc code cleanup in Sync's util.js; r=gps 2012-03-13 02:12:47 +08:00
Richard Newman
160d0cbd26 Bug 733886 - Ensure that tabs engine always uploads integer timestamps, not strings. r=gps 2012-03-13 16:45:26 -07:00
Gregory Szorc
e54bf68a91 Bug 751950 - Detect Sync Key properly on first sync; r=rnewman 2012-05-04 11:55:40 -07:00
Gregory Szorc
9428ab2bbe 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
3493174568 Bug 729659 - Implement HTTP MAC authorization signing API; r=rnewman, dchan 2012-02-27 17:52:48 -08:00
Marco Bonardo
3cac1a047d Bug 613588 (Sync) - Load-on-demand livemarks.
r=rnewman
2012-02-24 13:42:32 +01:00
Gregory Szorc
60fa181a7c 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
c4d2ef72bf 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
b323330aba Bug 725083 - Handle undefined sourceURI when installing add-ons; r=rnewman 2012-02-07 14:14:41 -08:00
Gregory Szorc
f8528d4840 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
501ae40409 Bug 704539 - Better handling of HTTP channels in Sync; r=rnewman 2012-01-17 11:51:45 -08:00
Gregory Szorc
4d1c36a1d5 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
c30563d574 Bug 714202 - Fix implementation of AddonsReconciler.pruneChangesBeforeDate(); r=rnewman 2011-12-30 13:55:19 -08:00
Rafael Ávila de Espíndola
3a35d81c93 Bug 702848 - Finalize the statements in services sync/modules/engines/forms.js. r=dolske. 2011-12-22 11:21:37 -05:00
Gregory Szorc
f990f314d6 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
5ada1a2e08 Bug 711263 - Don't register AddonsReconciler unless addons engine is enabled; r=philikon 2011-12-19 17:13:33 -08:00
Matt Brubeck
89eefdf246 Back out 259262c87f23 (bug 711263) because of test failures 2011-12-19 13:57:01 -08:00
Gregory Szorc
9168467019 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
e6caf3b308 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
a588914fb5 Bug 709424 - More robust handling of reconciling for duplicate records; r=rnewman 2011-12-13 15:46:54 -08:00
Gregory Szorc
218056e9c3 Bug 709325 - Log records without newlines; r=rnewman
--HG--
extra : rebase_source : a9d75a4385a51e79884c8b97675754025ab46d7b
2011-12-13 14:54:17 -08:00
Nigel Babu
c0b2196368 Bug 691854 - Double period in Firefox Sync server maintenance message, r=philikon 2011-12-08 13:54:42 -08:00
Fabrice Desré
eea40d3c2f 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
546f98b766 Bug 700296 (Sync) - Remove dynamic containers implementation from Places.
r=rnewman
2011-11-29 02:22:47 +01:00
Philipp von Weitershausen
41b90ee57d 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
880f81dd93 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
6b62127af2 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
65cb3433b7 Bug 684798 - Part 5: follow-up for wipeRemote error handling. r=rnewman 2011-10-27 22:25:01 -07:00
Richard Newman
23637a0e92 Bug 692714 - Part 1: handle node reassignment on all storage requests. r=philikon 2011-10-27 22:25:01 -07:00
Richard Newman
f665dc4707 Bug 692714 - Part 0: cleanup and logging. r=philikon (reland) 2011-10-27 22:25:01 -07:00
Richard Newman
134af0a863 Bug 684798 - Part 4: Schedule syncs on temporary/recoverable login errors. r=rnewman (reland) 2011-10-27 22:25:00 -07:00
Richard Newman
eab3e9f84f Bug 684798 - Part 3: Catch server errors when wiping/disabling engines. r=rnewman (reland) 2011-10-27 22:25:00 -07:00
Richard Newman
46cba03338 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
cf03e0941e Bug 684798 - Part 1: Catch server errors for crypto/keys. r=rnewman (reland) 2011-10-27 22:25:00 -07:00
Richard Newman
f5f4f98661 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
Philipp von Weitershausen
39be9606dc Bug 684798 - Part 4: Schedule syncs on temporary/recoverable login errors. r=rnewman CLOSED TREE 2011-10-19 17:29:12 -07:00
Philipp von Weitershausen
9888b3bd01 Merge m-c to s-c 2011-10-17 10:10:07 -07:00
Richard Newman
50c2bcb339 Bug 694728 - Sync: Log Status transitions. r=philikon 2011-10-15 15:29:11 -07:00