Skip to content

Addition of browser_specific_settings.gecko_android#26171

Merged
willdurand merged 9 commits intomdn:mainfrom
rebloor:addition-of-browser_specific_settings.gecko_android
Apr 24, 2023
Merged

Addition of browser_specific_settings.gecko_android#26171
willdurand merged 9 commits intomdn:mainfrom
rebloor:addition-of-browser_specific_settings.gecko_android

Conversation

@rebloor
Copy link
Contributor

@rebloor rebloor commented Apr 13, 2023

Description

As details of the new gecko_android sudkey in the android_specific_settings manifest key.

Also, removed the description of Microsoft Edge properties, which haven't been supported since it adopted Chromium, and remove the note about the safari subkey causing issues in Firefox 69 or earlier.

Motivation

Addresses the BCD requirements of Bug 1824237 Add support for new browser_specific_settings.gecko_android key.

Related issues and pull requests

Related BCD changes in PR #19363.

@rebloor rebloor added the Content:WebExt WebExtensions docs label Apr 13, 2023
@rebloor rebloor requested a review from willdurand April 13, 2023 02:31
@rebloor rebloor requested a review from a team as a code owner April 13, 2023 02:31
@rebloor rebloor self-assigned this Apr 13, 2023
@rebloor rebloor requested a review from a team as a code owner April 13, 2023 02:31
@rebloor rebloor requested review from dipikabh and removed request for a team April 13, 2023 02:31
@github-actions github-actions bot added the Content:Other Any docs not covered by another "Content:" label label Apr 13, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Apr 13, 2023

Preview URLs

Flaws (1)

Note! 1 document with no flaws that don't need to be listed. 🎉

URL: /en-US/docs/Mozilla/Firefox/Releases/113
Title: Firefox 113 for developers
Flaw count: 1

  • broken_links:
    • Can't resolve /docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings
External URLs (3)

URL: /en-US/docs/Mozilla/Firefox/Releases/113
Title: Firefox 113 for developers


URL: /en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings
Title: browser_specific_settings

(comment last updated: 2023-04-24 18:00:23)

- : The extension ID. For extensions submitted to [addons.mozilla.org](https://addons.mozilla.org/) (AMO), see [Extensions and the Add-on ID](https://extensionworkshop.com/documentation/develop/extensions-and-the-add-on-id/) to determine when you need to specify the ID. When required by AMO, this property must contain 80 characters or less. For extensions not submitted to AMO, if the extension is unsigned (and not loaded using `about:debugging`) an ID is required; otherwise, ID is optional.
- : The extension ID. For extensions submitted to [addons.mozilla.org](https://addons.mozilla.org/) (AMO), see [Extensions and the Add-on ID](https://extensionworkshop.com/documentation/develop/extensions-and-the-add-on-id/) to determine when to specify the ID. When required by AMO, this property must contain 80 characters or less. For extensions not submitted to AMO, an ID is required if the extension is unsigned (and not loaded using `about:debugging`); otherwise, an ID is optional.
- `strict_min_version`
- : Minimum version of Gecko to support. Versions containing a "\*" are not valid in this field. Defaults to "42a1".
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think there is a default value, especially not 42a1.

Copy link
Contributor Author

@rebloor rebloor Apr 15, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@willdurand I assume that one of these must apply:

  • when not provided, there is a default
  • is mandatory if you also state gecko.strict_max_version
  • when not provided, it takes the value of gecko.strict_max_version.
  • when not provided, (based on your feedback about back at gecko_android) installs on whatever minimum version is supported by AMO
    Can you confirm which one?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

when not provided, there is a default

there is no default AFAICT, it's therefore compatible.

is mandatory if you also state gecko.strict_max_version

no, min version isn't mandatory even when max version is specified

when not provided, it takes the value of gecko.strict_max_version.

it does not

when not provided, (based on your feedback about back at gecko_android) installs on whatever minimum version is supported by AMO

that is different, AMO has its own compatibility range.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the absence of this value means it is compatible

The `gecko_android` subkey supports these properties:

- `strict_min_version`
- : Minimum version of Gecko to support. Versions containing a "\*" are not valid in this field. Defaults to "42a1".
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think the default value is 42a1. There is no default in Firefox for this property. If this property is omitted, gecko.strict_min_version is used instead.

AMO has a default value that might change in the future but we shouldn't document it here anyway.

@rebloor rebloor requested a review from willdurand April 18, 2023 21:52
Copy link
Contributor

@dipikabh dipikabh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A tiny nit in the release note


- When an extension registers multiple listeners for the same event, all the event listeners are called when the event page wakes up, instead of only the first one ([Firefox bug 1798655](https://bugzil.la/1798655)).
- Support is now provided for the {{WebExtAPIRef("declarativeNetRequest")}} API ([Firefox bug 1782685](https://bugzil.la/1782685)).
- Adds a `gecko_android` subkey to the [`browser_specific_settings`](/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings) key to enable an extension to specify the range of Firefox for Android versions it is compatible with ([Firefox bug 1824237](https://bugzil.la/1824237)).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Adds a `gecko_android` subkey to the [`browser_specific_settings`](/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings) key to enable an extension to specify the range of Firefox for Android versions it is compatible with ([Firefox bug 1824237](https://bugzil.la/1824237)).
- A new `gecko_android` subkey is added to the [`browser_specific_settings`](/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings) key. This subkey allows you to specify the range of Firefox for Android versions it is compatible with ([Firefox bug 1824237](https://bugzil.la/1824237)).

Copy link
Contributor Author

@rebloor rebloor Apr 20, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple of points here:

  • "A new … is added" adds unnecessary redundancy and could be read to suggest that there was an "old" gecko_android subkey here too. It also feels like a slightly old construct for modern English.
  • while the original sentence is long, at 25 words, it's just on the limit of what's considered readable. Although I would agree that splitting it is preferable.
  • the key doesn't "allow" it "enables". That is, it does not give you permission to specify the range of versions, it provides you with the ability to specify the range of versions.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for also correcting the distinction between the doer - 'allows "you"' vs 'enables "an extension"'.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI the difference between allows and enables is not the actor it's the action. It's the difference between a fishing rod enabling someone to fish and a fishing license allowing someone to fish.

@rebloor rebloor requested a review from dipikabh April 20, 2023 15:18
@willdurand willdurand enabled auto-merge (squash) April 23, 2023 11:40
Copy link
Contributor

@dipikabh dipikabh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks 👍

@rebloor rebloor requested a review from dipikabh April 23, 2023 16:18
@dipikabh
Copy link
Contributor

Changes look good to me, @rebloor. I've marked my approval.

rebloor and others added 2 commits April 25, 2023 05:56
@rebloor rebloor requested a review from willdurand April 24, 2023 17:59
@willdurand willdurand merged commit 23346b5 into mdn:main Apr 24, 2023
@rebloor rebloor deleted the addition-of-browser_specific_settings.gecko_android branch April 24, 2023 21:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Content:Other Any docs not covered by another "Content:" label Content:WebExt WebExtensions docs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants