I created an extension a while back that has started showing a warning in the “about:debugging” page. The warning seems to be attached to the “id” field of the manifest.
Any idea what might be causing the warning?
Here’s the warning
Reading manifest: Warning processing id: An unexpected property was found in the WebExtension manifest.
Here’s the manifest
{
“manifest_version”:2,
“name”:“Tabs List”,
“version”:“1.8”,
“id":"tab_lists@jonheard.com”,
“description”:“Get text containing a list of urls for all tabs in the current window. Can also open tabs from an existing text of urls.”,
“icons”:{“48”:“icon.png”},
“browser_action”:{
“default_popup”:“main.html”
},
“permissions”:[“tabs”,“storage”,“clipboardWrite”,“clipboardRead”],
“browser_specific_settings”:{
“gecko”:{
“strict_min_version”:“58.0”
}
}
}
Quite annoying, isn’t it?
Someone should report and fix that so that it prints the key name.
But there is a simple workaround - when you open browser console (Ctrl + Shift + J), it will tell you more:
1739261822375 addons.webextension.tab_lists@jonheard.com WARN Loading extension ‘tab_lists@jonheard.com’: Reading manifest: Warning processing id: An unexpected property was found in the WebExtension manifest.
(it’s the “id” property)
Also, shouldn’t there be “id” property in the “gecko”?
Thanks for pointing that out. Unfortunately, it’s still not clear what is wrong with the ID I’m using. It was working without warnings until recently.
You suggested putting an id in the gecko. As I understand it, this would be useful if I wanted to use a different id for different browsers / devices. I’d like to use the same id for all, so it isn’t necessary to specify this under gecko, at least as far as I understand things.
The warning is saying that the top level key id in your manifest is unknown. As @juraj.masiar said, that is an expected root key for the extnesion’s manifest.json file.
As for why you didn’t see this warning in the past, I’m not sure. It’s possible that Firefox used to be more lenient and silently ignored the “id” key if it was declared in the root, but I’m not aware of any such change.