Various discussions related to Adblock Plus development
We currently support a bunch of type options
that are uncommon to say the least:
- $xbl: starting with Firefox 4 web pages are no longer allowed to use XBL (bug 546856). There is talk about XBL2 (and has been for the past five years I think) but right now seeing an XBL request anywhere on the web is unlikely.
- $ping: pings aren't sent as long as "browser.send_pings" preference is set to "false". And it has never been set to "true" by default despite the fact that the feature is five years old. Of course nobody turns it on manually so you won't see that request either.
- $dtd: Firefox never allowed web pages to load DTD files (bug 22942). This bug has been resolved as WONTFIX after eleven years so DTD requests won't happen on the web either.
I consider folding these options into $other meaning that we would still be able to block these requests but they won't have a separate type (old options would still be accepted for backwards compatibility but they would have the same meaning as $other). This would allow us to simplify documentation and the filter composer window.
I also wonder whether we need the separation between $object and $object-subrequest. At least in Chrome we will have to treat them the same once we implement support for the webRequest API (it doesn't distinguish them). Is there a reason to keep them separated in Firefox?
I am primarily interested in feedback from subscription authors here since these changes are very unlikely to affect regular users.
- Posts: 2850
- Joined: Thu Oct 26, 2006 2:59 pm
- Location: Australia
$other is currently used by the pop up block extension.
- Posts: 1361
- Joined: Sat Dec 19, 2009 12:29 pm
None of dtd, xbl and ping are used in EasyList and I cannot recall ever having to compose a filter with those type options. As, based on your analysis, it looks unlikely that filters ever will require such options, I would be fully in favour of removing them from Adblock Plus.
However, I am against merging object and object-subrequest. There are numerous problems with blocking video adverts from major advertisers, but not with removing separate Flash adverts - many examples of the problematic domains are present in EasyList. I therefore strongly suspect that being unable to distinguish between the items would limit the ability of subscriptions to block Flash adverts while at the same time permitting required video adverts to be displayed.
Hubird wrote:$other is currently used by the pop up block extension.
That's a rather stupid decision then
$xbl, $dtd and $ping mean the same as $other now. $object and $object-subrequest are still separate type options but they mean the same thing in the experimental development builds for Chrome, its webRequest API cannot distinguish between different object requests.