Adblock Plus and (a little) more

New element hiding approach in Firefox · 2016-10-10 15:46 by Wladimir Palant

Traditionally, element hiding on Firefox worked quite differently from all other platforms supported by Adblock Plus. Rather than decide on the filters for each website individually, all element hiding rules would be written into a single elemhide.css stylesheet file that would apply to all websites unconditionally. This approach had a few disadvantages:

  • The global stylesheet could not consider exceptions, such as websites where a particular rule should not apply — we had to implement a complicated mechanism to make sure that the rule didn’t have any effect in such cases, and on some websites there still were side-effects.
  • Changing a single element hiding rule caused the global stylesheet to apply again to all open tabs, this could cause significant delays.
  • With multiprocess Firefox coming up and sandboxing enabled on some platforms, we could no longer rely on being able to access that file.

Luckily, Firefox implemented better mechanisms to apply stylesheets to documents a while ago and as of Adblock Plus 2.7.3.4206-beta development build we are now taking full advantage of these. We will now make a separate decision for each website, which (if any) element hiding rules should apply. And we don’t sacrifice performance for that because the majority of element hiding rules will go into a preloaded stylesheet with all the rules which apply unconditionally.

There are a few drawbacks here:

  • New element hiding rules will no longer apply immediately, just like blocking rules they now require the document to be reloaded (can actually be seen as a good thing because consistent). This also affects Element Hiding Helper extension which will need to be updated.
  • We are no longer able to count hits for element hiding exception rules (issue 4509). We simply don’t know any more whether the rule that the exception applies to would have matched anything.
  • Element hiding rules apply with a slight delay which in theory might cause some ads being shown and then flashing out. In practice, I haven’t seen this yet.

This is a huge change to the inner workings of Adblock Plus and while we tested it quite thoroughly some issues are expected — let us know if you notice any.

To the install page

Read more Comment [2]

Tags:

Adblock Browser 1.5.1 for iOS released · 2016-10-10 12:15 by Mario König

Install Adblock Browser 1.5.1 for iOS

Changes

Read more Comment [1]

Tags:

New filter type option for WebSockets · 2016-09-21 14:30 by Wladimir Palant

Starting with Adblock Plus 1.12.2 for Chrome, Opera and Safari we can block connections initiated via WebSockets on all major platforms (this functionality was available on Firefox since the very start). However, we didn’t have a special type for these requests as these were listed with type “other” instead. The assumption was that the protocol ws:// or wss:// would be sufficient for filter list authors in order to target WebSocket connections specifically. However, we received feedback that this wasn’t the case.

So with the current development builds (Adblock Plus 2.7.3.4202 for Firefox and Adblock Plus 1.12.2.1655 for Google Chrome, Opera and Safari) WebSocket connections are listed with the new type “websocket.” Consequently, filters can be made to target such connections specifically by adding $websocket type option. Existing filters will have to be duplicated for now:

something$websocket
something$other

This syntax will support both new and old Adblock Plus versions as long as the versions without support for the “websocket” type are still common (these will ignore the first filter).

To the install page

Edit (2016-09-22): This post was originally suggesting specifying both websocket and other options on one filter. This approach will not work in Adblock Plus versions without support for the websocket option because filters with unknown options are ignored.

Read more Comment [2]

Tags:

Adblock Plus 1.12.3 for Safari released · 2016-09-21 13:17 by Dave Vandyke

Install Adblock Plus 1.12.3 for Safari (Safari 6 or higher required)

This is an emergency release, only for Safari, which fixes compatibility with Safari 10. Starting with Safari 10 Technical Preview Release 11, Apple made a change which broke Adblock Plus. Safari 10 was then released before our fix (issue 4150) could be released normally. As a result we are forced to perform this emergency release.

Builds for Chrome and Opera were generated as well. But since there were no changes compared to the previous release, we didn’t upload these to their respective web stores.

Safari-only changes

  • Adapted Event.initEvent() calls for compatibility with Safari 10 (issue 4150).

Read more Comment

Tags:

Clearing up some things from this week! · 2016-09-16 17:37 by Rachel Brochado

There has been a lot of misinformation floating around these past few days about Adblock Plus and Acceptable Ads and the Acceptable Ads Platform, so let us try and clear up the most common ones.

Read more Comment [36]

Tags:

New Acceptable Ads Platform launches, will redefine RTB and help small websites · 2016-09-13 16:06 by Ben Williams

Today we’re launching the beta version of the Acceptable Ads Platform, a fully functional platform consisting of only Acceptable Ads that will make the whitelisting process faster and easier for publishers, while allowing them to serve alternative ads to ad-blocking users.

Read more Comment [112]

Adblock Browser 1.5.0 for iOS released · 2016-09-12 14:45 by Mario König

Install Adblock Browser 1.5.0 for iOS

Changes

Read more Comment [1]

Tags:

Flattr Plus update · 2016-08-25 16:50 by Ben Williams

How’s your summer going? Well, as readers of this blog are aware, we at ABP have had our hands full with a few Facebook shenanigans — but do you remember that Flattr Plus project? You know, it’s the revolution in non-ad content funding we announced a few months back … Well, we’ve got some newness — and you’re going to want to know this.

Read more Comment [10]

Adblock Plus 1.12.2 for Chrome, Opera and Safari released · 2016-08-23 17:51 by Dave Vandyke

Install Adblock Plus 1.12.2 for Chrome
Install Adblock Plus 1.12.2 for Opera
Install Adblock Plus 1.12.2 for Safari (Safari 6 or higher required)

This is a minor release, focused on stability and preventing circumvention.

Changes

  • Prevent websites from abusing WebSockets to serve adverts (issue 1727).

Chrome/Opera-only changes

  • Improved Element Hiding protections against circumvention (issue 4191, 4298).
  • Fixed a bug that caused content in anonymous frames to be blocked even when the parent frame was whitelisted (issue 4150).
  • Worked around an issue with MutationObservers which caused older versions of Chrome and Opera to hang for some websites (issue 4101).
  • Added more versions of our icons that look sharper with the new Material Design (issue 4218).
  • Removed an outdated workaround that caused some whitelisted elements to be hidden in anonymous frames (issue 4210).

Safari-only changes

  • Fixed a bug that caused the options page to be sometimes opened multiple times when the experimental Content Blocking feature was enabled (issue 4199).
  • Improved the conversion from Adblock Plus filters to Content Blocking rules for the experimental Content Blocking feature, making sure to block/whitelist all subdomains for filters starting with || (issue 4326).
  • Fixed a typo that broke key-based whitelisting (issue 4300).

Read more Comment [1]

Tags:

Ping pong with Facebook · 2016-08-18 15:00 by Ben Williams

or: Why I learned to stop worrying and love the open source community

After Facebook began its attempt to force users to see ads, a series of volleys with the open source community commenced, demonstrating the ingenuity and cohesiveness of not only that community but also other ad blockers, the comments section (!), our forum, other forums and even academics. Here’s to all of you! No ad blocker could function without you. You rule.

Read more Comment [70]