If you are developing a firefox extension, you might get this error after you edit the manifest.json file and reload the extension. It indicates some error in the manifest, e.g., you might write “”matches”: [“*”]” in the content_scripts property while * is not correct for specifying all urls(must be <all_urls>). In the Browser Console, you can see the following errors:
addons.webextension.<unknown> ERROR Loading extension ‘null’: Reading manifest: Error processing content_scripts.0.matches.0: Value “*” must either: be one of [“<all_urls>”], must either [match the pattern /^(https?|wss?|file|ftp|\*):\/\/(\*|\*\.[^*/]+|[^*/]+)\/.*$/, or match the pattern /^file:\/\/\/.*$/], or match the pattern /^resource:\/\/(\*|\*\.[^*/]+|[^*/]+)\/.*$|^about:/ Log.sys.mjs:xxx
Error while calling actor ‘webExtensionDescriptor’s method ‘reload’ Extension is invalid Actor.js:xxx:xx
Error: Extension is invalid
loadManifestFromWebManifest resource://gre/modules/addons/XPIInstall.sys.mjs:xxx
Actor.js:xxx:xx
[ACTION FAILED] TEMPORARY_EXTENSION_RELOAD_FAILURE: Protocol error (Error): Extension is invalid from: server0.conn0.webExtensionDescriptor40 (resource://gre/modules/addons/XPIInstall.sys.mjs:xxx:xx)
If you are about to install the erroneous extension for the first time, you can see the following error:
There was an error during the temporary add-on installation.Error details
Extension is invalid
Reading manifest: Error processing content_scripts.0.matches.0: Value “*” must either: be one of [“<all_urls>”], must either [match the pattern /^(https?|wss?|file|ftp|\*):\/\/(\*|\*\.[^*/]+|[^*/]+)\/.*$/, or match the pattern /^file:\/\/\/.*$/], or match the pattern /^resource:\/\/(\*|\*\.[^*/]+|[^*/]+)\/.*$|^about:/