Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mozilla/web-ext
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 8.7.1
Choose a base ref
...
head repository: mozilla/web-ext
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 8.8.0
Choose a head ref
  • 18 commits
  • 11 files changed
  • 3 contributors

Commits on May 26, 2025

  1. chore(deps-dev): bump mocha from 11.4.0 to 11.5.0 (#3427)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored May 26, 2025
    Configuration menu
    Copy the full SHA
    45e6953 View commit details
    Browse the repository at this point in the history

Commits on May 28, 2025

  1. chore(deps): bump @babel/runtime from 7.27.1 to 7.27.3 (#3432)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored May 28, 2025
    Configuration menu
    Copy the full SHA
    fee5b60 View commit details
    Browse the repository at this point in the history
  2. chore(deps-dev): bump @babel/core from 7.27.1 to 7.27.3 (#3431)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored May 28, 2025
    Configuration menu
    Copy the full SHA
    f3a7fc3 View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2025

  1. chore(deps-dev): bump pretty-quick from 4.1.1 to 4.2.2 (#3440)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 3, 2025
    Configuration menu
    Copy the full SHA
    43b35b4 View commit details
    Browse the repository at this point in the history
  2. chore(deps-dev): bump @babel/core from 7.27.3 to 7.27.4 (#3438)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 3, 2025
    Configuration menu
    Copy the full SHA
    53caa23 View commit details
    Browse the repository at this point in the history
  3. chore(deps): bump @babel/runtime from 7.27.3 to 7.27.4 (#3437)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 3, 2025
    Configuration menu
    Copy the full SHA
    fd55567 View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2025

  1. Configuration menu
    Copy the full SHA
    88dbb43 View commit details
    Browse the repository at this point in the history
  2. test(functional): Add real test for 'web-ext run -t chromium'

    The existing unit tests for web-ext run -t chromium are at
    tests/unit/test-extension-runners/test.chromium.js but are testing
    implementation details without verifying that Chrome is actually going
    to launch the extension.
    
    Before refactoring the implementation as needed to support Chrome 137+
    and later, this introduces a unit test that verifies the behavior
    against the real Chrome (skipped by default), and a fake Chrome binary
    that behaves like the real Chrome binary where relevant.
    
    This will help us with catching regressions in the implementation and/or
    downstream dependencies (chrome-launcher).
    
    These Chrome behavior has been verified across Chrome 69, 70, 75, 77,
    88, 100, 122, 125, 126, 134, 139.
    
    The auto-reload case of the "real Chrome" test in Chrome 134 requires
    manual intervention in the form of visiting chrome://extensions/,
    enabling 'Developer Mode' and then manually reloading the extension, for
    the following reasons:
    
    - The bundled "web-ext Reload Manager Extension" uses Manifest Version
      2, which is disabled by default in recent Chrome.
    
    - When 'Developer Mode' is off (by default), an attempt to reload
      extensions that were loaded with --load-extension causes the extension
      to be disabled.
    
    These two issues will be resolved once we switch to the new CDP-based
    method of loading Chrome extensions.
    Rob--W committed Jun 19, 2025
    Configuration menu
    Copy the full SHA
    dbe56dc View commit details
    Browse the repository at this point in the history
  3. chore: Remove WebSocket-based reloading from chromium runner

    The new CDP-based chrome extension loader does not need WebSockets to
    manage extension reloading logic. This patch removes all traces of
    WebSocket based extension reloading from web-ext, including unit tests
    that tested WebSocket-specific logic.
    
    The following commits will restore this functionality using CDP.
    Rob--W committed Jun 19, 2025
    Configuration menu
    Copy the full SHA
    085481f View commit details
    Browse the repository at this point in the history
  4. feat: auto-reload support for Chrome using CDP

    This is a re-implementation of auto-reload support in Chrome,
    by opening chrome://extensions/ and using a private API.
    It has been confirmed to work with Chrome 69 until 139.
    
    The functional unit tests only work in Chrome 75 until 133:
    - Chrome 74 and earlier do not support MV3 background service_worker,
      and the test extension uses it. Rewriting the extension to the MV2
      variant causes it to pass in Chrome 69.
    - Chrome 134 disables unpacked extensions upon reload when Developer
      Mode is disabled: https://issues.chromium.org/issues/362756477
    
    The next commit will introduce a more reliable mechanism of reloading
    extensions, using the same mechanism as loading the extension, which
    works in Chrome 126+.
    
    Tested as follows for various relevant versions of Chromium:
    CHROME_PATH=/path/to/chrome75/chromium TEST_LOG_VERBOSE=1 TEST_WEBEXT_USE_REAL_CHROME=1 ./node_modules/.bin/mocha tests/functional/test.cli.run-target-chromium.js --grep='with auto-reload run real'
    
    Unit tests with fake Chrome binary that simulates the real binary:
    ./node_modules/.bin/mocha tests/functional/test.cli.run-target-chromium.js --grep=auto-reload
    
    Pre-existing unit test that tested web-ext internals:
    ./node_modules/.bin/mocha tests/unit/test-extension-runners/test.chromium.js
    Rob--W committed Jun 19, 2025
    Configuration menu
    Copy the full SHA
    ba0537f View commit details
    Browse the repository at this point in the history
  5. feat: Support loading extensions in Chrome 137+

    This finalizes the work needed to get `web-ext run -t chromium`
    working again in Chrome 137+, following the deprecation of the
    previously used `--load-extension` flag as announced at
    https://groups.google.com/a/chromium.org/g/chromium-extensions/c/aEHdhDZ-V0E/m/UWP4-k32AgAJ
    
    This patch uses the `Extensions.loadUnpacked` CDP command to achieve
    this, and falls back to `--load-extension` when it detects the lack of
    support for the `Extensions.loadUnpacked` CDP command.
    
    This has been verified with Chrome 69+ (released 7 years ago). The
    function unit tests work with Chrome 75+ due to MV3, as explained in an
    earlier commit message.
    
    Functional verification (tested Chrome 69, 125, 126, 131, 138, 139):
    CHROME_PATH=/path/to/chrome69/chromium TEST_WEBEXT_USE_REAL_CHROME=1 ./node_modules/.bin/mocha tests/functional/test.cli.run-target-chromium.js
    
    Unit tests (internals):
    ./node_modules/.bin/mocha tests/unit/test-extension-runners/test.chromium.js
    Rob--W committed Jun 19, 2025
    Configuration menu
    Copy the full SHA
    478115f View commit details
    Browse the repository at this point in the history
  6. test(functional): Add test for auto-reload after failed load

    When auto-reload is enabled, and the developer accidentally breaks the
    extension, then web-ext will try to reload the extension, which causes
    it to be disabled in the browser. In the case of Chrome, the new
    CDP-based method can successfully reload the extension (Chrome 126+).
    
    The fallback for older Chrome does not work. This patch adds test
    coverage for that scenario, and updates the fake-chrome-binary to
    accurately simulate that scenario.
    
    Tested with real Chrome 75, 131, 138, 139.
    
    CHROME_PATH=/path/to/chrome75/chromium TEST_WEBEXT_USE_REAL_CHROME=1 ./node_modules/.bin/mocha tests/functional/test.cli.run-target-chromium.js
    Rob--W committed Jun 19, 2025
    Configuration menu
    Copy the full SHA
    b5e0e25 View commit details
    Browse the repository at this point in the history
  7. chore(deps): bump @babel/runtime from 7.27.4 to 7.27.6 (#3444)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 19, 2025
    Configuration menu
    Copy the full SHA
    e39bb4e View commit details
    Browse the repository at this point in the history
  8. chore(deps-dev): bump @babel/eslint-parser from 7.27.1 to 7.27.5 (#3442)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 19, 2025
    Configuration menu
    Copy the full SHA
    fa87e95 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    add869f View commit details
    Browse the repository at this point in the history
  10. chore(deps): bump addons-linter from 7.13.0 to 7.15.0 (#3448)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 19, 2025
    Configuration menu
    Copy the full SHA
    da267d7 View commit details
    Browse the repository at this point in the history
  11. chore(deps-dev): bump mocha from 11.5.0 to 11.7.0 (#3449)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jun 19, 2025
    Configuration menu
    Copy the full SHA
    7f18c86 View commit details
    Browse the repository at this point in the history
  12. 8.8.0

    willdurand committed Jun 19, 2025
    Configuration menu
    Copy the full SHA
    20bfd9d View commit details
    Browse the repository at this point in the history
Loading