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
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
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
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
* 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