Before you come at me with stuff like Librewolf, Waterfox and IceCat; those don’t count. They are just tweaked Firefox distros with mostly basic low level changes. Not every Chromium browser is super unique either, but I feel like there are more differences between them then there are with Firefox distros. Why is that? Why there aren’t different browsers that use Firefox’s engines but provide a different UX?
I think dropping XUL was a great move. It was old legacy and expensive to maintain. Mozilla already has limited resources, I don’t think maintaining a redundant and complex technology is a great idea. I say burn XUL.
But I do agree that they should have kept legacy extensions. There are a few major arguments against this:
As to 1 I say that is fine. I think the better approach would have been recommending WebExtensions and providing a stability guarantee, but allow legacy extensions and break compatibility with impunity. Yes, it sucks for extensions authors (I speak as a past extension author) but for the minority of extensions that need this level of integration it seems worth it. And it is arguably a benefit to make the WebExtension route more attractive to developers in the cases where it can be used.
For 2 I call this a feature. There are already WebExtenions privileges that are basically full access so I don’t see why legacy extensions couldn’t display to the user some “fake” permissions such as “Full access to my browser and all sites” and allow it. I don’t care if they label it bright red in the store, or even hide it from search results, but please make it possible.
I know because in the slow tightening of restrictions I maintained VimFx for a while. So sure, it was a pain fixing the incompatibilities, but it was manageable. Furthermore in that case there were very few users because you had to jump though many hoops to use the extension even after it was updated. So if this extension type was supported there would be more people helping out, lightening the load.