unstale

npm / web-ext

web-ext

What changed in web-ext 5 to 10, from its official release notes, upgrade guides and advisories. Sources checked 2026-11-15.

8 breaking1 deprecations11 new APIs and options4 behavior and defaults14 tooling9 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.3.1 on npm

web-ext 1017 changes

Breaking changes 2

New APIs and options 3

  • Adds the --enterprise flag to the lint command.

    10.5.0release notes

  • Added --chromium-pref to the CLI options.

    10.2.0release notes

  • Added this preference to the default Firefox prefs.

    10.2.0release notes

Behavior and default changes 2

  • Logs the response data when a PATCH request fails.

    10.5.0release notes

  • Updated Firefox default prefs so web-ext run enables content scripts visibility in the devtools debugger panel by default.

    10.2.0release notes

Tooling 5

  • Adds support for Firefox 158 schema data when linting extensions.

    10.8.0release notes

  • Supports Firefox schemas through Fx157, allowing linting against newer Firefox schemas.

    10.7.0release notes

  • The lint command adds support for the Firefox 154.0b4 schema.

    10.6.0release notes

  • Adds a new Firefox schema for web-ext lint.

    10.5.0release notes

  • web-ext lint now supports Firefox 149 schemas.

    10.0.0release notes

Fixes and other changes 5

  • Fixes the default amoBaseUrl value when signing from the Node API.

    10.8.0release notes

  • Fixes silent reload failures on Chrome 125 and earlier.

    10.8.0release notes

  • Fixes files not being ignored when sourceDir contains glob characters.

    10.8.0release notes

  • Avoids auto-reloading for a recently created source directory.

    10.7.0release notes

  • Loads config files when their paths contain URL characters.

    10.7.0release notes

web-ext 96 changes

Breaking changes 1

  • web-ext no longer accepts .js config files; rename the config file to .cjs or .mjs and export the config accordingly.

    9.0.0release notes

Deprecations 1

  • This is likely the last release officially supporting Node 20, which developers should consider when planning upgrades.

    9.4.0release notes

Tooling 3

  • web-ext lint now supports Firefox 148 schemas, allowing developers to lint against that version.

    9.3.0release notes

  • web-ext lint now supports Firefox 145 and 146 schemas.

    9.2.0release notes

  • web-ext lint now warns when the add-on ID is missing from the manifest file.

    9.1.0release notes

Fixes and other changes 1

  • Launched Chromium now ensures navigator.webdriver is not true.

    9.2.0release notes

web-ext 82 changes

Breaking changes 1

  • The command was heavily refactored and is not backward compatible with v7.

    8.0.0release notes

New APIs and options 1

  • The command can now create new add-ons from the command line, not just versions.

    8.0.0release notes

web-ext 74 changes

Breaking changes 1

New APIs and options 2

  • This new web-ext lint flag enables privileged extensions linting mode.

    7.0.0release notes

  • This keyword is now allowed in the custom extension CSP.

    7.0.0release notes

Tooling 1

  • Linting now detects and reports privileged permissions and properties based on the extension manifest.json file.

    7.0.0release notes

web-ext 68 changes

Breaking changes 2

  • The filename option moved into the build options, so config files setting it need to be updated.

    6.0.0release notes

  • Support for Node.js 10 was dropped.

    6.0.0release notes

New APIs and options 2

  • Some adb utility methods are now exported for use in third-party Node.js scripts that include web-ext as a library.

    6.0.0release notes

  • The --watch-files option was added as an additional alias for --watch-file.

    6.0.0release notes

Behavior and default changes 1

  • The --watch-file option can now watch more than one file.

    6.0.0release notes

Tooling 3

  • The browser compatibility data used by linting was updated.

    6.0.0release notes

  • The linter imported Firefox 85.0b5, 86.0b5, and 87.0b6 API schema.

    6.0.0release notes

  • Linting now supports Numeric Separators.

    6.0.0release notes

web-ext 510 changes

Breaking changes 1

  • web-ext run uses a copy of the specified profile directory instead of modifying it, unless --keep-profile-changes is passed.

    5.0.0release notes

New APIs and options 3

  • When running Firefox Android, this option removes old artifact directories from the target adb device automatically.

    5.0.0release notes

  • Pass this option to keep profile changes when running with an existing profile directory.

    5.0.0release notes

  • The package now provides explicit ESM exports in package.json.

    5.0.0release notes

Behavior and default changes 1

  • web-ext run detects and warns when old artifact directories remain on the target adb device.

    5.0.0release notes

Tooling 2

  • Linting uses the imported Firefox 79 APIs Schema.

    5.0.0release notes

  • Linting supports optional chaining, BigInt, and dynamic imports.

    5.0.0release notes

Fixes and other changes 3

  • Selection of non-Default Chrome profiles is fixed.

    5.0.0release notes

  • web-ext looks for the extension ID in manifest.json browser_specific_settings, falling back to applications when browser_specific_settings is absent or lacks gecko.

    5.0.0release notes

  • The firefoxdeveloperedition alias now resolves correctly on macOS.

    5.0.0release notes