Skip to content

1.4.0

Compare
Choose a tag to compare
@gorhill gorhill released this 12 Dec 14:33
· 9248 commits to master since this release

New:

Ability to use Adguard filter lists

You can now directly use Adguard filter lists. Filters which use Adguard-specific filter syntax extension will simply be discarded by uBO. If you want to use an Adguard filter list, you will have to import it as an external filter list.

Popunders

A new filter type is introduced: popunder. This gives uBlock Origin the ability to block popunders. Popunders are when a web page opens new legitimate content in another tab or window, while at the same time loading nuisance content in the current tab. They are essentially the reverse of what is happening with nuisance popups, where the nuisance content is opened in a new tab or window.

Since the popunder option is specific to uBO, any instance of sites using popunders will have to be reported here so that filters can be crafted to address the issue for those sites.

Redirection infrastructure

Consider this still experimental. This adds the option to map blocked network requests to uBO-provided resources. Specifically, this solves issue raised in #949/#1043 -- and more generally consider this yet another tool in uBO's arsenal to enforce users' choices.

The library of resources which are used for redirection is -- and will always be completely under control of uBO, this is not something under the control of any 3rd parties. This ensures only safe resources are used for redirection.

It could be said this feature is vaguely similar to NoScript's surrogates, except that in the case of uBO it's network redirection to plainly map one resource into another one, and it can be used for any kind of resource, not just scripts (anything which can be represented with a data: URI).

Only blocked network requests are candidates for redirection.

To create a redirection filter, just add the redirect=[...] filter option to it, like so:

||example.com/badimage.*$image,redirect=2x2-transparent.png

The [...] is a token identifying the resource to which to redirect: it must be a resource which appears in the resource library. With the example filter above, a web page will not see that the resource was blocked.

For the redirect= filter option to be taken into account, some conditions must be met by the static filter, for efficiency purpose. The static filter ...

  • must be hostname-anchored, i.e. starts with ||.
  • must have one type specified -- negated types are not valid.
  • must have a redirect token which identifies an existing resource in the resource library.

If at least one of the above conditions is not met, no redirection will take place, though the filter will still block matching network requests.

Example of cases solved by the redirect filter option:

Closed as fixed:

Firefox
Pale Moon / SeaMonkey
Core