1.8.0
New:
New cosmetic filtering operators: :has()
, :xpath()
, :style()
. See detailed documentation at "Static filter syntax".
These new operators are to be used only for cosmetic filtering cases which are hard to crack -- more and more of these are surfacing (for example DOM elements with random class or id values).
When it comes to cosmetic filtering, preferably, always favor a plain old CSS3-based cosmetic filter, since they can be used in a declarative way, inside a style
tag. But there are cases where no CSS3-based expression will work, and in such case consider these new :has
and :xpath
operators.
Note that unlike :has
, :xpath
is not a valid CSS4 expression, so they will always be enforced in a non-declarative way (in other word, javascript is doing the filtering, through document.evaluate
).
These new cosmetic filtering operators can be "excepted" like any other standard CSS3-based cosmetic filter using the usual #@#
prompt. Such exception cosmetic filters do not have to be specific however, i.e. you do not have to associate them to a specific hostname/entity.
Changes
The content script code responsible to implement cosmetic filtering has been re-factored:
- To harden against sites which tries to work around uBO's cosmetic filtering.
- To improve general performance and memory usage.
- To support the new cosmetic filters.
Closed as fixed:
Firefox
- uMatrix's fix to issue #540 has been imported into uBO.
SeaMonkey
Core
- "Can't properly upload attachments to any XenForo-based sites"
- Own static filter not immediately available?!
- Logger visual issue
- Domain-anchored filters that can't be tokenized, are rejected
- Fixed a static filtering issue reported in EasyList forum.
- Separator
^
is being stripped off filters - Support cosmetic filters with explicit style properties
- Firefox 42 and cosmetics