Commit Graph

30 Commits

Author SHA1 Message Date
Raymond Hill dc64cfbd97
Fix properly reporting invalid filter options
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1134

Specifically;

- `beacon`, `ping`, and `websocket` cannot be redirected;
- it's ok to not specify a type when redirecting to `empty`
  resource;
- `csp=` option can't be mixed with other types, redirec
  directives, and more `csp=` options.
2020-07-05 14:11:15 -04:00
Raymond Hill 2476f5f830
Add static filter parser checklist
To be used to validate the static filtering parser code in
uBO. Over time I expect that all theparsing will be done
by the static filtering parser, and thus the list here will
become useful to detect breaking code changes.
2020-07-05 13:24:04 -04:00
Raymond Hill 72bb700568
Add procedural cosmetic operators remove() and upward()
***

New procedural cosmetic operator: `:remove()`

Related issue:
- https://github.com/gorhill/uBlock/issues/2252

The purpose is to outright remove elements from the
DOM tree. Since `:remove()` is an "action" operator,
it must only be used as a trailing operator (just
like the `:style()` operator).

AdGuard's cosmetic filter syntax `{ remove: true; }`
will be converted to uBO's `:remove()` operator
internally.

***

New procedural cosmetic operator: `:upward(...)`

The purpose is to lookup an ancestor element.

When used with an integer argument, it is synonym of
`:nth-ancestor()`, which will be deprecated and which
will no longer be supported once no longer used in
mainstream filter lists.

Filter lists maintainers must only use `:upward(int)`
instead of `:nth-ancestor(int)` once the new operator
become available in all stable releases of uBO.

`:upward()` can also accept a CSS selector as argument,
in which case the nearest ancestor which matches the
CSS selector will be selected.
2020-03-07 14:25:06 -05:00
Raymond Hill c4ee846cd4
Fix title 2019-09-15 14:53:18 -04:00
Raymond Hill 28cde2bd5b
Fix title in test page 2019-09-15 11:29:39 -04:00
Raymond Hill 9367a6015b
Convert new setTimeout-if scriptlet to blacklist approach
As per feedback from filter list maintainers, the
whitelist approach has been deemed to confusing.

The scriptlet has been renamed `no-setTimeout-if`
alias `nostif` to reflect the blacklist approach.

`setInterval-if` has been Similarly changed to
`no-setInterval-if` alias `nosiif`.
2019-09-15 11:01:50 -04:00
Raymond Hill e0fd9750d4
Further fix new setTimeout-if/setInterval-if scriptlets
Addtionally, a dedicated test page has been added:

https://gorhill.github.io/uBlock/tests/scriptlet-injection-filters-1.html
2019-08-25 09:03:24 -04:00
Raymond Hill c1bdc123f2
Fix use of sibling-related CSS syntax at prefix position
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/c6iem5/
2019-06-29 14:07:54 -04:00
Raymond Hill 3a8608b49a
Fix typo in 0f318e9505 2019-06-29 11:44:46 -04:00
Raymond Hill 0f318e9505
Add unsupported cases to test pages
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/c6iem5/
2019-06-29 11:40:10 -04:00
Raymond Hill 4956a166d3
Make test pages small-screen friendly 2019-06-23 08:05:28 -04:00
Raymond Hill a436102ff7
Add test case for `:watch-attr` 2019-06-22 16:41:42 -04:00
Raymond Hill b2fb650279
Fix typos in test page 2019-06-22 12:38:00 -04:00
Raymond Hill 9def7f9c5d
Add tests for chaining with plain CSS syntax 2019-06-22 12:13:27 -04:00
Raymond Hill b5397be601
Add link to parent page 2019-06-22 10:19:36 -04:00
Raymond Hill 10236552ca
Add test pages for procedural filters
Procedural cosmetic filters:
https://gorhill.github.io/uBlock/tests/procedural-cosmetic-filters.html

Procedural HTML filters:
https://gorhill.github.io/uBlock/tests/procedural-html-filters.html
2019-06-22 10:00:25 -04:00
Raymond Hill 5d20013327
fix title 2018-12-08 10:05:45 -05:00
Raymond Hill 98271f6140
cosmetic change to pages' header 2018-12-05 14:48:31 -05:00
Raymond Hill b548fa4318
clarify which trie version is used in benchmark for large set 2018-12-04 13:32:35 -05:00
Raymond Hill 9946267f93
allow navigating back to benchmarks/tests index page 2018-12-04 13:15:45 -05:00
Raymond Hill edfe4a33cd
fix benchmark/test pages 2018-12-04 13:08:34 -05:00
Raymond Hill 1b6fea16da
3rd-gen hntrie, suitable for large set of hostnames 2018-12-04 13:02:09 -05:00
Raymond Hill 6ed0a891f0
prepare benchmark for next generation hntrie 2018-12-01 18:24:17 -05:00
Raymond Hill 7831c094fc
jshint-compliance 2018-11-16 08:00:02 -05:00
Raymond Hill 19b7cbca55
minor review of hntrie code 2018-11-06 13:38:37 -02:00
Raymond Hill bfb9d50d23
hopefully increase mobile friendliness 2018-11-04 22:18:45 -02:00
Raymond Hill 6a2c6faeb4
typo 2018-11-04 22:15:46 -02:00
Raymond Hill e18ec4357e
github-pages: ensure wasm resources can be loaded with Firefox 2018-11-04 22:12:21 -02:00
Raymond Hill 64da8b9509
pull scripts for test pages from rawcdn.githack.com 2018-11-04 18:45:59 -02:00
Raymond Hill e2b330f211
move tests where they can be browsed by all online 2018-11-04 18:25:38 -02:00