-
Posts
2,544 -
Joined
-
Last visited
Posts posted by trium
-
-
-
ublock v1.46.0
github-actions released this
22. Dec 2022
Fixes
-
Add
options
stub tonofab
scriptlet - Rewrite logger's "exceptor" feature
- Be sure procedural filterer is present before use
- Use Blob URLs to reliably inject scriptlets -- as suggested by @evilpie
- Add :remove-attr() and :remove-class() pseudo selector operators
- Rework generic cosmetic filtering code
- Add pseudo-operator :matches-attr()
- Detect invalid usage of combinators in :not() pseudoclass
- Give more time for viewport to be ready (in popup panel) -- related feedback
- Handle potentially invalid CSS selector (in logger)
- Ensure state of more/less in panel reflect locked/disabled sections
- Isolate generic cosmetic filters from specific ones in generated stylesheet
- Do not cname-uncloak same-origin network requests
- Prevent the creation of non-cosmetic extended filters in element picker
- Fix visual of DOM inspector layer in dark theme mode
- Improve extraction of tokens from regexes
- Use placeholders to minimize vertical shifting at page load time
- Bundled filter lists in releases are not timestamped
- Ensure procedural filters are applied at least once
- Code maintenance: replace uDom.js with dom.js
-
Add
-
-
-
-
ublock v1.45.0
github-actions released this
08. Nov 2022
Fixes:
- Try to inject scriptlets at onResponseStarted() time
-
Harden scriptlet injections
- Might fix "ublock origin not blocking ads in the sidebar of Opera GX while using youtube music", to be confirmed
- Fix improperly detecting ruleset changes re. dynamic URL filtering
- Add new scriptlet: xml-prune
-
New cosmetic filter parser using CSSTree library
- Breaking change: filter list authors, please read the commit message
- Add support to report/filter SVG image elements in element picker
- Add original Firefox-authored google-ima shim script
- element-picker: Declare we support both light and dark color-schemes by @emilio
- Redesign document-blocked page
- Make popup panel reflect state of the actual blocked page
- Unescaped escaped commas in regex-based removeparam values
- Fix redundant calls to extract image data
- Extend matches-css() to support any pseudo-element
-
uBOLite_0.1.22.11075
github-actions released this
07. Nov 2022
Release notes
- Do not merge rules with errors (doing so caused valid rules to be erroneously discarded).
-
uBOLite_0.1.22.11056
github-actions released this
05. Nov 2022
Release notes
Added support for
csp=
filters. -
uBOLite_0.1.22.10295
github-actions released this
29. Oct 2022
Fixed not injecting scriptlets et al. in embedded frames, which could prevent uBOL from properly defusing many cases of anti-blockers.
Side note: In general, anti-blockers should be properly defused when using Optimal filtering mode, as the Complete mode may be more likely to cause detection by anti-blocker mechanisms. If you are using Complete mode and an anti-blocker is triggered, try lowering to Optimal mode, this can be done on a per-site basis from the popup panel.
-
uBOLite_0.1.22.10281
github-actions released this
28. Oct 2022
Mainly just a release with the latest changes to filter lists.
-
uBOLite_0.1.22.10207
github-actions released this
20. Oct 2022
New
Added ability to handle entity-based CSS and scriptlet injection filters. Entity-based syntax is commonly used by filter list maintainers due to there convenience in real world scenarios.
Since the scripting API is not compatible with entity patterns, the entity-related content scripts are injected in all documents and the entity-matching is done by the content script themselves.
Given this, entity-based content scripts are enabled only when working in the Complete filtering mode, there won't be any entity-based filters injected in lesser modes.
Also, since there is no way to reasonably have access to the Public Suffix List in the content scripts, the entity-matching algorithm is an approximation, though I expect false positives to be rare (time will tell). In the event of such false positive, simply falling back to Optimal mode on the affected site will fix the issue.
Regarding network filtering, the DNR API is incompatible with entity-based approach (often used in
domain=
option), the only workaround is for filter list maintainers to painstakingly expand the wildcard to all required TLDs.Fixed:
Fixed the no-filtering mode related rules having lower priority then redirect rules, i.e. redirect rules would still be applied despite disabling all filtering on a site.
Fixed improper detection of changes to the generic-related CSS content script, potentially causing undue delays when for example trying to access the popup panel while working in Complete mode. The scripting MV3 can be quite slow when registering/updating large content scripts, so uBOL does its best to call the API only if really needed, but there had been a regression in the recent builds preventing uBOL from properly detecting unchanged content script parameters.
Refer to log.txt to see filters which could not be converted due to MV3 incompatibility. At the moment not all discarded filters are necessarily reported in there
-
uBOLite_0.1.22.10187
github-actions released this
18. Oct 2022
Release notes
Fixed:
Refer to log.txt to see filters which could not be converted due to MV3 incompatibility. At the moment not all discarded filters are necessarily reported in there
-
uBOLite_0.1.22.10185
github-actions released this
18. Oct 2022
Release notes
Various internal fixes:
Salvage network filters which were previously wholly thrown out due to MV3 being incompatible with entity-based syntax. The salvaged network filters will be at least a partial translation of the original filters to DNR rules. There is currently no way in MV3 to translate entity-based syntax into DNR rules.
Fixed uBOL not properly reflecting permission changes when permissions were revoked while the extension was not enabled.
Refer to log.txt to see filters which could not be converted due to MV3 incompatibility. At the moment not all discarded filters are necessarily reported in there
-
uBOLite_0.1.22.10175
github-actions released this
17. Oct 2022
Release notes
New
Added support for
redirect=
filters. As withremoveparam=
filters,redirect=
filters can only be enforced when the default filtering mode is set to Optimal or Complete in the Settings pane, since these filters require broad host permission to be enforced by the DNR engine.redirect-rule=
filters are not supported since there is no corresponding DNR syntax. -
uBOLite_0.1.22.10135
github-actions released this
13. Oct 2022
Release notes
New
Added support for nosiif, nowoif, and aeld scriptlets. This should help fix more popup and anti-blocker issues on various sites.
Added uBOL-specific list to fix filter issues arising specifically in uBOL.
Fixed
-
uBOLite_0.1.22.10106
github-actions released this
10. Oct 2022
Release notes
New
Replaced on/off toggle switch with a slider to select one of four filtering modes: no filtering, basic, optimal, complete.
The basic mode is the default mode and does not require permission to read and change data.
The optimal mode enables more advanced network filtering (support for
removeparam=
, and more in the future), specific cosmetic filtering, and scriptlet-based filtering.The complete mode adds generic cosmetic filtering, which support has been added in this release.
Any of these filtering modes can be picked as the default one from the Settings pane (except for no filtering), and can also be picked on a per-website basis to override the default mode.
A new setting to enable/disable auto-reload of webpages when the filtering mode is changed through the popup panel has been added. Enabled by default.
The filter list AdGuard CNAME-Cloaked Trackers has been added. Enabled by default.
-
uBOLite_0.1.22.9305
github-actions released this
30. Sep 2022
Release notes
New
Added support for
removeparam=
filter optionConsequently, AdGuard URL Tracking Protection (AUTP) has been added to the set of available filter lists.
However,
removeparam=
equivalent DNR rules can only be enforced when granting uBOL broad permissions. If broad permissions are
not granted,removeparam=
equivalent DNR rules are ignored.Exception
removeparam=
filters are not supported, and these are present in AUTP and meant to unbreak some websites which are known to break as a result of removing query parameters. This is issue might be mitigated in the future by making the conversion from filters to DNR rules more complicated but this can never replace the accuracy of uBO's filtering engine being able to fully enforce arbitrary exceptionremoveparam=
filters.Also, it is not possible to translate regex-based
removeparam=
values to DNR rules, so these are dropped at conversion time.As with other filters to DNR rules conversion, the converter coallesce many distinct removeparam= filters into fewer DNR rules.
-
uBOLite_0.1.22.9285
github-actions released this
28. Sep 2022
Release notes
New
Added ability to enable broad permissions, i.e. to allow extended filtering for all websites by default. You can enable/disable broad permissions from the Filter lists pane in the dashboard.
When broad permissions are enabled, it won't be possible to exclude a specific site to make it permission-less, as the browser does not support permissions exclusion. Consquently the permissions button (Sun icon) in the popup panel is disabled when broad permissions is enabled.
At the moment, extended filtering comprises:
- Specific cosmetic filtering (including procedural cosmetic filtering)
- Scriptlet injections
This will also open the door to properly enforce
removeparam=
, andredirect=
filters in a future version, since these can only work properly when the extension is given broad permissions and wouldn't work with per-site permissions.Fixes
-
uBOLite_0.1.22.9274
github-actions released this
27. Sep 2022
Release notes
- Added support for more scriptlet-based filters
-
Added support for procedural cosmetic filtering
- This should help with removing inline ads on some high traffic sites (ex.: Twitter, Reddit, etc.) and also to prevent anti-content blockers on many sites.
-
uBOLite_0.1.22.9205
github-actions released this
20. Sep 2022
Release notes
- Renamed "uBO Lite" from "uBO Minus"
- Added ability to enable/disable filter lists
- Added support for i18n
-
Added support for optional permissions through new button in popup panel. Consequences:
- Support for specific plain CSS-based cosmetic filtering
-
Support for scriptlet-based filtering:
- json-prune
- set-constant
- abort-current-script
- abort-on-property-read
- Fixed dark theme issue
- Improved reliability of cosmetic filtering
uBO Lite (uBOL), a permission-less MV3 API-based content blocker.
uBOL is entirely declarative, meaning there is no need for a permanent uBOL process for the filtering to occur, and CSS/JS injection-based content filtering is performed reliably by the browser itself rather than by the extension. This means that uBOL itself does not consume CPU/memory resources while content blocking is ongoing -- uBOL's service worker process is required only when you interact with the popup panel or the option pages.
uBOL does not require broad "read/modify data" permission at install time, hence its limited capabilities out of the box compared to uBlock Origin or other content blockers requiring broad "read/modify data" permissions at install time.
However, [...] uBOL allows you to explicitly grant extended permissions on specific sites of your choice so that it can better filter on those sites using declarative cosmetic and scriptlet injections.
To grant extended permissions on a given site, open the popup panel and pick a higher filtering mode such as Optimal or Complete.
The browser will then warn you about the effects of granting the additional permissions requested by the extension on the current site, and you will have to tell the browser whether you accept or decline the request:
If you accept uBOL's request for additional permissions on the current site, it will be able to better filter content for the current site:
You can set the default filtering mode from uBOL's options page. If you pick the Optimal or Complete mode as the default one, you will need to grant uBOL the permission to modify and read data on all websites:
The default ruleset corresponds to at least uBlock Origin's default filterset:
- uBlock Origin's built-in filter lists
- EasyList
- EasyPrivacy
- Peter Lowe’s Ad and tracking server list
You can add more rulesets by visiting the options page -- click the Cogs icon in the popup panel.
Keep in mind this is still a work in progress, with these end goals:
-
No broad host permissions at install time -- extended permissions are granted explicitly by the user on a per-site basis.
-
Entirely declarative for reliability and CPU/memory efficiency.
-
-
ublock v1.44.2
github-actions released this
05. Sep 2022
Fixes:
-
Force prodecural cosmetic filtering when explicitly stated
-
Using
#?#
instead of##
will prevent uBO from potentially using the declarative form of a filter where possible.
-
Using
- Fallback to procedural :has() operator when argument is not a valid plain CSS selector
- Add missing method to shim script
-
Force prodecural cosmetic filtering when explicitly stated
-
ublock v1.44.0
github-actions released this
16. Aug 2022
New procedural cosmetic filter operator:
:matches-media()
The argument must be a valid media query as documented on MDN, i.e. what appears between the
@media
at-rule and the first opening curly bracket (including the parentheses when required).Best practice:
Use
:matches-media()
after plain CSS selectors, if any.Good:
example.com###target-1 > .target-2:matches-media((min-width: 800px))
Bad (though this will still work):
example.com##:matches-media((min-width: 800px)) #target-1 > .target-2
Fixes:
- Add 0.5s mp3 redirectable resource
- Add queue-related initialization code to AMZN shim script
- Fix dark theme issue in DOM inspector
- Better detect invalid cosmetic filters
- Properly "bleed" 3p rules onto 3p-script/3p-frame cells
- Skip testing context when none present in acis scriptlet
- Ignore auto-repeat events in ctrl keydown event handler
- Fix popup panel for Thunderbird
- Prevent picker from being larger than viewport
- use WebAssembly-1.0 compliant function names (by @rathann)
-
ublock v1.43.0
github-actions released this
09. Jun 2022
Fixes:
- Element-picker: Ensure frame background is transparent (by @emilio)
- Update popup url (by @u-RraaLL)
- Also dispatch loadend event in case of match
- Remove support for deprecated "classic" popup panel
- Prevent CSS transform on element picker layer
- Report specific filter before generic one
- Better highlight bad hostnames in static extended filters
- Avoid using Element.classList in DOM surveyor
- Improve logger accuracy re. reported injected scriptlets
ublock users
in Software
Posted
ublock v1.47.0
released this
13. Feb 2023
Fixes / changes
domain=
/from=
/to=
optionscharset
toutf-8
for Blob-based injected scriptlets-abp-...
filters if not using#?#
to=[list of domain names]
method=...