grin agymenései

What Firefox loses while blending in

2017-10-30 09:17 írta grin

"Fuck you, Mozilla."

Don't take me wrong: I understand security, I have the knowledge to see why rewriting APIs can be good, I can see why replacing a bad internal structure with a decent, state-of-the-art one is good.

There is a difference, however, between forcing the developers to change to the new set of internal functions, and therefore force people to replace the old add-ons with the new ones -- versus removing old function calls when new ones aren't yet written and not available, alienating add-on developers with mediocre communication and inflexibility.

It is not helping that by replacing the old with the new the browser incidentally loses the flexibility of manipulations the add-ons have enjoyed, which resulted rich funcionality available from the outside developers and the core browser was not forced to accumulate millions of interesting functions which is used by some percent of the users, but they are indeed very important for that few percent.

So what Mozilla does right now? They are rewriting the internals to be faster and more secure. While doing it they create new internal access (API) for addons to be able to do their magical work within the browser; except, they haven't created all of the old APIs and recreated some (well, due to the new structure some say many) APIs with much less functionality. They started to remove the old APIs. When plugin developers complained that their old code stop working and it's not possible to write new one since there is no API for that the mozilla developers said "your problem, not mine" (well, often they simply said "fuck off" in various forms, but it's just the difference of style, really, same thing). So some developers of really important, or some really well written plugins said "sorry, there's no happy feeling to write this stuff anymore, I'm gone". Since, you have to see, these developers wrote code for good feeling, not money. No good feeling, no code.

Let me show you an example. There was a feature in mozilla which grouped the various tabs in tab groups, then was able to display a quick overview of tabs to pick from; it's essential when you work with large amounts of tabs. Then the core developers said "well we don't use it so you shouldn't either" and removed the feature and said "well this is Firefox, so if you need it code an addon!". And so that is exactly what happened, and Tab Groups addon was created with the same functionality. Happyness. Then comes new Firefox and all the APIs required for Tab Groups are either removed or changed to the extent that it's not possible to do it anymore. And the developer calls out to Mozilla to make it possible to have it rewritten. "It's not a good way to do things", says Mozilla, "we don't need that addon." Nice.

I see the Firefox Nightly channel, this is where the latest development version can be checked, tried. Eventually Nightly become Beta, then Release, then ESR (Extended Support Release), which is what most everyone uses. Right now Nightly rejects 95% of the addons I have been using. It takes half a year until Nightly become ESR. You have 6 months to get away.

Let me just show some:


  • Tab Groups - with 570 tabs it's not possible to live without this
  • Auto unload tab - free memory used by a tab without losing its state
  • DownThemAll - download manager with brains
  • Master Password Timeout - essential security when a strong master password protects lots of not that important passwords
  • Saved password editor - what the name says, this is essential when someone uses the password db
  • PasswordMaker - create passwords with a strong master and the hash of the website address (good for some kind of use)
  • Session manager - I hate to lose browser state; firefox by itself loses it every few restarts, session manager never have lost any.
  • YouTube video and audio downloader - obviously
  • HttpFox - tracing the web traffic to hunt bugs
  • Lazarus form recovery - do you like to lose the feedback form you typed for 35 minutes? Firefox does.
  • NoScript - clickjacking, fake forms, evil javascript; we don't need those
  • Calomel SSL validation - TLS security checker, for the security geek
  • HTTP2 / SPDY indicator - I like to know
  • Tab memory usage - firefox can't say which tab eats memory
  • Stylish - when I want CSS to do what I want
  • UAcontrol - for some really braindead sites

And some small stuff not important even to me.

All of these are going to be trashed.

What works

  • uBlock origin
  • uMatrix (webext)

That's… um… not a long list.

What now?

Some addon developers still hope to kick some sense into Mozilla developers and try to create tickets to have the missing API coded by the time the new WebExtension based addons (well, those few) will trump over the old ones. Some people are creating tickets to tell mozilla about their addon usage and the loss they will experience when the shit will hit the fan. Some Mozilla developers try to help.

But in general Mozilla core developers reply that "this feature need 4th level security review so it has been delegated to committe no. 44 and it's been planned to be discussed in some future non-specific date." Which means in human language that "we do not oppose your request but we don't support it either, we put it into the TODO pile and let's hope someone's picking it up; you may code an API for it and you may even use it but you should expect us to notice and remove or change it any time". (This is what's happening to most of the security related APIs.) For some feature they said "we don't like this feature, so we try to remove everything related to it", which means that they don't just remove the API but they remove the whole feature (this may well happen to one of the most important thing Firefox have: the integrated, secure password storage).

So I expect either they delay the release of Beta, Release and whatever (until the required APIs going to be discussed and designed and accepted and coded and verified and hopefully after addon developers had some time to actually incorporate them into their code, which seems rathat unlikely) or they release it in its current crippled form, which kills off lots of addons and alienate lots of addon developers and people actually start looking for better alternatives.

And the inconvenient thing is that if Firefox addons can do exactly the same as Chromium addons then there's no point to pick Firefox; or at least out of 100 reasons to do it there are some 20 left.

But either way, the users going to lose the functionality of the old addons. So it's going to be worse for them.

…except that I know these kind of addons are only used by geeks and hackers and coders, and the average people use addons which make buttons look like yawning cats, addons which animate the background and addons which play a merry tune when the page have loaded. Those people will not notice much. They going to write their passwords into a text file, they will click on the phishing sites' fake buttons, their memory use will be compensated by buying more RAM, and they don't give a fuck about who and how figure out what the bugs are and how to fix them.

It's the hard life of the intelligent minority versus the happily ignorant masses.

What Firefox loses while blending in


grin agymenései