Commit Graph

36 Commits

Author SHA1 Message Date
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
Benjamin Smedberg
beb8e7246c Bug 977708 - Annotate crash reports with the current experiment, r=felipe 2014-03-24 15:38:13 -04:00
Georg Fritzsche
6dc6f7ec05 Bug 983360 - Telemetry experiments: add monitoring data to Telemetry payload. r=bsmedberg 2014-03-24 09:58:57 +01:00
Georg Fritzsche
863af40e1e Bug 985670 - Telemetry experiments: Decouple experiment and addon ids. r=felipe 2014-03-24 09:58:57 +01:00
Georg Fritzsche
daf3305058 Bug 985670 - Telemetry experiments: Don't schedule incorrect timer when there is no pending experiment. r=felipe 2014-03-24 09:58:57 +01:00
Georg Fritzsche
7d899024ae Bug 984387 - Telemetry experiments: test coverage for disabling and removal of experiments via manifest. r=felipe 2014-03-24 09:58:56 +01:00
Gregory Szorc
beddc2399c Bug 974024 - Add FHR recording of Telemetry Experiments activity; r=bsmedberg
--HG--
extra : rebase_source : 1e875e53da49c69194ee740898ff943d1801d1cf
2014-03-20 14:16:00 -07:00
Benjamin Smedberg
5d124d547a Bug 985682 - Experiment IDs aren't loaded correctly from the cache. Tests will be separate, r=gfritzsche 2014-03-20 11:19:19 -04:00
Benjamin Smedberg
d35ee16d63 Bug 985089 - Allow QA to set a pref to control experiment sampling values, r=felipe 2014-03-20 11:19:19 -04:00
Gregory Szorc
5d41a56dde Bug 973997 - Define and document Experiments Manifests; r=bsmedberg
--HG--
extra : rebase_source : c26d6dc90b921c8b29a89e1c9a7b1bffa5d5adfb
extra : amend_source : ea14cba512352bac72b67c7abb1194e8ed9946e7
2014-02-26 16:46:26 -08:00
Benjamin Smedberg
0c8a4684ea Bug 984879 - Experiment manager shutdown, r=felipe 2014-03-18 22:52:30 +01:00
Georg Fritzsche
e8c01ebeeb Bug 984014 - Telemetry experiments - Test experiment update. r=felipe 2014-03-18 22:52:30 +01:00
Georg Fritzsche
e017e11441 Bug 979474 - Disable certificate checks for telemetry experiment checks. r=felipe 2014-03-18 22:52:30 +01:00
Benjamin Smedberg
e4e97d3ce7 Bug 979474 - Pin the telemetry experiments manifest, r=cviecco 2014-03-18 22:52:29 +01:00
Benjamin Smedberg
34bad224eb Bug 983226 - Set up jsfilter with proper healthreport/telemetry payloads, r=felipe 2014-03-18 22:52:29 +01:00
Georg Fritzsche
aa0851d944 Bug 974009 - Telemetry experiments - Tests 4 - Experiments API. r=felipe 2014-03-18 22:52:29 +01:00
Georg Fritzsche
5725a5cc77 Bug 974009 - Telemetry experiments - Tests 3 - Experiment activation. r=felipe 2014-03-18 22:52:29 +01:00
Georg Fritzsche
e297deea6d Bug 974009 - Telemetry experiments - Tests 2 - Experiment activation. r=felipe 2014-03-18 22:52:29 +01:00
Georg Fritzsche
8a71ce3847 Bug 974009 - Telemetry experiments - Tests 1 - Condition evaluation. r=felipe 2014-03-18 22:52:28 +01:00
Georg Fritzsche
c06192b051 Bug 974009 - Telemetry experiments: test experiment conditions and enable experiments. r=felipe,unfocused 2014-03-18 22:52:28 +01:00