Commits to master since this release
To install the developer build:
- Firefox: Click uBlock0_1.37.3rc0.firefox.signed.xpi.
- Chromium: Install from the Chrome Web Store (CWS): https://chrome.google.com/webstore/detail/ublock-origin-dev-build/cgbcahbpdhpcegmbfconppldiemgcoii.
- Thunderbird: Download uBlock0_1.37.3rc0.thunderbird.xpi, then drag-n-drop it into Thunderbird's Add-ons Manager pane (Thunderbird 78+ required)
- Node.js: Import from npm, or download and unzip uBlock0_1.37.3rc0.npm.tgz.
New
:matches-path(...)
New cosmetic procedural operator, :matches-path(...)
. See "Add $path modifier of Adguard or any equivalents of this".
Node.js
A new Node.js package will now published with every release. The package allows to import and use uBO's static and dynamic filtering engines into Node.js. This is currently minimal and a first iteration, and issues regarding the Node.js package are accepted in order to improve usability of uBO's filtering engines in a Node.js package. The ability to run code from a Node.js package also opens the door to have test coverage in uBO.
For now the package can be downloaded and unzipped locally. Once installed, you can execute node test
in the root of the package to verify that the static network filtering engine works properly. For usage, refer to the test.js
, or ublock.js
used in Cliqz's benchmark.
Since I have little experience with dealing with Node.js environment/packages, thanks to @mjethani for assistance.
Closed as fixed:
- Scriptlets don't work randomly in Firefox
- Security: comments can be used to smuggle url() functions into css values
- Prevent uBO from hiding html or body when matched by a generic cosmetic filter
- On Android Popup Overlays [or Underlays] On-Screen Navigation Buttons
- Add $path modifier of Adguard or any equivalents of this
- The overview panel will not show everything if the uBO's icon is placed in the Firefox overflow menu
- [patch by @vtriolet] TypeError in noscript-spoof scriptlet with invalid meta refresh URL
- TypeError when trying to use element picker on plaintext resource
- Split out core functionality into separate module
- This is of course an ongoing work for the foreseeable future, but the concrete goal sought in the issue has been reached, i.e. the static network filtering engine can be used as a nodejs module with no external dependencies.
- Since uBO's codebase now uses JS modules, the minimum version of supported browsers has been increased to Chromium 61, Firefox 60, and Opera 48.
- This is of course an ongoing work for the foreseeable future, but the concrete goal sought in the issue has been reached, i.e. the static network filtering engine can be used as a nodejs module with no external dependencies.
Notable commits without en entry in the issue tracker
- Refactor hntrie to avoid the need for boundary cells
- Fix bad test in WASM version of HNTrieContainer
- Export the rule-based filtering engines to the nodejs package
- Rewrite logical expressions for ESLint
- [patch by @mjethani] Add Makefile
- [patch by @mjethani] Make uAssets a submodule
- Ensure compiled sections are ordered in ascending id
- Fix handling of some procedural cosmetic filters with explicit
:scope