Hi,
I am the author of ModHeader, a popular devtool used for modifying request and response headers used by 600K users. I am looking to migrate ModHeader to MV3 so it can continue to work. However, reading through the docs, I am afraid the migration will result in many issues.
1, ModHeader relies pretty heavily on webRequest blocking API. Some features like modifying individual cookie in cookie request header and set-cookie response header requires intercepting the request / response, extract the cookie/set-cookie header, unpacking them, then modify its values. This are paid features, and it seems impossible to achieve with declarativeNetRequest API. The only alternative seems to be to use the debugger API + Fetch domain to get back the original webRequest blocking API, but this results in a "Debugging" banner at the top of the browser when the debugger API is used. I am sure users won't like it.
2, ModHeader is available on multiple platforms: Chrome, Firefox, and Edge. So far we are able to keep a single repo with just a few if-statements to support the codes on all these platforms. With MV3, our codes for Firefox will diverge very significantly. Firefox has been always making their browser add-on APIs compatible with Chrome as well as they can, but with MV3, they are not quite ready until the end of the year, and who knows what else would go wrong.
3, ModHeader is used by users who are still using some very old browsers. I got complaints from users on Chrome 70+ whenever I introduced a change that is incompatible with the old browser. These users are developers who are using old browsers with ModHeader to test their website compatibility with old browsers. With MV3, only Chrome 88+ is supported (probably even higher since there are probably a number of critical MV3 bugs fixed since then).
Hao