Page MenuHomePhabricator

Support WebExtensions Manifest v3
Open, MediumPublic

Description

While working on T312653, Chrome showed a warning about the deprecation of manifest version 2, which will stop being supported in 2023.

The warning links to https://developer.chrome.com/blog/mv2-transition/.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript
Mainframe98 set Due Date to Dec 31 2022, 11:00 PM.Jul 9 2022, 10:00 AM
Reedy renamed this task from Support manifest version 3 to Support Chrome Manifest V3.Jul 9 2022, 10:20 PM
Krinkle renamed this task from Support Chrome Manifest V3 to Support Chrome Manifest V3 (deadline: Jan 2023).Jul 11 2022, 6:30 PM

Firefox has signaled they're now also going to support Manifest V3, by the end of 2022: https://blog.mozilla.org/addons/2022/05/18/manifest-v3-in-firefox-recap-next-steps/

It would be nice to not have to maintain separate versions of the extension for Chrome and Firefox.

Hi, the Due Date set for this open task passed a while ago.
Could you please either update or reset the Due Date (by clicking Edit Task), or set the status of this task to resolved in case this task is done? Thanks!

Hmm, I expected bug reports about stuff breaking by now... Either people are using older versions of Chrome, or Chrome hasn't removed support yet.

I'll investigate, as it appears the extension still works. I have some spare time, I'll see if I can implement this.

I'm using Chrome 111.0.5563.64 (Official build) (64-bits) on Debian 11, and the extension still works. I get the readonly warning when enabled, so that functions as expected. The browser console doesn't show anything either.

Ah, so some quick googling pointed me to https://developer.chrome.com/blog/more-mv2-transition/, which states the removal of v2 is happening somewhere around version 112 to 115, depending on the release channel. Soon, in other words. Publishing of v2 extensions is still possible until June 2023, so I'll set that as the due date. Given that I have the equivalent of a bank holiday coming up next month, I'm sure I'll be able to meet that deadline.

Mainframe98 set Due Date to May 31 2023, 10:00 PM.Mar 13 2023, 4:27 PM

Unsurprisingly, I've hit a snag. Also unsurprising, it has to do with the limitations of manifest version 3 in Google Chrome; the fact that regular extensions are no longer allowed to use blocking web request modification. Only statically defined modifications to headers are possible, which is useless to us. At this point the extension is heading for certain doom: when the deadline passes, it will be unusable in Chrome. Firefox doesn't have this issue, because they still permit blocking web request modifications in v3. The unfortunate part is that it is only supported in version 109 and above, and the ESR bundled with Debian Bullseye is too old for that.

I've uploaded https://gerrit.wikimedia.org/r/c/performance/WikimediaDebug/+/897965 for others to look at, but consider it abandoned.

Krinkle renamed this task from Support Chrome Manifest V3 (deadline: Jan 2023) to Support WebExtensions Manifest v3.Mar 13 2023, 11:46 PM

Change 897965 had a related patch set uploaded (by Krinkle; author: Mainframe98):

[performance/WikimediaDebug@master] Migrate to WebExtensions Manifest v3

https://gerrit.wikimedia.org/r/897965