-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
dev_permissions
/ self_permissions
key in manifest
#688
Comments
I see a couple of problems with this:
I think it’s just easier to use a build tool that lets you customize the manifest during development exactly as you please. |
If developer error is a primary concern, isn't custom build tooling and manifest manipulation a more dangerous footgun? A |
I'm also worried about creating inconsistencies between environments. I've seen developers get tripped up on the few, small inconsistencies that browsers have between "development" and "production" behaviors and they've been frustratingly hard to debug. That said, a |
This would solve our primary goal of keeping those permissions out of the store package as well. Sounds like a great solution. |
During our backlog grooming session on Tuesday Sept 24, 2024 the preferred solution discussed was that developers use built steps to strip unnecessary permissions from the extension manifest at submission time and to use optional permissions. Separately, there was general consensus that all permissions should be optional (where possible). |
Summary
As an extension developer, we sometimes run into cases where the permissions that help with the process of development, testing, and internal observability are not necessarily useful to our end users (and additionally would trigger negative warnings at installation). The issue is heightened by the fact some of these tooling-centric permissions, such as
debugger
anddevtools
, are not able to be specified as optional in the manifest, presumably as these are high-powered APIs and user security is a critical consideration.I propose a
dev_permissions
orself_permissions
key in the manifest schema which would grant permissions that apply only to unpacked installations, thus being inapplicable to builds uploaded to and installed from the web stores. A parallel but not identical concept is Node'sdevDependencies
which specifies different instructions to the npm installer based on the environment in which it's being run.Workaround
The only current workarounds I'm aware of are: either maintaining a separate manifest file entirely for development vs web store builds, or modifying the manifest file permissions key as a part of extension build and release.
The text was updated successfully, but these errors were encountered: