Support schema versioning for Manifest v3 differences
Categories
(WebExtensions :: General, enhancement, P2)
Tracking
(firefox90 fixed)
Tracking | Status | |
---|---|---|
firefox90 | --- | fixed |
People
(Reporter: mixedpuppy, Assigned: mixedpuppy)
References
(Blocks 2 open bugs)
Details
(Whiteboard: [mv3-m1])
Attachments
(1 file, 1 obsolete file)
(deleted),
text/x-phabricator-request
|
Details |
Determine and implement best way to handle manifest V2 and V3 in schema. Can we avoid duplicating schema files?
Some functions are deprecated.
Some features of some functions are changed.
Some namespaces are changed.
Some decorators (e.g. deprecated) may need differences
The schema parser would need to consider manifest_version in advance.
Assignee | ||
Comment 1•4 years ago
|
||
Assignee | ||
Comment 2•4 years ago
|
||
Assignee | ||
Comment 3•4 years ago
|
||
The idea here is taken from json files in chromium. It's not an attempt to be compatible at a schema level, it just looked like a reasonable approach to dealing with changes.
min/max_manifest_version keys are available in any schema object, and some schema objects can support an array of objects where differences may be larger.
This illustrates the basics, test in the patch has a bit more to it.
[
{
namespace: "MV2",
max_manifest_version: 2,
properties: {
PROP1: { value: 20 },
},
},
{
namespace: "MV3",
min_manifest_version: 3,
properties: {
PROP1: { value: 20 },
},
},
{
namespace: "mixed",
properties: {
PROP1: [
{ max_manifest_version: 2, value: 20 },
{ min_manifest_version: 3, value: 30 },
],
PROP2: { value: 20 },
},
]
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Comment 4•4 years ago
|
||
Comment on attachment 9204332 [details]
Bug 1693403 convert schema format for MV3 content_security_policy
Revision D105846 was moved to bug 1696043. Setting attachment 9204332 [details] to obsolete.
Comment 5•4 years ago
|
||
Adding to the "See also" field the pull request for the related changes we'll need to apply on the addons-linter side:
Comment 7•4 years ago
|
||
bugherder |
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Updated•3 years ago
|
Description
•