-
Notifications
You must be signed in to change notification settings - Fork 438
What µBlock can and can not (currently) do
No. µBlock started off by extracting the pattern-filtering engines (net and cosmetic filters) from HTTP Switchboard ("HTTPSB"). These engines needed more work to bring them to maturity. Most of that work has not been ported back to HTTPSB. Actually, I am questioning doing so, for the sake of code sanity, I consider removing ABP-filtering engine from HTTPSB, so that both extension complement each other, and with a narrower purpose, they can focus on doing what they do more perfectly.
Consider this issue as a good example of how trying to do too many things lead to over-complicated software that I myself struggle to explain. Also, IMO a good way to sabotage a good piece of software is to turn it into a kitchen-sink tool.
The more I think about it, the more I am convinced this is the right thing to do. If you look closely at the inner working of HTTPSB, ABP-filtering is already a separate part.
Yes it does. Try entering twitter.com##body
in the "Your filters" text area
and visit twitter.com: the page will be blank.
What it doesn't support yet,
is the UI counterpart to "element hiding", i.e. being able to click on an element
to extract filters out of it. Never mind, it's now available in 0.2.0.0. Click the "slashed eye"
icon in the pop-up of the extension.
"The memory usage isn't actually ABP's fault, EasyList is like 40,000+ lines of rules that all have to be parsed by ABP".
µBlock also parse EasyList, EasyPrivacy, Malware domains lists, and Peter Lowes's Ad server list out of the box and yet uses less than half the memory of Adblock Plus ("ABP"), which is itself much more efficient than Adblock (at least this is what I have measured on Chromium-based browsers).
Edit: The text here was written at some point when µBlock was a version before 0.2.0.0, so a long time ago. As of version 0.5.0.1, the latest version, there is not much ABP for Chrome does which µBlock can't do. The only thing coming to mind is the "Block element" feature in the contextual menu (right-click). Conversely there are things µBlock can do which ABP for Chrome can't: read hosts files, log and inspect all requests (blocked and allowed), disabling the parsing of cosmetic filters (to save memory).
No it doesn't. There are things ABP can do which µBlock can't at this time. I will consider all feature requests, but I will implement only those which do not jeopardize µBlock's defining traits: lean, efficient and minimalist.
Filters with the Supported in 0.2.1.0.$popup
option are ignored. At time of writing, I see 558 such
filters in EasyList. Chromium comes with a built-in popup blocker, which can be enabled
in the settings.
Filters with the $elemhide
option are ignored. At time of writing, I see 50 such
filters in EasyList. The purpose of these filters is to disable cosmetic filters on
specific sites.
No it doesn't. Last time I checked, µBlock has a larger memory footprint than both Ghostery and Disconnect. Regarding CPU footprint, I don't know, I didn't measure yet (maybe I will). Keep in mind that µBlock, like ABP, Adguard, and some others allows users to enter their own filters. There are also other differences, or similarities: µBlock, Disconnect and ABP are licensed under GPL. Also, there is this.