Two years ago, Google proposed Manifest v3, a number of foundational changes to the Chrome extension framework. Many of these changes introduce new incompatibilities between Firefox and Chrome. As its previouslywrote, the browser want to maintain a high degree of compatibility to support cross-browser development.

Mozilla will introduce Manifest v3 support for Firefox extensions to maintain a high degree of compatibility to support cross-browser development, the company announced on Friday, adding that it will diverge from Chrome's implementation where it matters.

Manifest v3 is the latest extension platform that makes Chrome extensions more secure, performant, and privacy-respecting, by default.

After consulting several content blocking extension developers, Mozilla has decided to implement the new declarativeNetRequest (DNR). According to Google, the DNR API allows extensions to modify network requests without intercepting them and viewing their content, thereby providing more privacy.

Since DNR does not yet meet the needs of extension developers, Mozilla says it will continue to maintain support for the previous "blocking webRequest API" until there’s a better solution.

"Our initial goal for implementing DNR is to provide compatibility with Chrome so developers do not have to support multiple code bases if they do not want to. With both APIs supported in Firefox, developers can choose the approach that works best for them and their users," Mozilla wrote in a blog post.

Other high-level changes include:

  • Cross-origin protections will be implemented
  • Background pages will be replaced b background service workers
  • Promise-based APIs will be enabled
  • Host permission controls
  • Dynamic code execution in privileged extension contexts will be restricted by default
  • Content security policy will be introduced for content scripts
  • Implementation timeline

Mozilla hopes to support developer testing for Manifest v3 in Q4 2021 while it will start accepting v3 submissions in early 2022. However, the schedule may be pushed back or delayed due to unforeseeable circumstances, given that Manifest v3 is a large platform project and some parts of it will take longer than others to implement.

As for Manifest v2, Mozilla expects it to be supported for at least one year after Manifest v3 becomes stable in the release channel.