Priveleged extensions must use new style imports as of Nightly 67 (2019-02-07)
Categories
(Shield :: Shield Study, defect)
Tracking
(firefox65 unaffected, firefox66 unaffected, firefox67+ fixed)
Tracking | Status | |
---|---|---|
firefox65 | --- | unaffected |
firefox66 | --- | unaffected |
firefox67 | + | fixed |
People
(Reporter: cmuresan, Assigned: mythmon)
References
Details
(Keywords: regression)
Attachments
(1 file)
29.72 KB,
image/png
|
Details |
[Affected versions]:
- Firefox Nightly 67.0a1, Build ID 20190207214423
[Affected Platforms]:
- All Windows
- All Mac
- All Linux
[Prerequisites]:
- Create the "xpinstall.signatures.dev-root" boolean pref and set it to "true"
- Download the extension from https://bugzilla.mozilla.org/show_bug.cgi?id=1522598#c15
[Steps to reproduce]:
- Start the browser and navigate to about:addons.
- Click the Extensions tab.
- Install the extension from prerequisites.
- Observe the behavior.
- Click the wrench and screwdriver icon from the Browser Toolbar and observe the behavior.
[Expected results]:
- Step 4: A new tab is opened with the extension's onboarding page.
- Step 5: A doorhanger is displayed.
[Actual results]:
- Step 4 & Step 5: Nothing happens.
[Notes]:
- The issue is also reproducible with the extension from https://bugzilla.mozilla.org/show_bug.cgi?id=1522525#c29
- Attached a screenshot of the Browser Console after installing the addon
[Regression range]:
8:51.98 INFO: No more inbound revisions, bisection finished.
8:51.98 INFO: Last good revision: d1b523e67100557e4adceabe8ca6ea434f6cb5e7
8:51.99 INFO: First bad revision: 6b56696d713a7f7858f16235e37baa8307e73b49
8:51.99 INFO: Pushlog:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=d1b523e67100557e4adceabe8ca6ea434f6cb5e7&tochange=6b56696d713a7f7858f16235e37baa8307e73b49
Reporter | ||
Comment 1•5 years ago
|
||
From the pushlog it looks like bug 1514594 or bug 1519596 has caused this.
@Kris, can you please take a look at this? The two extensions in question are addons that are used in Shield studies.
Comment 2•5 years ago
|
||
The shield study has "privileged" components which are allowed access into Chrome, and hence is more susceptible to changes in core than normal WebExtensions.
I just looked at privileged/study/api.js
from the extension in bug 1522525 comment 29.
I found these two lines:
ChromeUtils.import("resource://gre/modules/ExtensionCommon.jsm");
ChromeUtils.import("resource://gre/modules/ExtensionUtils.jsm");
They won't work any more post bug 1514594. They need to be of the style:
let {something} = ChromeUtils.import("resource://gre/modules/ExtensionCommon.jsm");
let {something2} = ChromeUtils.import("resource://gre/modules/ExtensionUtils.jsm");
There may be more cases, but they were just two I saw, so I think this is more likely an issue with the Sheild Study rather than the WebExtension core.
Comment 3•5 years ago
|
||
Adding needinfo for Michael to check he sees this.
Comment 4•5 years ago
|
||
Tracking for 67 as it may affect the results of multiple Shield studies.
Assignee | ||
Comment 5•5 years ago
|
||
Thanks for the heads up Pascal. I'll keep an eye out for other issues like this in add-on studies that are launching soon.
Comment 6•5 years ago
|
||
Michael, since this is tracking 67, can you add an assignee who can look into it per Mark's suggestions in comment 2?
Assignee | ||
Comment 7•5 years ago
|
||
This isn't a bug in Firefox, it is a bug in the shield study extensions. I'll make sure that all the extensions in flight that are targeting 67 make the needed changes here.
:standard8, do you know if the new style syntax work pre-67 as well? If it does, that will make extension compatibility a lot easier. If not, do you have another idea we could use to make extensions compatible with both ways?
Comment 8•5 years ago
|
||
(In reply to Michael Cooper [:mythmon] from comment #7)
:standard8, do you know if the new style syntax work pre-67 as well? If it does, that will make extension compatibility a lot easier. If not, do you have another idea we could use to make extensions compatible with both ways?
I think you might be able to do:
let {something} = ChromeUtils.import("resource://gre/modules/ExtensionCommon.jsm", null);
That would work in at least recentish version prior to 67.
Assignee | ||
Updated•5 years ago
|
Comment 9•5 years ago
|
||
Michael, could you give us a status update on the affected shield study extensions? Have they all been audited and updated yet? Thanks
Assignee | ||
Comment 10•5 years ago
|
||
Since all study extensions go through QA and Experimenter, I've made a note to check during the Experimenter ingress process that all studies targeting 67 have been QAed specifically on 67. Given this, combined with the usual testing process, I don't think there is anything else to do in this bug.
Comment 11•5 years ago
|
||
Marking as fixed per comment 10.
Updated•5 years ago
|
Comment 12•9 months ago
|
||
Marking as Verified as the addon is no longer available.
Description
•