Closed Bug 1451519 Opened 7 years ago Closed 6 years ago

Convert specialpowers from a bootstrapped extension to a webextension

Categories

(Testing :: General, enhancement, P3)

Version 3
enhancement

Tracking

(firefox63 fixed)

RESOLVED FIXED
mozilla63
Tracking Status
firefox63 --- fixed

People

(Reporter: aswan, Assigned: aswan)

References

Details

Attachments

(1 file)

This will entail using a bundled WebExtension experiment
WebExtension experiment cannot currently provide APIs to extension content scripts so our choices here are: 1. Do a quick-and-dirty job to wrap all the current specialpowers code in an experimental API 2. Extend experiments to be able to provide content script APIs and then rewrite a bunch of the specialpowers injection code to use webextension content scripts. Kris, with the amount of other stuff in front of us right now, I'm inclined to do option 1 right now. That doesn't prevent us from doing option 2 some day. Any objection?
Flags: needinfo?(kmaglione+bmo)
Priority: -- → P3
Attachment #8988603 - Flags: review?(kmaglione+bmo)
Comment on attachment 8988603 [details] Bug 1451519 Convert specialpowers to a webextension https://reviewboard.mozilla.org/r/253840/#review260598 \o/ ::: testing/specialpowers/api.js:24 (Diff revision 2) > - observer.SpecialPowersObserverFactory > - ); > + > + ChromeUtils.import("resource://specialpowers/SpecialPowersObserver.jsm"); > + this.observer = new SpecialPowersObserver(); > + this.observer.init(); > > - spObserver = new observer.SpecialPowersObserver(); > + this.extension.callOnClose(this); Can just replace `close` with `onShutdown` and get rid of this.
Attachment #8988603 - Flags: review?(kmaglione+bmo) → review+
Assignee: nobody → aswan
Comment on attachment 8988603 [details] Bug 1451519 Convert specialpowers to a webextension https://reviewboard.mozilla.org/r/253840/#review260690 Code analysis found 1 defect in this patch: - 1 defect found by mozlint You can run this analysis locally with: - `./mach lint path/to/file` (JS/Python) If you see a problem in this automated review, please report it here: http://bit.ly/2y9N9Vx ::: browser/components/extensions/test/browser/browser_ext_autocompletepopup.js:6 (Diff revision 3) > /* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */ > /* vim: set sts=2 sw=2 et tw=80: */ > "use strict"; > > add_task(async function testAutocompletePopup() { > + debugger; Error: Unexpected 'debugger' statement. [eslint: no-debugger]
Pushed by aswan@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/722113b8204d Convert specialpowers to a webextension r=kmag
Backed out changeset 722113b8204d (bug 1451519) for browser-chrome failures at browser/base/content/test/performance/browser_startup_content.js Backout: https://hg.mozilla.org/integration/autoland/rev/a9fc2e1230218572f529ce51b44008f1efa40928 Failure push: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=722113b8204d8abfe8abfba74df5689ac1c31029 Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=185629013&repo=autoland&lineNumber=2012 11:23:09 INFO - checking window state 11:23:09 INFO - TEST-START | browser/base/content/test/performance/browser_startup_content.js 11:23:09 INFO - Console message: [JavaScript Warning: "Use of nsIFile in content process is deprecated." {file: "resource://gre/modules/FileUtils.jsm" line: 170}] 11:23:09 INFO - GECKO(826) | 2018-06-29 11:23:09.920 plugin-container[831:8656] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0x9047, name = 'com.apple.tsm.portname' 11:23:09 INFO - GECKO(826) | See /usr/include/servers/bootstrap_defs.h for the error codes. 11:23:09 INFO - Console message: [JavaScript Warning: "Use of nsIFile in content process is deprecated." {file: "resource://gre/modules/FileUtils.jsm" line: 170}] 11:23:09 INFO - GECKO(826) | 2018-06-29 11:23:09.980 plugin-container[832:8699] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0x935b, name = 'com.apple.tsm.portname' 11:23:09 INFO - GECKO(826) | See /usr/include/servers/bootstrap_defs.h for the error codes. 11:23:10 INFO - TEST-PASS | browser/base/content/test/performance/browser_startup_content.js | should have no unexpected components loaded on content process startup - 11:23:10 INFO - TEST-PASS | browser/base/content/test/performance/browser_startup_content.js | all components whitelist entries should have been used - 11:23:10 INFO - TEST-INFO | started process screencapture 11:23:10 INFO - TEST-INFO | screencapture: exit 0 11:23:10 INFO - Buffered messages logged at 11:23:09 11:23:10 INFO - Entering test bound 11:23:10 INFO - Buffered messages finished 11:23:10 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | should have no unexpected modules loaded on content process startup - Got 3, expected 0 11:23:10 INFO - Stack trace: 11:23:10 INFO - chrome://mochikit/content/browser-test.js:test_is:1300 11:23:10 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/browser_startup_content.js:null:148 11:23:10 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1098 11:23:10 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1089 11:23:10 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:991 11:23:10 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795 11:23:10 INFO - Not taking screenshot here: see the one that was previously logged 11:23:10 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | Unexpected modules loaded during content process startup: resource://specialpowers/MockFilePicker.jsm - 11:23:10 INFO - Stack trace: 11:23:10 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/browser_startup_content.js:null:152 11:23:10 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1098 11:23:10 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1089 11:23:10 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:991 11:23:10 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795 11:23:10 INFO - Stack that loaded resource://specialpowers/MockFilePicker.jsm: 11:23:10 INFO - 11:23:10 INFO - 0 <TOP LEVEL> ["resource://specialpowers/specialpowersAPI.js":15] 11:23:10 INFO - 11:23:10 INFO - Not taking screenshot here: see the one that was previously logged 11:23:10 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | Unexpected modules loaded during content process startup: resource://specialpowers/MockPermissionPrompt.jsm - 11:23:10 INFO - Stack trace:
Flags: needinfo?(aswan)
rebased, updated, re-landed
Flags: needinfo?(aswan)
Pushed by aswan@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/c1335d07ea34 Convert specialpowers to a webextension r=kmag
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
Flags: needinfo?(kmaglione+bmo)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: