1
0
mirror of https://github.com/gorhill/uBlock.git synced 2025-01-31 20:21:35 +01:00

12901 Commits

Author SHA1 Message Date
Raymond Hill
36db7f8327
Block media elements unconditionally when max size is set to 0
Related feedback:
https://old.reddit.com/r/uBlockOrigin/comments/1h7x9nj/
2024-12-06 10:15:42 -05:00
Raymond Hill
b3a51d0018
Import translation work from https://crowdin.com/project/ublock 2024-12-05 13:09:07 -05:00
Raymond Hill
38390bab9c
[mv3] Add urlskip support for strict-blocked page + extra info
Add information about which ruleset caused a page to be strict-
blocked.

Whenever possible, add ability to URL-skip an incoming redirect
in a strict-blocked page.

Add new default list: "30-day Phishing Domain List"
2024-12-05 12:56:25 -05:00
Raymond Hill
fb82db34f7
Make Firefox dev build auto-update 2024-12-05 09:20:54 -05:00
Raymond Hill
fd2ddd3c01
Import translation work from https://crowdin.com/project/ublock 1.61.3b4 2024-12-05 09:12:28 -05:00
Raymond Hill
07484ceed1
Import translation work from https://crowdin.com/project/ublock 2024-12-05 09:10:46 -05:00
Raymond Hill
37f7181a52
New revision for dev build 2024-12-05 09:08:26 -05:00
Raymond Hill
a86e802afc
Add advanced setting noScriptingCSP
Related discussion:
https://github.com/uBlockOrigin/uBlock-issues/issues/2642#issuecomment-2520096503

Specify which CSP directive to inject when no-scripting switch is
toggled on. If this hidden setting is changed, uBO will not try
to spoof `noscript` elements.

For internal use at the moment, not to be documented.
2024-12-05 09:04:31 -05:00
Raymond Hill
f80143a8ee
Make Firefox dev build auto-update 2024-12-04 19:50:40 -05:00
Raymond Hill
5eb44d01e5
Update changelog 1.61.3b3 2024-12-04 19:45:06 -05:00
Raymond Hill
1a0331b7c2
New revision for dev build 2024-12-04 19:44:23 -05:00
Raymond Hill
ea1b1abaee
Import translation work from https://crowdin.com/project/ublock 2024-12-04 19:43:40 -05:00
Raymond Hill
48fed03128
Add "RU AdList: Counters" to stable release of uBO
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/229#issuecomment-2408527226
2024-12-04 16:55:18 -05:00
Raymond Hill
076e9fa73e
Visually separate scriptlet parameters in active line
This makes it easier to see how parameters are parsed internally,
in order to make it easier to distinguish commas as separator and
literal commas meant to be part of a parameter.

Related discussion:
https://github.com/uBlockOrigin/uBlock-discussions/discussions/865#discussioncomment-11461980
2024-12-04 10:48:55 -05:00
Raymond Hill
784888471a
Import translation work from https://crowdin.com/project/ublock 2024-12-03 16:53:50 -05:00
Raymond Hill
aa05cb32c6
[mv3] Implement strict blocking
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/214

This implements basic functionality for strict blocking, i.e. the
ability to block navigation to undesirable websites. This is a
first implementation, which converts only filters that are plain
hostnames.

Unlike with uBO, it is not possible to know from which ruleset a
blocking rule originates. Nonetheless, users will have to make a
choice as to whether navigation should proceed or not.

A setting has been added to the dashboard to wholly enable/disable
strict blocking. It is enabled by default.

Potential future improvements, pending investigation on feasability
in an MV3 framework:
- Extend coverage to explicit `document` filters
- Leverage and use `urlskip=` filters in the blocking page in order
  to proceed while bypassing unwanted redirects.
2024-12-03 16:41:34 -05:00
Raymond Hill
d7df6cda4a
Import translation work from https://crowdin.com/project/ublock 2024-12-01 19:46:29 -05:00
Raymond Hill
556bea809e
Make Firefox dev build auto-update 2024-11-29 11:01:23 -05:00
Raymond Hill
47bdec422a
New revision for dev build 1.61.3b2 2024-11-29 10:55:07 -05:00
Raymond Hill
580f2dee06
Update changelog 2024-11-29 10:54:43 -05:00
Raymond Hill
b1a00145bd
Mitigate potentially delayed execution of scriptlets in Firefox
Related issue:
https://github.com/uBlockOrigin/uBlock-issues/issues/3452

Use blob-based injection only when direct injection fails because
of a page's CSP. This is a mitigation until a better approach is
devised.

Such future better approach to investigate:

- Use `MAIN` world injection supported by contentScript.register()
  since Firefox 128
- Investigate registering script to inject ahead of time thru
  some heuristic
2024-11-29 10:13:39 -05:00
Raymond Hill
d6867699c9
Make Firefox dev build auto-update 2024-11-28 12:01:12 -05:00
Raymond Hill
f04645ab9f
New revision for dev build 1.61.3b1 2024-11-28 11:51:27 -05:00
Raymond Hill
58a5a23763
Update changelog 2024-11-28 11:51:05 -05:00
Raymond Hill
3b7fa79a68
Improve prevent-setTimeout/prevent-setInterval scriptlet
Add support for range for the `delay` paramater:

---

@param [delay]
A value to match against the delay. Can be a single value for exact match,
or a range:
- `min-max`: matches if delay >= min and delay <= max
- `min-`: matches if delay >= min
- `-max`: matches if delay <= max
No delay means to match any delay value.
Prepend with `!` to reverse the match condition.

---

As discussed with filter list maintainers.
2024-11-28 11:47:28 -05:00
Raymond Hill
703fdf673c
[mv3] Fix mv3 build script 2024-11-27 17:55:18 -05:00
Raymond Hill
4d525f1a55
Move assets/resources into src/js/ 2024-11-27 16:47:11 -05:00
Raymond Hill
adced29b5b
Improve trusted-replace-argument scriptlet
As discussed with filter list maintainers, added ability to
partially replace an argument using the `repl:` prefix. Updated
documentation:

---

@scriptlet trusted-replace-argument.js

@description
Replace an argument passed to a method. Requires a trusted source.

@param propChain
The property chain to the function which argument must be replaced when
called.

@param argposRaw
The zero-based position of the argument in the argument list. Use a negative
number for a position relative to the last argument.

@param argraw
The replacement value, validated using the same heuristic as with the
`set-constant.js` scriptlet.
If the replacement value matches `json:...`, the value will be the
json-parsed string after `json:`.
If the replacement value matches `repl:/.../.../`, the target argument will
be replaced according the regex-replacement directive following `repl:`

@param [, condition, pattern]
Optional. The replacement will occur only when pattern matches the target
argument.

---

Aditionally, more scriptlets moved into their own files.
2024-11-27 15:53:50 -05:00
Raymond Hill
e43cb6771a
[mv3] Open options page in tab in Firefox 2024-11-25 12:31:50 -05:00
Raymond Hill
50ddedb992
Import translation work from https://crowdin.com/project/ublock 2024-11-24 10:24:08 -05:00
Raymond Hill
346b5ded7c
[mv3] Add ability for admins to disable features
New managed setting:

"disabledFeatures": {
  "title": "User interface features to disable",
  "description": "A list of tokens, each of which correspond to a user interface feature to disable.",
  "type": "array",
  "items": { "type": "string" }
}

Supported tokens:
- `dashboard`: Prevent access to all dashboard settings
- `filteringMode`: Prevent changes to the default filtering mode,
  or the current filtering mode of any site

Related feedback:
https://github.com/uBlockOrigin/uBOL-home/discussions/35#discussioncomment-11326086
2024-11-23 13:17:13 -05:00
Raymond Hill
4979aa51f5
[mv3] Do not collect matched rules by default when side-loaded
Collecting matched rules when the extension is side-loaded is now
opt-in, by enabling "Developer mode" in the dashboard.

The reason is to allow the extension to behave same as the official
released version when side-loaded.

Specifically, as side-loaded extension, uBOL's service worker would
wake up due to matched-rule listener even though it would not wake
up the worker with same configuration in stable release.
2024-11-21 12:54:28 -05:00
Raymond Hill
b2d7bb72c7
[mv3] Write log.txt file to extension folder 2024-11-20 12:55:13 -05:00
Raymond Hill
6355a17187
[mv3] Fix flaw breaking scriptlets injection in optimal/basic mode
Not all matching scriptlets were injected on a given site in Optimal
or Complete mode when default mode was set to Basic or less.

A high profile manifestation of this bug was that Youtube ads were
not being blocked when using Optimal on Youtube while default mode
was Basic.
2024-11-20 09:04:52 -05:00
Raymond Hill
8ae33afb76
Make Firefox dev build auto-update 2024-11-20 08:15:59 -05:00
Raymond Hill
4a8efe1ed8
Replace all instances, not just the first one 1.61.3b0 2024-11-20 08:07:52 -05:00
Raymond Hill
11bbee93fe
Ne wrevision for dev build 2024-11-20 08:01:50 -05:00
Raymond Hill
fbbd5765c8
Update changelog 2024-11-20 08:01:27 -05:00
Raymond Hill
bcc058eba7
Add -safebase64 directive in urlskip=
Related issue:
https://github.com/uBlockOrigin/uBlock-issues/issues/3206#issuecomment-2487392846
2024-11-20 07:53:52 -05:00
Raymond Hill
3aac2a7c97
Import translation work from https://crowdin.com/project/ublock 2024-11-19 13:44:25 -05:00
Raymond Hill
f3486275e9
[mv3] Fix force-reloading repeatedly when erroring at load time
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/234
2024-11-19 13:16:56 -05:00
Raymond Hill
2f2f383c1b
Make Firefox dev build auto-update 2024-11-18 14:25:44 -05:00
Raymond Hill
9fb90ad14c
New revision for dev build 1.61.1b5 2024-11-18 14:22:27 -05:00
Raymond Hill
dfc3c252d2
Update changelog 2024-11-18 14:22:02 -05:00
Raymond Hill
77ed83ff2f
Improve urlskip= filter option
Automatically upgrade `http:` to `https:` in the resulting URL.

Related feedback:
https://github.com/uBlockOrigin/uBlock-issues/issues/3206#issuecomment-2480930555
2024-11-18 14:19:21 -05:00
Raymond Hill
114acacd2e
[mv3] Batch changes thru dashboard UI to reduce worker's workload 2024-11-18 14:08:30 -05:00
Raymond Hill
f9ce06977d
[mv3] Fix removeparam potentially causing invalid DNR rules 2024-11-18 14:05:19 -05:00
Raymond Hill
17e0a35650
Import translation work from https://crowdin.com/project/ublock 2024-11-18 10:25:46 -05:00
Raymond Hill
c95b08d760
Import translation work from https://crowdin.com/project/ublock 2024-11-18 10:24:08 -05:00
Raymond Hill
d7c6b41992
[mv3] Code review re. re-worked dashboard
Related commit:
ae4754415c

Fine-tuned visuals; fixed sublist quirks related to admin-selected
lists.
2024-11-18 10:16:01 -05:00