Closed Bug 1748313 Opened 2 years ago Closed 1 year ago

add proxy webidl binding

Categories

(WebExtensions :: General, task, P3)

task
Points:
2

Tracking

(firefox111 fixed)

RESOLVED FIXED
111 Branch
Tracking Status
firefox111 --- fixed

People

(Reporter: mixedpuppy, Assigned: rpl)

References

(Blocks 1 open bug)

Details

(Whiteboard: [addons-jira])

Attachments

(5 files)

No description provided.
Severity: -- → N/A

This patch introduces WebIDL bindings for the proxy API namespace and wires it up into
the ExtensionBrowser.webidl.

The proxy.settings property is not yet implemented in this patch and introduced in a
later patch, after the one that defines the ExtensionSetting class, which is meant
to be reused for the multiple APIs that provides a property of type Setting
(which besides proxy also includes: browserSettings, browserSettings.colorManagement
and privacy), similarly to how ExtensionEventManager class provides a reusable
abstraction reused across multiple APIs.

Depends on D167594

Assignee: nobody → lgreco
Status: NEW → ASSIGNED

This patch introduces some tweaks to the method exposed by Schemas to validate the API request parameters, in particular
to account for nested APINamespace like "proxy.settings" and "browserSettings.colorManagement".

Depends on D167596

Attachment #9313656 - Attachment description: Bug 1748313 - ExtensionSettings webidl api bindings r=willdurand! → Bug 1748313 - ExtensionSetting webidl api bindings r=willdurand!
Pushed by luca.greco@alcacoop.it:
https://hg.mozilla.org/integration/autoland/rev/77434405dd7f
WebIDL bindings for the 'proxy' WebExtensions API namespace. r=willdurand,webidl,smaug
https://hg.mozilla.org/integration/autoland/rev/0ef261e77011
ExtensionSetting webidl api bindings r=willdurand,webidl,smaug
https://hg.mozilla.org/integration/autoland/rev/df56f2f2eefc
Account for nested WebExtensions APINamespace to support parameter validation request originated from ExtensionSettings. r=willdurand
https://hg.mozilla.org/integration/autoland/rev/9b6ffabf51fc
Add support for proxy.setting in the WebExtensions WebIDL bindings for the proxy API. r=willdurand,webidl,smaug

(In reply to Cosmin Sabou [:CosminS] from comment #6)

Backed out for causing fuzzing build bustages on NavigatorBinding.cpp

Push with failures: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&resultStatus=success%2Cpending%2Crunning%2Ctestfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel&fromchange=9b6ffabf51fcbcc28d41f8053b0d0153d1847989&tochange=74b605536c97ad98a8919aea6664f81eafd88873&searchStr=fuzzing%2Cbuild&selectedTaskRun=G9Rcu-BdSeyDATRqUqSedQ.0

Failure log: https://treeherder.mozilla.org/logviewer?job_id=404148327&repo=autoland

Backout link: https://hg.mozilla.org/integration/autoland/rev/74b605536c97ad98a8919aea6664f81eafd88873

Those looks exactly the same unified build errors that are meant to be fixed by D167599, locally I was only hitting it with the additional patches attached in Bug 1748293, but it is not that surprising that it may have been hit in this set of patches because some other changes landed in the meantime (either on central or autoland) have had the same side-effects on the unified builds chunks that Bug 1748293 was hitting for me locally.

I'm going to move D167599 to this set of patches and rebase all the patches attached to this bug to be build on top of it, and then push it to autoland again.

Flags: needinfo?(lgreco)

Push to try for the update stack of patches (with the fixes for the unified build moved to the top of the stack of patches attached to this bug):

Attachment #9315359 - Attachment description: Bug 1748313 - Fix unified build failures hit after adding webidl bindings for browserSettings and browserSettings.colorManagement. r?asuth!,willdurand! → Bug 1748313 - Fix unified build failures hit after adding webidl bindings for the proxy WebExtensions API namespace. r?asuth!,willdurand!

(In reply to Luca Greco [:rpl] [:luca] [:lgreco] from comment #9)

Push to try for the update stack of patches (with the fixes for the unified build moved to the top of the stack of patches attached to this bug):

The push to try caught another build error, this time in the hybrid build job:

I was unable to hit the same build errors locally on Linux, but based on the two build error messages we got (ServiceWorkerUtils.cpp(47,21): error: no member named 'dom_serviceWorkers_enabled' in namespace 'mozilla::StaticPrefs' and ServiceWorkerUtils.cpp(72,23): error: no member named 'dom_serviceWorkers_testing_enabled' in namespace 'mozilla::StaticPrefs') adding an explicit #include "mozilla/StaticPrefs_dom.h" should be fixing both.

I confirmed with :asuth (over a quick slack chat) that adding the additional include is a reasonable fix for those build errors and so I've update the patch and I'm currently waiting for a confirmation that fixing those two build errors doesn't reveal some additional one that would also need to be fixed before pushing again to autoland from the following new push to try:

Pushed by luca.greco@alcacoop.it:
https://hg.mozilla.org/integration/autoland/rev/e3accadd87ec
Fix unified build failures hit after adding webidl bindings for the proxy WebExtensions API namespace. r=asuth,willdurand
https://hg.mozilla.org/integration/autoland/rev/944f442ee8e6
WebIDL bindings for the 'proxy' WebExtensions API namespace. r=willdurand,webidl,smaug
https://hg.mozilla.org/integration/autoland/rev/4ffa0f3ed09b
ExtensionSetting webidl api bindings r=willdurand,webidl,smaug
https://hg.mozilla.org/integration/autoland/rev/b4cf755a289d
Account for nested WebExtensions APINamespace to support parameter validation request originated from ExtensionSettings. r=willdurand
https://hg.mozilla.org/integration/autoland/rev/66a3d513fcac
Add support for proxy.setting in the WebExtensions WebIDL bindings for the proxy API. r=willdurand,webidl,smaug
Duplicate of this bug: 1724730
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: