Ad blocker uBlock Origin “can no longer exist” if a proposed change to Chrome goes through. That’s according to Raymond Hill, the developer of uBlock Origin and uMatrix, in a comment on Chromium’s bug tracker.
As spotted by The Register, Google engineers are proposing this change in the Chromium project’s bug tracker. Chromium is the open-source browser that forms the basis for Google Chrome, Opera, and soon Microsoft Edge.
Don’t worry, though: This won’t break ad blockers entirely. Instead, Google engineers are taking permissions away from browser extensions. Right now, ad blockers and other extensions use the “webRequest” API to listen for events during web page loads and block them.
If the proposed change goes through, extensions won’t be able to block events with this API. Extensions can only watch these events, and that should speed up page load times. Chrome won’t have to wait for extensions to weigh in while loading a page.
Ad blockers must use the “declarativeNetRequest” API to tell Chrome what they want to block. Chrome itself does the blocking without waiting for extensions to respond, and this should be faster. However, declarativeNetRequest uses an Adblock Plus-style filtering system.
Raymond Hill notes that, if this change goes through, ad blocker uBlock Origin and content filter uMatrix can’t do anything special:
If this (quite limited) declarativeNetRequest API ends up being the only way content blockers can accomplish their duty, this essentially means that two content blockers I have maintained for years, uBlock Origin (“uBO”) and uMatrix, can no longer exist.
Beside causing uBO and uMatrix to no longer be able to exist, it’s really concerning that the proposed declarativeNetRequest API will make it impossible to come up with new and novel filtering engine designs, as the declarativeNetRequest API is no more than the implementation of one specific filtering engine, and a rather limited one (the 30,000 limit is not sufficient to enforce the famous EasyList alone).
Even Hill notes that ad blockers aren’t going away if this goes through. This change may speed up Chrome by limiting what all browser extensions can do—ad blocking extensions and other extensions. Chrome will be similar to Apple’s Safari browser, which now supports “content blockers” that operate in a speedy, standard way.
It’s a tradeoff. Browser extensions like uBlock Origin can no longer implement their own filtering engine, but the filtering engine will be a speedy one built into Chrome itself. The whole industry has been moving toward more limited browser extensions. Despite what some people have feared, Google isn’t using this as an opportunity to kill off ad blockers.