What's wrong with WebExtensions?

Add-ons for Pale Moon and other applications
General discussion, compatibility, contributed extensions, themes, plugins, and more.

Moderators: FranklinDM, Lootyhoof

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35649
Joined: 2011-08-28, 17:27
Location: Motala, SE

What's wrong with WebExtensions?

Unread post by Moonchild » 2017-06-14, 15:07

With a lot of vague statements being made about WebExtensions and how they work in Firefox, it's probably a good idea to clarify why there's something fundamentally wrong with its approach for a Firefox/Pale Moon based browser:

What's wrong with WebExtensions compared to our currently-supported technologies?

The problem with them is that most extensions would need a ton of individual APIs written specifically for them to bridge the gap between WebExtensions' high-level, abstract framework and the underlying technology, that Mozilla has neither the resources (in terms of expertise!) nor the will to spec, implement and maintain.

WebExtensions APIs are explicitly supposed to be high-level APIs, while tons of functionality-extending add-ons actually want, no, need low-level APIs to implement their functionality. "Low level" even being things as simple as file access or networking requests, let alone interfacing with the browser's UI in more than an "add a button" way.
Mozilla's reasoning behind it seems to be "we consider you too stupid and/or evil to give you low level access -- you might potentially break the user experience we envisioned" as well as "we're using our money on experiments[1] so we couldn't possibly support low level anyway due to the maintenance cost involved eating into our profits".

The high-level API restriction (by only allowing WE) is what's killing the platform, not XUL or (partial) XPCOM deprecation. This is the main reason our own version of the platform is worked on, because Mozilla is destroying it.
So, even if we would potentially be able to devise a bridge between HTML-based WebExtensions and our XUL UI, in a limited fashion, it's not a good idea to do so because it would simply be wasted effort. If those simple extensions need compatibility with what we already have, rewriting it into XUL and JS proper isn't difficult. You can always easily translate to a broader platform, but not the other way around (to the lowest common denominator) which is what WE really boils down to.

[1]On my way to FOSDEM, I overheard a conversation where a Mozilla employee stated (paraphrased) "All Mozilla is currently doing is investing in experiments; there is no core product anymore. If one of those experiments pans out to be the next profit making product, then that's great, but there is no solid plan or set direction for Mozilla to go in at the moment." indicating the directionless state of Mozilla right now, which makes the destructive result for a healthy ecosystem and application platform even worse, IMHO.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
adesh
Board Warrior
Board Warrior
Posts: 1277
Joined: 2017-06-06, 07:38

Re: What's wrong with WebExtensions?

Unread post by adesh » 2017-06-15, 12:33

Moonchild wrote:[1]On my way to FOSDEM,
Off-topic:
Can you share more about your FOSDEM experience? I don't know if people here would be excited about it, but I would like to hear.

User avatar
Sajadi
Board Warrior
Board Warrior
Posts: 1227
Joined: 2013-04-19, 00:46

Re: What's wrong with WebExtensions?

Unread post by Sajadi » 2017-06-15, 14:08

Not to forget one thing.. Now Google is also more or less in control how add-ons should work or look, as basically we are here also entering a mono-culture.

User avatar
adesh
Board Warrior
Board Warrior
Posts: 1277
Joined: 2017-06-06, 07:38

Re: What's wrong with WebExtensions?

Unread post by adesh » 2017-06-15, 15:39

Sajadi wrote:Not to forget one thing.. Now Google is also more or less in control how add-ons should work or look, as basically we are here also entering a mono-culture.
That reminds me of the app ecosystem. To use any consumer based service, you have to buy an Android phone and get the app. Many companies are trying to shut down their websites to cut costs; app being the only way to access their services.

I think we are going back in time, web/Internet was built for seemless communication between different types of machines. But we are reversing that. Today we are being forced to use a specific device to access something. In fact we are limiting what web can do for us. At that time hurdles were techninal, today discrimination is on purpose.