mdn / browser-compat-data

This repository contains compatibility data for Web technologies as displayed on MDN
https://developer.mozilla.org
Creative Commons Zero v1.0 Universal
4.99k stars 2k forks source link

webextensions.api.proxy.settings - Missing other browser data #20979

Closed erosman closed 8 months ago

erosman commented 1 year ago

What type of issue is this?

Incorrect support data (example: BrowserX says "86" but support was added in "40")

What information was incorrect, unhelpful, or incomplete?

Missing other browser data

What browsers does this problem apply to, if applicable?

No response

What did you expect to see?

Other browser data added

[!Note] Please note that while the API is supported by other browsers, there are differences in their details & implementation.

MDN:

Other:

Did you test this? If so, how?

I use chrome.proxy.settings.set() in addons that I develop.

Also: Examples

chrome.proxy.settings.set(
  {value: config, scope: 'regular'},
  function() {}
);

Note

API is not supported in Firefox on Android yet. Support proxy.settings API on Android

Can you link to any release notes, bugs, pull requests, or MDN pages related to this?

No response

Do you have anything more you want to share?

No response

MDN URL

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/proxy/settings

MDN metadata

MDN page report details * Query: `webextensions.api.proxy.settings` * Report started: 2023-10-17T14:52:56.596Z
rebloor commented 1 year ago

@erosman this is problematic. My understanding is that this was done deliberately to avoid the potential confusion on the part of a Firefox extension developer migrating their extension to Chrome thinking that the APIs would be essentially the same. We unfortunately don't have a mechanism for indicating that these are browser-specific APIs. Any thoughts @rpl or @Rob--W ?

Rob--W commented 1 year ago

Let's add a note to the BCD that emphasizes that Chrome/Edge/Opera has a different implementation under the same name.

And also a NOTE in mdn/content, with a link to Chrome's docs.

erosman commented 1 year ago

@Rob--W While a bit off-topic, Chrome implementation does have some good merits, especially in handling of "singleProxy". I have brought up the issue before. It would be worthwhile to consider. I can expand further, if needed.

See also: Bug 1804693: Setting single proxy for all fails

erosman commented 1 year ago

I made the following table which might be useful.

proxy.settings API Comparison

Chrome Firefox
ProxyRules
singleProxy object
scheme: http/https/socks4/socks5/quic
httpProxyAll boolean
proxyForHttp object http string
proxyForHttps object ssl string
proxyForFtp object ftp string
fallbackProxy object
bypassList array passthrough string
PacScript
url string autoConfigUrl string
data string autoConfigUrl string
autoLogin boolean
socks string
socksVersion integer
proxyDNS boolean
rebloor commented 8 months ago

Fix completed by changes in [Superseded by changes in Add missing __compat+mdn_url to top-level extension namespaces

22338](https://github.com/mdn/browser-compat-data/pull/22338)