• kopper [they/them]@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    36
    ·
    edit-2
    11 months ago

    They aren’t forced to do anything. Manifest v3 is just a part of the WebExtensions API (which is not a standard and is really just “whatever Chrome does except we find/replace’d the word chrome to browser”) which both Safari and Firefox chose to implement in order to make porting of Chrome extensions easier.

    Before that, Firefox had a much more powerful extension system that allowed extensions quite a lot of access to browser internals, but that turned out to be a maintenance nightmare so they walled those APIs off (not a coincidence that Firefox started getting massive performance improvements after that, and extensions stopped breaking every other release) and decided to go the WebExtensions route. I have no clue what Safari was up to but I think they implemented it after.

    If they don’t implement Manifest v3, extensions that want to work across multiple browsers need to support both the older Manifest v2 and the later Manifest v3, which would be a burden not many extension authors would want to bother with, which would make them just say “yeah we’re not supporting anything outside Chrome”. Firefox avoids this problem by extending the v3 API to allow for the functionality necessary for powerful ad blocking Google removed in v3 (webRequestBlocking) while also implementing the new thing (declarativeNetRequest) side by side, so extensions that want to take advantage of the powerful features on Firefox can do so, while Chrome extensions that are fine with the less powerful alternative can still be ported over relatively easily.

    Firefox does have it’s fair share of extensions on top of the WebExtension API already (sidebar support for one), so adding one more isn’t too big of a deal.