Commit Graph

169 Commits

Author SHA1 Message Date
Tooru Fujisawa
7cfd1e3584 Bug 1207490 - Part 7: Remove use of expression closure from browser/experiments/. r=Gijs
--HG--
extra : commitid : 992j9yfq9QA
extra : rebase_source : 2a75c61902dabdf6efc15105eead225375cdff1d
2015-09-21 02:26:17 +09:00
Dave Townsend
a22c2d1f9e Bug 1192924: Expose the update URL formatting code a new UpdateUtils module. r=rstrong
The GMP manager uses a copy of the update service's url formatting code and has
since fallen out of sync. We'll also want to use the same formatting code for
the system add-on update checks so this just exposes it in a shared API.

I've moved the contents of UpdateChannel.jsm to UpdateUtils.jsm and exposed
formatUpdateURL there as well as a few properties that the update service still
needs access to.

UpdateUtils.UpdateChannel is intended to be a lazy getter but isn't for now
since tests expect to be able to change the update channel at runtime.

--HG--
extra : commitid : KsbH21csjH4
extra : rebase_source : bc7c08de1ec6e802261b8cd294d88ee2c4e75c2d
2015-09-14 11:04:19 -07:00
Wes Kocher
468b697f04 Backed out 3 changesets (bug 1192924) for Android bustage CLOSED TREE
Backed out changeset 30d612836685 (bug 1192924)
Backed out changeset a6860f880e01 (bug 1192924)
Backed out changeset 10e1fa2cc23a (bug 1192924)

--HG--
rename : toolkit/mozapps/extensions/test/xpcshell/data/system_addons/system1_1.xpi => toolkit/mozapps/extensions/test/xpcshell/data/system_addons/app1/features/system1@tests.mozilla.org.xpi
rename : toolkit/mozapps/extensions/test/xpcshell/data/system_addons/system2_1.xpi => toolkit/mozapps/extensions/test/xpcshell/data/system_addons/app1/features/system2@tests.mozilla.org.xpi
rename : toolkit/mozapps/extensions/test/xpcshell/data/system_addons/system1_2.xpi => toolkit/mozapps/extensions/test/xpcshell/data/system_addons/app2/features/system1@tests.mozilla.org.xpi
rename : toolkit/mozapps/extensions/test/xpcshell/data/system_addons/system3_1.xpi => toolkit/mozapps/extensions/test/xpcshell/data/system_addons/app2/features/system3@tests.mozilla.org.xpi
rename : toolkit/mozapps/extensions/test/xpcshell/data/system_addons/system1_1_badcert.xpi => toolkit/mozapps/extensions/test/xpcshell/data/system_addons/app3/features/system1@tests.mozilla.org.xpi
2015-09-22 11:02:55 -07:00
Dave Townsend
fb7653707b Bug 1192924: Expose the update URL formatting code a new UpdateUtils module. r=rstrong
The GMP manager uses a copy of the update service's url formatting code and has
since fallen out of sync. We'll also want to use the same formatting code for
the system add-on update checks so this just exposes it in a shared API.

I've moved the contents of UpdateChannel.jsm to UpdateUtils.jsm and exposed
formatUpdateURL there as well as a few properties that the update service still
needs access to.

UpdateUtils.UpdateChannel is intended to be a lazy getter but isn't for now
since tests expect to be able to change the update channel at runtime.

--HG--
extra : commitid : FuPUB9X4oYJ
extra : rebase_source : cfcd31d7da5f5b636a2ec11546dbada973d681de
extra : histedit_source : 3df840dc502c6ee4177f1858920d1260e4dc27af
2015-09-14 11:04:19 -07:00
Shu-yu Guo
64db2267cf Bug 1202902 - Mass replace toplevel 'let' with 'var' in preparation for global lexical scope. (rs=jorendorff) 2015-09-15 11:19:45 -07:00
Jonathan Griffin
369ec3ac0f Bug 1136892 - Create an xpcshell-addons tag for running addon-specific xpcshell tests, r=chmanchester
--HG--
extra : commitid : 6kGKslC9h14
2015-08-18 11:26:14 -07:00
Alessio Placitelli
2bd3068c47 Bug 1178456 - Experiments service shouldn't use FHR prefs. r=gfritzsche 2015-07-01 05:46:00 +02:00
Benjamin Smedberg
3333eacc3e Bug 1151086 - Fix experiment filter functions to use the new telemetry environment, r=gfritzsche
--HG--
extra : rebase_source : 1edf5edc9de9bf2fa355bb124a93378795a3890e
2015-06-23 14:56:11 -04:00
Georg Fritzsche
85c688eba8 Bug 1149754 - Part 1: Rename TelemetryPing.jsm to TelemetryController.jsm. r=vladan
--HG--
rename : toolkit/components/telemetry/TelemetryPing.jsm => toolkit/components/telemetry/TelemetryController.jsm
rename : toolkit/components/telemetry/tests/unit/test_TelemetryPing.js => toolkit/components/telemetry/tests/unit/test_TelemetryController.js
rename : toolkit/components/telemetry/tests/unit/test_TelemetryPingBuildID.js => toolkit/components/telemetry/tests/unit/test_TelemetryControllerBuildID.js
rename : toolkit/components/telemetry/tests/unit/test_TelemetryPingShutdown.js => toolkit/components/telemetry/tests/unit/test_TelemetryControllerShutdown.js
rename : toolkit/components/telemetry/tests/unit/test_TelemetryPing_idle.js => toolkit/components/telemetry/tests/unit/test_TelemetryController_idle.js
2015-04-27 18:07:58 +02:00
Georg Fritzsche
4d8b9aa07b Bug 1139460 - Bonus: Remove unused function from experiments code. rs=yoric 2015-03-19 15:50:09 +01:00
Wes Kocher
9b168d2c01 Backed out 14 changesets (bug 1143714, bug 1143796, bug 1139751, bug 1139460, bug 1140558) for Win PGO xpcshell failures
Backed out changeset d2567d89cda3 (bug 1139751)
Backed out changeset a8edee74d07f (bug 1139751)
Backed out changeset 613fd260f646 (bug 1143796)
Backed out changeset 7a6f6bdd6edf (bug 1143796)
Backed out changeset fdf9d0174142 (bug 1143714)
Backed out changeset 18989d1ebd43 (bug 1140558)
Backed out changeset a4f545b715ae (bug 1140558)
Backed out changeset b2e92f548736 (bug 1140558)
Backed out changeset a082c774db0a (bug 1140558)
Backed out changeset f9f66f6aaa86 (bug 1139460)
Backed out changeset d8b62b11c43e (bug 1139460)
Backed out changeset 77090798e88c (bug 1139460)
Backed out changeset ea6da072eb0c (bug 1139460)
Backed out changeset 58c2eb92a959 (bug 1139460)

--HG--
extra : amend_source : 850bad063645f0d6c632ca1d93a716d9c444f383
2015-04-01 20:52:33 -07:00
Georg Fritzsche
b16e31ce4a Bug 1139460 - Bonus: Remove unused function from experiments code. rs=yoric 2015-03-19 15:50:09 +01:00
David Rajchenbach-Teller
2504927a19 Bug 1087110 - Don't update experiments manifests if no experiment is running. r=gfritzsche 2015-03-10 13:36:17 +01:00
Alessio Placitelli
e19e8b063e Bug 1136390 - test_TelemetryTimestamps.js/test_conditions.js are missing AddonManager initialization. r=gfritzsche 2015-02-25 23:54:35 +01:00
Alessio Placitelli
81cd9b8312 Bug 1136083 - Fix |this._log| being null in tests using Telemetry. r=gfritzsche 2015-02-25 23:54:34 +01:00
Alessio Placitelli
93f8ea689f Bug 1122061 - Move TelemetrySession tests out of test_telemetryPing.js. r=gfritzsche 2015-02-25 23:54:33 +01:00
Alessio Placitelli
3f0538e75f Bug 1123384 - Move Telemetry main ping implementation out of TelemetryPing.jsm. r=gfritzsche 2015-01-22 12:23:00 +01:00
Benjamin Smedberg
dc19b5a2c1 Bug 1115040 - Record experiment branch in crash reports, r=gfritzsche
--HG--
extra : rebase_source : be0ea6c22caec12df9075829adab05bd9de1272d
2014-12-23 12:21:14 -05:00
Gregory Szorc
727d153d18 Bug 1098135 - Convert some rules to misc tier; r=glandium
--HG--
extra : rebase_source : 1a486bf0ff2e5b3be637f3725cd04b6073e074b8
2014-11-13 19:30:21 -08:00
Andrew Halberstadt
d292ee73f1 Bug 1066735 - Remove root b2g and android specific xpcshell manifests, r=chmanchester 2014-10-07 18:18:28 -04:00
Irving Reid
0628f512eb Bug 1059674 - use AsynchShutdown.blocker() for AddonManager provider shutdown; r=unfocused 2014-09-27 16:25:47 -04:00
Wes Kocher
6e187f49f8 Merge m-c to inbound a=merge 2014-09-15 16:41:45 -07:00
Shu-yu Guo
59ccd2fecb Bug 1001090 - Part 5: Fix errors in tests throughout the tree. (r=robcee,gavin) 2014-09-15 16:30:47 -07:00
Georg Fritzsche
f9d2a7e73a Bug 1064470 - Increase the experiments forensic log buffer size again. r=bsmedberg 2014-09-15 15:28:33 +02:00
Benjamin Smedberg
075cfbccc2 Bug 1012924 - Experiments should cancel their XMLHttpRequest on shutdown, and should also set a reasonable timeout on them, r=gfritzsche 2014-09-01 15:26:07 +02:00
Benjamin Smedberg
7b14c475d0 Bug 1054397 - automated test for the racy while setting experiment branches, followup to bug 1052545 and bug 1038174, r=gfritzsche
--HG--
extra : rebase_source : 80df2293e21f7f7a0d13856cd7d609d5e26b83e0
2014-08-28 10:25:05 -04:00
Benjamin Smedberg
0f9810e3be Bug 1012924 diagnostics - increase the log length to 10, r=gfritzsche 2014-08-20 13:07:28 -04:00
Benjamin Smedberg
9b3d66a3f4 Bug 1052545 - Telemetry experiment branches are not saved correctly: we set the _dirty flag correctly, but then don't write the cache, r=gfritzsche
--HG--
extra : rebase_source : 8b531590cb76292b39c83d3928fc0107f1e83424
2014-08-14 16:21:15 -04:00
Georg Fritzsche
60fb551fcf Bug 1048793 - Remove Experiments CertUtils usage as PublicKeyPinningService already provides the same functionality. r=mmc 2014-08-08 14:14:22 +02:00
Georg Fritzsche
b63dd7beb8 Bug 1046910 - TypeError: this._experiments is null at Experiments.Experiments.prototype._getState. r=ttaubert 2014-08-01 14:38:45 +02:00
Nathan Froyd
542214c4df Bug 1044162 - part 1 - make EXTRA_{PP_,}JS_MODULES communicate their installation path; r=mshal
This patch makes EXTRA_{PP_,}JS_MODULES similar in functionality to
TESTING_JS_MODULES: we indicate the path relative to
$(FINAL_TARGET)/modules with an appropriate hierarchy of paths.
2014-07-25 13:40:07 -04:00
Steven MacLeod
aabed44243 Bug 1038174 - Prevent a race condition when writing the experiments cache. r=gfritzsche
We now mark the experiments cache as clean before writing the cache.
This means that any changes to the data between collecting it and when
the actual write executes will properly mark the cache as dirty.

--HG--
extra : rebase_source : 1c8b2dd2365ff2c27e7b545c5347ab178d6818d9
extra : histedit_source : a6b10099af6e8d4c67450e9f4afef403d5b74436
2014-07-24 17:21:03 -04:00
Qeole
295a3b1ef4 Bug 1040761 - Re-add state info for experiments async shutdown blocker from bug 1012924. r=gfritzsche 2014-07-25 13:40:17 +02:00
Alexandre Poirot
7ea4dd517f Bug 1027242 - Blacklist mulet's failing tests + expose 'mulet' to ini files; fix previous bustage on a CLOSED TREE, r=ahal 2014-07-02 15:40:56 -07:00
Qeole
4deb84bd12 Bug 1032970 - Stopping maxStartTime from incorrectly disabling experiments which have already started. r=gfritzsche 2014-07-18 16:53:20 +02:00
Georg Fritzsche
9f477b8fe2 Bug 1012466 - Test cleanups. r=bsmedberg 2014-07-09 15:17:36 +02:00
Georg Fritzsche
3ac251048e Bug 1012466 - Properly synchronize experiments shutdown with the AddonManager by using its shutdown barrier. r=bsmedberg 2014-07-08 17:36:24 +02:00
Gregory Szorc
04d5343419 Bug 1033836 - Rename services-common to services/common; rs=rnewman
The upcoming build system patches don't support hypthens in path names.
Changing this for that reason is kind of silly, but it's the easiest
way. Besides, nothing else uses hyphens in directory names.

--HG--
extra : rebase_source : 42dda2b1f16a3c0bfe17397a70092362e400530f
2014-07-02 16:49:36 -07:00
Benjamin Smedberg
5c436f72de Bug 1031326 - Fix experiment cache upgrade: the cache data is a raw JSObject, not a map. r=gfritzsche 2014-06-27 13:44:21 -04:00
Benjamin Smedberg
ad9fa6b673 Bug 1017806 followup: include the branch data in the public API and therefore in FHR 2014-06-25 18:11:55 -04:00
Benjamin Smedberg
8295abf927 Bug 1017806 - Record and report on optional branches of experiments, so that each experiment doesn't have to re-invent data collection. r=gfritzsche 2014-06-25 15:16:13 -04:00
Felipe Gomes
77c19b1008 Bug 1028612 - Options for jsfilter sandbox unused. r=gfritzsche 2014-06-22 21:25:15 -03:00
Georg Fritzsche
fb8786968f Bug 1021002 - Fix telemetry experiments jsfilter evaluation. r=bsmedberg 2014-06-13 14:50:10 +02:00
Carsten "Tomcat" Book
0f24f14f35 Merge mozilla-central to fx-team 2014-05-16 14:33:31 +02:00
Georg Fritzsche
6a300dfda4 Bug 1005270 - Trigger experiments initialization on opening the addon manager UI. r=bsmedberg 2014-05-16 12:56:25 +02:00
David Rajchenbach-Teller
fdb3455861 Bug 1010289 - Experiments.jsm should now handle its errors. r=bsmedberg 2014-05-15 03:12:00 +02:00
Benjamin Smedberg
fbb11389d3 Bug 1007710 - Add information about the currently-active experiment to the telemetry ping, r=gfritzsche+vladan
--HG--
extra : rebase_source : a6bde09d91162d9a77fa2d121442e2397e6c9526
2014-05-15 09:11:01 -04:00
Benjamin Smedberg
b5e445e96d Bug 1004665 - If the crash reporter is disabled, .annotateCrashReport will throw an exception. Catch it and continue, r=gfritzsche
--HG--
extra : rebase_source : 5a86f06dbca38f9f2d692aeb651789e452b96bc9
2014-05-05 10:31:26 -04:00
Georg Fritzsche
dc09780554 Bug 992258 - Trigger a refresh of the experiments view in the addon manager when experiments change. r=irving 2014-05-06 12:18:10 +02:00
Georg Fritzsche
58e667b67b Bug 1001787 - Set the endDate on historic experiments early enough. r=bsmedberg
We expect all historic experiments to have a valid endDate. Setting an experiment to disabled and then calling into reconcileAddonState can trigger calls into Experiments.getExperiments() via the AddonManager, so we need to set the endDate before that.
2014-04-29 18:21:06 +02:00
Georg Fritzsche
1157d26b10 Bug 1001787 - Propagate changes for foreign experiment addon uninstalls so we properly save the experiments state. r=bsmedberg 2014-04-29 18:20:56 +02:00
Georg Fritzsche
35ec4fcf52 Bug 1001787 - Add test for foreign experiment addon uninstalls keeping the state properly over restarts. r=bsmedberg 2014-04-29 18:20:45 +02:00
Georg Fritzsche
d8ddb7641c Bug 1000719 - Add tracing on logging experiment rejections and telemetry tests. r=bsmedberg 2014-04-28 16:11:26 +02:00
Georg Fritzsche
6f532852a9 Bug 986677 - Add time left and activity state to experiments in the Addon Manager UI. r=unfocused 2014-04-23 14:34:49 +02:00
Georg Fritzsche
d8177bc07c Bug 990111 - Add-on provider for historical experiments. r=irving 2014-04-23 14:34:48 +02:00
Benjamin Smedberg
853bdc2773 Bug 995027 logging - add traces to figure out whether uninit was called and where it got stuck, r=gfritzsche
--HG--
extra : rebase_source : 6c2e5dcce364bbce746a11b4e8841283656162c2
2014-04-17 10:52:23 -04:00
Georg Fritzsche
a5cb1d787d Bug 989137 - Part 18: Fix experiments uninit behavior. r=bsmedberg 2014-04-17 15:47:37 +02:00
Georg Fritzsche
45a81a1f65 Bug 989137 - Part 15: Return a promise from Experiments.init(). r=gfritzsche 2014-04-17 15:47:37 +02:00
Georg Fritzsche
473a9cbc89 Bug 989137 - Part 14: Rename functions for associating with Add-on Manager. r=gfritzsche 2014-04-17 15:47:37 +02:00
Georg Fritzsche
fc857b817b Bug 989137 - Part 13: Ability to ignore hashes of downloaded experiments. r=gfritzsche 2014-04-17 15:47:36 +02:00
Georg Fritzsche
e51bb9befc Bug 989137 - Part 12: Refactor experiment and add-on state management. r=gfritzsche 2014-04-17 15:47:36 +02:00
Georg Fritzsche
c143ccc852 Bug 989137 - Backout re-ordered patches that conflict with a known-good patch stack: 1ab6bbd62c76, 5c3a195a107e, 73da7e611e92, 2c1a0b0551fb. r=me 2014-04-17 15:47:36 +02:00
Gregory Szorc
9e7c752bea Bug 989137 - Part 14: Return a promise from Experiments.init(); r=gfritzsche
Upcoming tests will need to wait on init() to finish before running. We
now return a promise so these tests don't have to look at internal
variables.

--HG--
extra : rebase_source : 487645efe419fb3fa3371f85a81e8f3e1ccd9012
extra : amend_source : 3d6bb785e0ecdabcbff1e5bc62ee7dc56cbb7244
extra : histedit_source : 8d12f7e5c47995a408509a85a527bc86f9a76ccb
2014-04-10 13:29:02 -07:00
Gregory Szorc
9712b346d6 Bug 989137 - Part 13: Rename functions for associating with Add-on Manager; r=gfritzsche
The previous experiment feature expands the scope of these functions. A
rename was in order.

--HG--
extra : rebase_source : 054d7a440e3e15436ff7fbcbc4f91b28dd4fc9fd
2014-04-10 13:27:36 -07:00
Gregory Szorc
6ab6b755f8 Bug 989137 - Part 12: Ability to ignore hashes of downloaded experiments; r=gfritzsche
We normally validate hashes of XPIs as part of installing experiments.
While a useful security feature, this patch makes that optional. This in
turn makes automated and manual testing easier.

--HG--
extra : rebase_source : 292653411391843fad3f62d0bee01e11779313b6
2014-04-10 13:18:19 -07:00
Georg Fritzsche
e5fe9cdf14 Bug 993084 - Fix experiments health report provider test. r=bsmedberg 2014-04-15 18:12:26 +02:00
Georg Fritzsche
62be24a2fb Bug 993084 - Consolidate pref name constants for experiment tests. r=bsmedberg 2014-04-15 18:12:26 +02:00
Georg Fritzsche
ad820c03ef Bug 993084 - Delay initialization of telemetry experiments if there is no active experiment. r=bsmedberg
To sync experiment state with the addon manager, we need to start it early when there is a
active experiment.
However, initializing the telemetry experiments system too early can lead to performance
regressions, so we delay the initialization if we don't have an active experiment.
2014-04-15 18:12:26 +02:00
Georg Fritzsche
acbb3e6fd1 Bug 994727 - Telemetry experiments: Fix disabling the feature. r=bsmedberg 2014-04-11 16:29:29 +02:00
Georg Fritzsche
31ff5e9a1c Bug 994727 - Telemetry experiments: Test coverage for disabling the feature. r=bsmedberg 2014-04-11 16:29:29 +02:00
Georg Fritzsche
c825d4572d Bug 993084 - Don't load experiments module if the feature is preffed off. r=bsmedberg 2014-04-10 16:56:25 +02:00
Gregory Szorc
404a6147ae Bug 989137 - Part 11: Make service initialization and uninitialization more robust; r=gfritzsche
Subsequent patches were running into race conditions and bugs related to
Experiments instance initialization state. This patch plugs the
necessary holes in initialization state management to unblock work.

The fixes are far from robust. There are still race conditions and bugs.
They should probably be addressed later.

--HG--
extra : rebase_source : 5f0c7fa1f554d09a21b1452506884dc771cb829d
2014-04-07 14:11:31 -07:00
Benjamin Smedberg
5fea1d7db6 Bug 993084 attempt - make CommonUtils and Metrics imports lazy, since they aren't going to be needed anywhere near startup or when experiments is disabled, r=gps 2014-04-08 17:18:17 -04:00
Gregory Szorc
257b8e331e Bug 989137 - Part 10: Add a testing-only JSM for common AddonManager operations; r=Unfocused, r=gfritzsche
There is a lot of boilerplate testing code that performs common
AddonManager operations. Some common operations used for testing
Experiments have been refactored into a testing-only JSM that lives as
part of the Add-ons Manager.

--HG--
extra : rebase_source : f18cf54c7af6d390ed4437bd0ed0eb4beea76b0d
2014-04-04 15:58:29 -07:00
Gregory Szorc
618fcdf16e Bug 989137 - Part 9: Ensure add-ons are enabled when they should be; r=Unfocused, r=gfritzsche
Experiment add-ons are disabled by default in the Addon Manager. This
patch will manually enable them if necessary.

--HG--
extra : rebase_source : 2271372b232b5d85af32a4a96f2e3beb867cabf9
2014-04-04 15:58:27 -07:00
Gregory Szorc
374f95c48e Bug 989137 - Part 8: Prevent unknown experiments from being installed; r=Unfocused
The experiments service insists on being in control of experiments.
Before, it wasn't being as assertive as it needed to be: other browser
components could install experiments behind its back. This patch
reasserts the experiments service as king of experiments add-on
management.

--HG--
extra : rebase_source : 91439622e47419fae7675d83890e83cf37db453b
2014-04-04 15:58:26 -07:00
Phil Ringnalda
8d395ba254 Backed out 3 changesets (bug 989137) for a sudden influx of xpcshell failures
CLOSED TREE

Backed out changeset 831a3ccce100 (bug 989137)
Backed out changeset d3053c4e4c51 (bug 989137)
Backed out changeset 7e410c1d61e6 (bug 989137)
2014-04-05 20:30:24 -07:00
Gregory Szorc
464ae0d5b4 Bug 989137 - Part 10: Add a testing-only JSM for common AddonManager operations; r=Unfocused, r=gfritzsche
There is a lot of boilerplate testing code that performs common
AddonManager operations. Some common operations used for testing
Experiments have been refactored into a testing-only JSM that lives as
part of the Add-ons Manager.

--HG--
extra : rebase_source : 7b595e2a93637a1b2746e0182fbbe897c93fb6d9
2014-04-04 15:58:29 -07:00
Gregory Szorc
a87eaf884a Bug 989137 - Part 9: Ensure add-ons are enabled when they should be; r=Unfocused, r=gfritzsche
Experiment add-ons are disabled by default in the Addon Manager. This
patch will manually enable them if necessary.

--HG--
extra : rebase_source : be3d7c7489fa851dc421b5bae05978fa8ba17539
2014-04-04 15:58:27 -07:00
Gregory Szorc
8539252e0c Bug 989137 - Part 8: Prevent unknown experiments from being installed; r=Unfocused
The experiments service insists on being in control of experiments.
Before, it wasn't being as assertive as it needed to be: other browser
components could install experiments behind its back. This patch
reasserts the experiments service as king of experiments add-on
management.

--HG--
extra : rebase_source : 6d9b94f91865ef3c6929bc34cd3e7bb57e112d14
2014-04-04 15:58:26 -07:00
Benjamin Smedberg
96822a64e4 Bug 992208 - Add Telemetry Experiments to the package so that they are actually used. Also a basic test that the service exists and can be created. r=gfritzsche 2014-04-04 13:03:29 -04:00
Benjamin Smedberg
f00c99bc43 Bug 985089 followup: fix mis-spelling of isNaN, r=gfritzsche 2014-04-04 09:16:58 -04:00
Benjamin Smedberg
efdee4270b Bug 986582 - Get rid of the toolkit.telemetry.enabledPreRelease pref and make the toolkit.telemetry.enabled pref do the right thing for beta users who are testing a final release build, r=rnewman
--HG--
extra : rebase_source : 43f70e2c1c3207f37ba0789245958cb0c34187f6
2014-04-03 14:55:42 -04:00
Gregory Szorc
1a6b40414f Bug 989137 - Part 7: Remove unncessary content from test experiments; r=Unfocused
The test experiments had unnecessary content in their install.rdf files.

<targetApplication> does not apply to experiment types and has been
removed.

The bootstrap setting is also implied and has been removed.

--HG--
extra : rebase_source : 52c297b17244b2cf160bc41018897ecc3fb0eabd
2014-03-30 11:06:57 -07:00
Gregory Szorc
85b0cb2485 Bug 989137 - Part 6: Create experiment XPIs during the build; r=bsmedberg
Instead of checking in binary .xpi files, we now have the source files
under source control and generate the .xpi as part of the build.

The build system mechanism to generate the .xpi files is hacky. But it's
similar to what existing processes use. Bug 988938 will eventually make
this more sane.

Since the produced .xpi files no longer have stable content, the SHA-1s
of the experiments are now calculated at test run time.

--HG--
extra : rebase_source : 85ae5a6c480a5add173b639f06b3ee404c5c6686
2014-03-29 18:10:11 -07:00
Gregory Szorc
d5f21696c4 Bug 989137 - Part 5: Prefix each log message with the instance of the object; r=gfritzsche
We now maintain per-type counts/IDs of each Policy, Experiments, and
ExperimentEntry. The log events for each type are prefixed with the
count/ID so one can easily attribute events to specific instances.

--HG--
extra : rebase_source : 4f1fcc38e5f52ff38b90f9ce71e332492983ff37
2014-03-28 13:04:09 -07:00
Gregory Szorc
6752ec750c Bug 989137 - Part 4: Use a prefixing logger for Experiments logging; r=gfritzsche
Logging in the Experiments module were using a common pattern of
prefixing all messages with the type. We move this prefixing into
a prefixed logger.

--HG--
extra : rebase_source : 213a99e93a3569a7f2ab3d72fb37dc0c538e5c97
extra : source : 96def94c8fb705e5ad8af5a1393492a28ea47d16
2014-03-28 12:57:43 -07:00
Gregory Szorc
f3005fef10 Bug 989137 - Part 2: Don't use a global logger; r=gfritzsche
As part of debugging subsequent patches, I ran into issues debugging the
interaction between multiple Experiments instances. To get to the bottom
of the problem, I had to make some changes to the logging framework.
This is the first patch in a sub-series dealing with logging.

This patch stops relying on the global logger. Subsequent patches will
make the logging output aid debugging.

--HG--
extra : rebase_source : 40b34a1444ff3fb70a9da7cf242ee522d6ec07ea
extra : source : 61877a5f15aa01dec05fe1882eae6ad9f18f81a0
2014-03-28 11:20:31 -07:00
Gregory Szorc
4d197467ef Bug 989137 - Part 1: Uninstall unknown experiments; r=Unfocused
Before this patch, experiment add-ons may have existed in the Addons
Manager without the Experiments service knowing about them. This detects
these unknown add-ons and uninstalls them. See the in-line comment on
the rationale behind this decision.

The added unit test fails without the Experiments.jsm change.

--HG--
extra : rebase_source : bb0d0d5d77c7ae562f76e6c647eea25e6a06d99a
2014-03-26 22:20:23 -07:00
Gregory Szorc
c26a532a02 Bug 985084 - Experiment add-ons should be disabled by default; r=Unfocused
Experiment add-ons are now disabled by default on application load. It
is up to the Experiments Manager to enable them.

This means that experiments may not be able to reliably collect data or
modify behavior close to application startup. (There is a window between
when the Addon Manager initializes and when the Experiments Manager
initializes.) This window is acceptable for the initial version of the
experiments feature.

The Experiments Manager doesn't currently enable experiments on startup.
This will be addressed in a subsequent patch. Its tests do not regress
(indicating a lack of test coverage), so no harm no foul.

--HG--
extra : rebase_source : 00a55146576f490200a6148bd5516f84def9879c
extra : source : bd901384b973c7ff581fe24a3012f0191b8bbe67
2014-03-21 16:05:29 -07:00
Gregory Szorc
f1b0e7f95e Backed out changeset 4834a3833639 and c580afddd1cb (bug 985084 and bug 97500)
--HG--
extra : histedit_source : c580afddd1cb90bd3cccbc7abc8082132ffe2a3c%2C4371c5775a71d493e82f193b1cf15efd44566645
2014-03-28 21:45:10 -07:00
Gregory Szorc
c427405c3c Bug 985084 - Experiment add-ons should be disabled by default; r=Unfocused
Experiment add-ons are now disabled by default on application load. It
is up to the Experiments Manager to enable them.

This means that experiments may not be able to reliably collect data or
modify behavior close to application startup. (There is a window between
when the Addon Manager initializes and when the Experiments Manager
initializes.) This window is acceptable for the initial version of the
experiments feature.

The Experiments Manager doesn't currently enable experiments on startup.
This will be addressed in a subsequent patch. Its tests do not regress
(indicating a lack of test coverage), so no harm no foul.

--HG--
extra : rebase_source : 3c550090e3480127dc679cc5247f249ee822e76f
extra : amend_source : 9b5349b507c73b4713ec447e4f1a6cb841c11c56
extra : source : 0d72fd2fbd1d091c27fa4a0a9c1944282eaa9ac5
2014-03-21 16:05:29 -07:00
Gregory Szorc
d5049daf81 Bug 975000 - Disable updating and compatibility checking for Experiments; r=Unfocused
Experiment add-ons are installed and updated via the Experiments Manager
service. With this change, the Add-ons Manager lets experiment add-ons
play by their own rules without interference.

--HG--
extra : rebase_source : 4a7c30f8ce36a64f91f9fee49da9061eda568b99
2014-03-28 20:17:04 +01:00
Georg Fritzsche
cd23969961 Bug 986040 - Telemetry experiments: Assure that no experiment addon is running yet before starting an experiment. r=Unfocused
--HG--
extra : rebase_source : 55be48f0b9cffe978c22baa8260b161f2cbc0562
2014-03-27 14:26:59 -07:00
Georg Fritzsche
b4ee0d9c48 Bug 973992 - Telemetry experiments: Make the experiments code use the new experiments addon type. r=Unfocused
--HG--
extra : rebase_source : 54de4767390441a895fca148c2c79483f22c1366
2014-03-27 14:25:04 -07:00
Georg Fritzsche
7a3a267c79 Bug 986261 - Telemetry experiments unit tests hang when they fail. r=felipe 2014-03-27 14:55:36 +01:00
Georg Fritzsche
470bf55a83 Bug 983231 - Telemetry experiments: test manifest condition evaluation. r=felipe 2014-03-26 16:35:59 +01:00
Benjamin Smedberg
fddbd7ddcf Bug 988710 - Task.spawn can launch synchronously, which leads to a race setting and clearing this._mainTask. Move that into the .then() clause of _run. Also fix up some logging and FHR issues, r=gfritzsche
--HG--
extra : rebase_source : 44047a113eb6702f3d7a6716ad044f0b5c06bd47
2014-03-27 09:30:25 -04:00
Georg Fritzsche
0d7d9be763 Bug 987207 - Telemetry experiments - Assure proper saving & loading from the cache. r=felipe 2014-03-25 17:50:24 +01:00
Benjamin Smedberg
db6b52598a Bug 987225 - Combine the various tasks in Experiments.jsm to a single serial task. r=gfritzsche (delegated from felipe). Also fixes:
* no need to pass an addon/experiment ID to .disableExperiment()
* fix multiple-logging when multiple Experiments() objects are created as in tests
* ensures that all dirty writes actually get written
2014-03-25 13:50:34 -04:00