Open Bug 1458585 Opened 6 years ago Updated 1 year ago

[meta] Allow more permissions to be used as an optional permission

Categories

(WebExtensions :: General, enhancement, P3)

60 Branch
enhancement

Tracking

(Not tracked)

People

(Reporter: robbendebiene, Unassigned)

References

(Depends on 2 open bugs)

Details

(Keywords: meta, Whiteboard: [design-decision-approved][permission])

Attachments

(1 file)

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0
Build ID: 20180427210249

Steps to reproduce:

Dear Mozillians,
I'm the author of Gesturefy and facing the problem that a lot of users complain about the amount of permissions the addon requires. On the other hand I have a lot of user feature requests which require these permissions.
To solve this conflict optional permissions are definitely the way to go and it is a really great feature. However only a subset of the permissions are available as optional permissions, which decreases the usefullness of this api.

So here is my question: Why are some permissions excluded? I would really prefer the ability to use all permissions as optional permissions or at least as much as possible (if there is a problem on the implementation side). It would be easier to manage for programmers and users who do not require all of the features would benefit too.

The permissions I need the most are: sessions (seems similar to bookmarks or downloads which already is optional) and browsingData
Hi robbendebiene,

This seems to be more of an enhancement than an issue in my opinion. 
However, I am assigning a component to this issue in order to involve the development team and get an opinion on this.
Severity: normal → enhancement
Status: UNCONFIRMED → NEW
Component: General → WebExtensions: General
Ever confirmed: true
There are some permissions that we don't want to be optional for platform or user experience reasons. Most of the existing exclusions were chosen for Chrome compatibility reasons, though, and should probably be rethought.
Summary: Allow every permission to be used as an optional permission → Allow more permissions to be used as an optional permission
Whiteboard: [design-decision-approved]
Priority: -- → P3
A little side note: For some reasons this wiki entry: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Request_the_right_permissions mentions that "sessions" and "contextualIdentities" can be used as optional permissions which is currently not the case.

I really don't want to pressure anyone, but from the cost/benefit ratio this seems to be an easy enhancement.
Maybe we can discuss each permission in this ticket?
Product: Toolkit → WebExtensions
Depends on: 1475834
Tridactyl is facing the same situation as Gesturify: some of our users would like Tridactyl to be more modular when it comes to permissions. I took a look at Firefox's source code and it looks like turning some of the permissions into optional permissions is quite easy (just changing a keyword in a few json files). I tried to write a small patch to do that for the following permissions:
- browsing_data
- sessions
- contextual_identities
- dns
- management
- native messenger
Everything seems to work correctly (although I'll admit I've only done manual tests). Should I upload my patch here? I'd really like this issue to move forward.
glacambre, please feel free to upload your patch here.  For future reference, if you're expecting a reply from somebody, please use the "Need more information from" button at the bottom of this page.  You can set it to me for questions about permissions.
Many optional permissions (including the one on my personal wishlist, unlimitedStorage) are needed for Chrome parity. Chrome's blacklist can be found here: https://developer.chrome.com/extensions/permissions
Whiteboard: [design-decision-approved] → [design-decision-approved][permission]
Are there specific permissions that should remain non optional? I have an interest in seeing nativeMessaging optional. The general lack of optional permissions adds to the confusion of making WebExtensions to Firefox and Chrome equally.
Flags: needinfo?(aswan)
These need to be considered on a case-by-case basis, I don't see any reason why native messaging couldn't be optional.
Flags: needinfo?(aswan)
Thanks Andrew! In that case, I may attempt a similar patch to what glacambre had but hasn't uploaded yet.
Ah, sorry about not uploading the patch, I didn't have my computer with me for a while and then I completely forgot to do it. Here it is. As you can see it really is not much.

(In reply to glacambre from comment #11)

Ah, sorry about not uploading the patch, I didn't have my computer with me
for a while and then I completely forgot to do it. Here it is. As you can
see it really is not much.

Based on the patch glacambre has submitted, what process needs to occur to get it into a release?

Flags: needinfo?(aswan)

(In reply to mryanmurphy from comment #12)

Based on the patch glacambre has submitted, what process needs to occur to get it into a release?

The patch should be uploaded to Phabricator and review requested from an extensions peer
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/How_to_Submit_a_Patch#Submitting_the_patch

Flags: needinfo?(aswan)
Depends on: 1386673
Depends on: 1548011
Depends on: 1606862
Keywords: meta
Summary: Allow more permissions to be used as an optional permission → [meta] Allow more permissions to be used as an optional permission
Depends on: 1459941
No longer depends on: 1475834
Depends on: 1618398
Depends on: 1618399
Depends on: 1619337
Depends on: 1624513
No longer depends on: 1619337
Depends on: 1630413
Depends on: 1630414
Depends on: 1630415
Depends on: 1630417
Depends on: 1630418
Depends on: 1630419
Depends on: 1444294
Regressions: 1637059
Severity: normal → S3
Depends on: 1827855
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: