Commit Graph

9915 Commits

Author SHA1 Message Date
Raymond Hill 887a87d9ca
Add support to report/filter SVG image elements
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2260
2022-09-11 12:20:01 -04:00
Raymond Hill 3e26a1ead8
Add missing dependency 2022-09-11 12:19:45 -04:00
Raymond Hill 7412d0fda7
Merge branch 'master' of https://github.com/gorhill/uBlock 2022-09-11 11:16:04 -04:00
Raymond Hill d14750dde1
Make Firefox dev build auto-update 2022-09-11 11:15:45 -04:00
gorhill 2ea1d9c683 Update build log file
Files changed:\nM	dist/chromium-mv3/log.txt
2022-09-11 15:10:20 +00:00
Raymond Hill f8c0f4525e
New revision for dev build 2022-09-11 11:09:07 -04:00
Raymond Hill 067e128163
Patch google-ima shim script for proper integration into uBO
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2158

Additionally, added firing of CONTENT_RESUME_REQUESTED event in
start() method.
2022-09-11 11:03:47 -04:00
Raymond Hill b6b6e49d57
Add original Firefox-authored google-ima shim script
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2158
2022-09-11 10:54:54 -04:00
Raymond Hill 9ce9588737
Import translation work from https://crowdin.com/project/ublock 2022-09-11 09:18:20 -04:00
Raymond Hill 257100e921
Add missing i18n attribute 2022-09-11 09:09:31 -04:00
Emilio Cobos Álvarez 4044aa182a
element-picker: Declare we support both light and dark color-schemes. (#3872)
This fixes https://github.com/uBlockOrigin/uBlock-issues/issues/2240 and
should get the desired behavior regardless of browser.

Delay showing the iframe until load to prevent flashing a white
background on the initial about:blank.
2022-09-11 07:34:29 -04:00
Raymond Hill 453fb1eb5e
Fix wording 2022-09-10 21:12:40 -04:00
Raymond Hill 4314764c48
Add missing translatable string
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1681
2022-09-10 21:05:09 -04:00
Raymond Hill d11f6a6296
Make Firefox dev build auto-update 2022-09-10 16:16:26 -04:00
gorhill 22d06f4eb6 Update build log file
Files changed:\nM	dist/chromium-mv3/log.txt
2022-09-10 20:09:44 +00:00
Raymond Hill a9b643abcc
New revision for dev build 2022-09-10 16:08:38 -04:00
Raymond Hill 0d80a1132d
Fix typo in CSS 2022-09-10 16:08:05 -04:00
Raymond Hill 0910071bbd
Merge branch 'master' of https://github.com/gorhill/uBlock 2022-09-10 15:11:51 -04:00
Raymond Hill 9d832fbc8f
Make Firefox dev build auto-update 2022-09-10 15:11:06 -04:00
gorhill 4bb08853c8 Update build log file
Files changed:\nM	dist/chromium-mv3/log.txt
2022-09-10 19:01:47 +00:00
Raymond Hill c64f8cb271
Maybe fix github action 2022-09-10 15:00:47 -04:00
Raymond Hill 39129ba6a6
Maybe fix github action 2022-09-10 14:43:44 -04:00
Raymond Hill 204dbe8401
Maybe fix github action 2022-09-10 14:38:38 -04:00
Raymond Hill c583a2e4b0
Fire tune build steps for mv3 version 2022-09-10 14:20:07 -04:00
Raymond Hill dfde4643a2
New revision for dev build 2022-09-10 14:17:51 -04:00
Raymond Hill 5716c1c6a0
Add two more strings to translate
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1681
2022-09-10 14:16:23 -04:00
Raymond Hill ac89b4e0f7
Import translation work from https://crowdin.com/project/ublock 2022-09-10 14:15:08 -04:00
Raymond Hill 3029c78a55
Redesign document-blocked page
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1681

The redesign is inspired by Brave's corresponding document-blocked
page.
2022-09-10 14:11:23 -04:00
Raymond Hill 60d1206215
Make popup panel reflect state of the actual blocked page
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1954
2022-09-10 11:55:19 -04:00
Raymond Hill 707609dc86
Do not set color-scheme CSS style in epicker for Firefox 106+
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2240
2022-09-10 10:07:16 -04:00
Raymond Hill f806438de6
Unescaped escaped commas in regex-based removeparam values
Related discussion:
- https://github.com/uBlockOrigin/uAssets/discussions/14683#discussioncomment-3559284
2022-09-08 19:37:24 -04:00
Raymond Hill 2fc5cd0a14
Keep track of log file for published build 2022-09-08 17:51:36 -04:00
Raymond Hill 01b2122c81
Make Firefox dev build auto-update 2022-09-08 14:15:33 -04:00
Raymond Hill 517f7f5c23
Github action stuff 2022-09-08 12:07:01 -04:00
Raymond Hill 96e1fe49d4
Github action stuff 2022-09-08 11:44:27 -04:00
Raymond Hill fe52c97392
Github action stuff 2022-09-08 11:38:06 -04:00
Raymond Hill 3d4ac1bc0a
Github action stuff 2022-09-08 11:29:35 -04:00
Raymond Hill 091125ecc5
Github action stuff 2022-09-08 11:21:39 -04:00
Raymond Hill 6395591b13
Github action stuff 2022-09-08 11:09:55 -04:00
Raymond Hill 33e825da1d
Hope this fixes github action 2022-09-08 10:28:24 -04:00
Raymond Hill 523bf337ba
Fix github action for mv3 2022-09-08 10:24:17 -04:00
Raymond Hill 9a66b37fe0
Fix github action for mv3 2022-09-08 10:16:08 -04:00
Raymond Hill 3e90742040
New revision for dev build 2022-09-08 10:08:07 -04:00
Raymond Hill 1258414f37
Report ruleset stats in popup panel 2022-09-08 10:04:08 -04:00
Raymond Hill 41d66a78ba
Report per-ruleset stats for filters-to-rules conversion 2022-09-07 13:45:55 -04:00
Raymond Hill f7205fe2e4
Fine tune build steps 2022-09-07 10:23:40 -04:00
Raymond Hill 224410a6f5
Add per-site on/off switch to mv3 experimental version 2022-09-07 10:15:36 -04:00
Raymond Hill e420b75b91
Nodejs 16 does not support fetch() 2022-09-06 15:05:01 -04:00
Raymond Hill 84ab5dbb66
New revision for dev build 2022-09-06 14:20:53 -04:00
Raymond Hill a559f5f271
Add experimental mv3 version
This create a separate Chromium extension, named
"uBO Minus (MV3)".

This experimental mv3 version supports only the blocking of
network requests through the declarativeNetRequest API, so as
to abide by the stated MV3 philosophy of not requiring broad
"read/modify data" permission. Accordingly, the extension
should not trigger the warning at installation time:

    Read and change all your data on all websites

The consequences of being permission-less are the following:

- No cosmetic filtering (##)
- No scriptlet injection (##+js)
- No redirect= filters
- No csp= filters
- No removeparam= filters

At this point there is no popup panel or options pages.

The default filterset correspond to the default filterset of
uBO proper:

Listset for 'default':
  https://ublockorigin.github.io/uAssets/filters/badware.txt
  https://ublockorigin.github.io/uAssets/filters/filters.txt
  https://ublockorigin.github.io/uAssets/filters/filters-2020.txt
  https://ublockorigin.github.io/uAssets/filters/filters-2021.txt
  https://ublockorigin.github.io/uAssets/filters/filters-2022.txt
  https://ublockorigin.github.io/uAssets/filters/privacy.txt
  https://ublockorigin.github.io/uAssets/filters/quick-fixes.txt
  https://ublockorigin.github.io/uAssets/filters/resource-abuse.txt
  https://ublockorigin.github.io/uAssets/filters/unbreak.txt
  https://easylist.to/easylist/easylist.txt
  https://easylist.to/easylist/easyprivacy.txt
  https://malware-filter.gitlab.io/malware-filter/urlhaus-filter-online.txt
  https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=1&mimetype=plaintext

The result of the conversion of the filters in all these
filter lists is as follow:

Ruleset size for 'default': 22245
  Good: 21408
  Maybe good (regexes): 127
  redirect-rule= (discarded): 458
  csp= (discarded): 85
  removeparams= (discarded): 22
  Unsupported: 145

The fact that the number of DNR rules are far lower than the
number of network filters reported in uBO comes from the fact
that lists-to-rulesets converter does its best to coallesce
filters into minimal set of rules. Notably, the DNR's
requestDomains condition property allows to create a single
DNR rule out of all pure hostname-based filters.

Regex-based rules are dynamically added at launch time since
they must be validated as valid DNR regexes through
isRegexSupported() API call.

At this point I consider being permission-less the limiting
factor: if broad "read/modify data" permission is to be used,
than there is not much point for an MV3 version over MV2, just
use the MV2 version if you want to benefit all the features
which can't be implemented without broad "read/modify data"
permission.

To locally build the MV3 extension:

    make mv3

Then load the resulting extension directory in the browser
using the "Load unpacked" button.

From now on there will be a uBlock0.mv3.zip package available
in each release.
2022-09-06 13:47:52 -04:00