Manifest V3 refers to the upcoming revision of Chromium’s WebExtensions API for browser extensions. The reason this revision is controversial is that as part of the revision, Google plans to deprecate an extremely powerful API used by ad blockers (along with other types of extensions) in order to effectively detect and hide from ad servers. Under Manifest V3, the
webRequest API would still exist, but would only be able to observe traffic, not modify or block it. It would be replaced by a new API called
declarativeNetRequest, which would be much more limited in scope. It’d mean a limit on the maximum number of content blocking rules you can have in place at once, and it’d also mean a full list of rules must exist within the extension, and can only be updated by updating the whole extension (at least as of the 2019 proposal).
Since version 57, Firefox has aimed for full compatibility with Chromium’s WebExtensions API so that extensions built for one browser should work seamlessly on the other. Mozilla has said that they will adopt most of Manifest v3 for compatibility reasons, but will maintain support for
webRequest so content-blocking extensions (and any others that make use of the API) will retain their full effectiveness on Firefox.
When asked by ZDNet, Opera and Brave both said they would maintain support for the old
webRequest API as well, despite both being built on top of the Chromium codebase. Vivaldi was a bit more equivocal, saying only that it was possible they would support the old API and set up a “limited” extensions repository of their own for those ones that needed APIs no longer supported by upstream Chromium. They’ve since introduced an ad blocker built into their browser directly, but it’s not as powerful as something like uBlock Origin that uses the
In mid-2019, it was reported that Google had made the concession that blocking with
webRequest would remain doable in enterprise editions of Chrome. If the API remains usable there, then it must remain part of the codebase, in which case it is presumably easy for Chromium-based browsers like Vivaldi, Opera or Brave to just switch it back on. I wouldn’t feel confident to just assume that, though. I’d like to see more confirmation.
From January 2022 onwards, extensions must be written in line with Manifest V3 to be accepted into the Chrome Web Store. Google has said there will be a one-year transition period, so it’ll be in January 2023 that Manifest V2 extensions stop working in Chrome.
References / See Also
- Mozilla’s Manifest v3 FAQ
- ZDNet: Opera, Brave, Vivaldi to ignore Chrome’s anti-ad-blocker changes, despite shared codebase
- Vivaldi blog: Ad trackers or not – your choice matters
- Thoughts about Manifest v3 (includes some more info on the technical details, including just how many content blocking rules v3 allows you to have)
- 9to5 Google: Google to restrict modern ad blocking Chrome extensions to enterprise users
- The Register: Google Chrome’s crackdown on ad blockers and browser extensions, Manifest v3, is now available in beta
- The Register: As Google sets burial date for legacy Chrome Extensions, fears for ad-blockers grow
- Issue #338 in uBlock Origin’s GitHub tracker: Chrome extension manifest v3 proposal