New
New static network filter option: csp=
See #1930 (comment) for discussion about the rationale behind this new filter option.
Element zapper
Ability to zap DOM elements on the current page:
The purpose is to quickly deal with the removal of nuisance elements on a page without having to create one or more filters: see documentation.
Support for keyboard shortcuts
Currently implemented only for Chromium-based browsers and Firefox webext version of uBO. Should also work for Edge if it implements the browser.commands
API.
Features which can be launched using a keyboard shortcut:
- Enter element zapper mode
- Enter element picker mode
- Open logger
Changes
Refactoring of static filtering engine
- to be more modular and hence make it easier to extent filter syntax
- to lessen overhead overall
- to address #2598
-
to extend filter syntax to support
csp=
filter option.
This is an important refactoring. At first my intention was to add support for csp=
filter syntax, but this required some refactoring, and while at it I decided to address a lot of other details regarding static filtering engine which I meant to address since a while, hence the extent of the changes to the code.
Improved compatibility with Adguard's filter lists
See #2624. I do plan to add Adguard's English filter lists to uBO's stock filter lists for the next stable release.
Given that both Adguard and uBO support advanced filter syntax not supported by ABP (which advanced syntax benefit end users and make a filter list maintainer's life easier), and given that EasyList maintainers are limiting themselves to support no more than what ABP can support, enabling Adguard's filter lists as default list in their respective locale is something I am considering.
Closed as fixed:
Core
- [Performance] tokenize URLs to numeric values instead of substring values
-
Support Adguard's
[-ext-has="..."]
syntax => convert to uBO's:if(...)
- ABP Subscription Links Not Understood
- uBlock Origin for Google Chrome and apiBreaker
- [Performance] Mind the potential negative consequences of String.slice()
- Dynamic filtering allow-all still blocks ads, log shows images allowed workers blocked