1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-09-30 14:47:12 +02:00
Commit Graph

3350 Commits

Author SHA1 Message Date
Raymond Hill
a691d180f2
Import translation work from https://crowdin.com/project/ublock 2019-05-28 07:25:11 -04:00
Raymond Hill
8828522fe8
Fix errors with cosmetic filter exception in the logger
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/602
2019-05-28 07:21:16 -04:00
Raymond Hill
d99789e107
Import translation work from https://crowdin.com/project/ublock 2019-05-26 08:11:38 -04:00
Raymond Hill
85b89fbe63
Fix broken import-from-file in Whitelist pane
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/bt2d1f/
2019-05-26 08:03:44 -04:00
Raymond Hill
ede233abe7
Import translation work from https://crowdin.com/project/ublock 2019-05-25 10:09:53 -04:00
Raymond Hill
a7bfff03d6
Avoid spurious diff at edit time in "My rules"
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/593

The issue was caused by the lack of empty last line, since
the differ taking into account new line characters.
2019-05-25 10:04:31 -04:00
Raymond Hill
80a8750d35
Select existing "Advanced settings" page if any
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/591

Additionally, I added a link to the logger in the
"About" pane in the dashboard in order to be able
to access the logger without having to go through
the popup panel.
2019-05-25 08:31:06 -04:00
Raymond Hill
fb6d69f543
Discard whole filter with bad csp= content
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/bshn7z/

uBO was just removing the bad option, while the whole
filter needs to be discarded.
2019-05-24 15:41:37 -04:00
Raymond Hill
1e9528e2a6
Fix regression affecting *$csp=-like filters
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/bshn7z/filter_question/

Regression introduced in:
- 3f3a1543ea
2019-05-24 12:15:32 -04:00
Raymond Hill
26708b37c1
Integrate bare-bone filter hit stats in the logger
Related issue:
- https://github.com/gorhill/uBlock/issues/983
- https://github.com/gorhill/uBlock/issues/1353

The current implementation reports statistics for all
static filters, and the presentation/featureset is
intentionally minimal: *Do not open issues about this.*
It's still a work in progress and it will be worked on
slowly and thoughtfully over time and as time allows.

Pausing the logger will not pause the collation of
filter hit statistics, thus it is possible to lower
the logger overhead by pausing logger output without
losing filter hit collation.
2019-05-24 11:18:39 -04:00
Raymond Hill
64636a44cb
Import translation work from https://crowdin.com/project/ublock 2019-05-23 19:35:53 -04:00
Raymond Hill
eef76c49ae
Add a link to the remote asset in asset viewer
The link will be present if and only if the content
of the currently viewed asset has been fetched from
a remote location.
2019-05-23 19:29:59 -04:00
Raymond Hill
294ea41fde
Import emergency fix 5a29a21c81 in dev build 2019-05-23 10:22:51 -04:00
Raymond Hill
1f398134f9
Minor code reivew of 4430ec11e2 2019-05-23 08:15:26 -04:00
Raymond Hill
7b8c087fdd
Start using async/await where it makes sense 2019-05-22 19:23:04 -04:00
Raymond Hill
8d40d41cf7
Import translation work from https://crowdin.com/project/ublock 2019-05-22 18:07:08 -04:00
Raymond Hill
4430ec11e2
Rearrange inner loop of static network filtering engine
The motivations for the re-arrangement:

- Reducing the number of entry points:
  matchStringExactString() has been removed and
  matchString() is simply reused with a modifier parameter
  to enable matching variants.

- Presumption that most matches, if any, occur early with
  the left-most tokens in a URL. This gives a very small
  marginal performance gain as per built-in benchmark.
2019-05-22 17:51:03 -04:00
Raymond Hill
e8c2f7eea3
Fix "Close this window" not working on document-blocked page
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/breeux/
2019-05-21 18:56:59 -04:00
Raymond Hill
6f4ccec836
Import translation work from https://crowdin.com/project/ublock 2019-05-21 15:50:53 -04:00
Raymond Hill
32b04fa262
Re-arrange parsing of type options to be order-independent
Related commit:
- 1888033070

This removes the need to place `all` before any negated
type in the list of options.
2019-05-21 14:04:21 -04:00
Raymond Hill
5eff4a027a
Fix https://github.com/gorhill/uBlock/issues/3541 2019-05-20 18:29:28 -04:00
Raymond Hill
cdfbc1ae02
Import translation work from https://crowdin.com/project/ublock 2019-05-20 14:10:21 -04:00
Raymond Hill
1888033070
Add support for all filter option
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/bqnsoa/

The `all` option is equivalent to specifying all
network-based types + `popup`, `document`,
`inline-font`, `inline-script`.

Example from discussion:

    ||bet365.com^$all

Above will block all network requests, block all popups,
prevent inline fonts/scripts from `bet365.com`. EasyList-
compatible syntax does not allow to accomplish that
semantic when using only `||bet365.com^`.

If using specific negated type options along with `all`,
the order in which the options appear is important. In
such case `all` should always be first, followed by
the negated type option(s).
2019-05-20 13:46:36 -04:00
Raymond Hill
4b85838745
Import translation from https://crowdin.com/project/ublock 2019-05-19 18:42:32 -04:00
Raymond Hill
72d9758faa
Ensure the "Filter lists" pane is in sync with update status
Related issue:
- https://github.com/gorhill/uBlock/issues/2394

Additionally, I added a new advanced setting to control
how long after launch an auto-update session should be
started -- value is in seconds:

    autoUpdateDelayAfterLaunch 180
2019-05-19 18:31:12 -04:00
Raymond Hill
a0ac1b7ee8
Fix handling of data: for filtering purpose in logger
Related issue:
- https://github.com/gorhill/uBlock/issues/2469
2019-05-19 17:00:49 -04:00
Raymond Hill
f677443878
Warn when navigating away from pane with unsaved changes
Related issue:
- https://github.com/gorhill/uBlock/issues/3271

When navigating away by clicking another pane tab button,
there will be an embedded warning, which can be ignore
in order to proceed to the new pane, or dismissed by
either clicking on the "Stay" button or anywhere else
in the dashboard.

When navigating away by trying to close the tab, there will
be a built-in browser warning asking for confirmation.
2019-05-19 15:35:00 -04:00
Raymond Hill
1caff7429e
Add optional support for generic procedural cosmetic filters
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/131

The new advanced setting and its default value is:

    allowGenericProceduralFilters false

Whenever this setting is toggled, the user is responsible
of forcing a reload of all filter lists so as to allow uBO
to process differently any existing generic procedural
cosmetic filters.
2019-05-18 18:57:32 -04:00
Raymond Hill
e66e4496ed
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/360 2019-05-18 17:50:58 -04:00
Raymond Hill
ca34bc4f3e
Fix "Revert" button not resetting after saving changes
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/367
2019-05-18 17:48:19 -04:00
Raymond Hill
3cf71835c4
Set default delay for creating selfie to 3 minutes
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/bq49zi/
2019-05-18 14:43:44 -04:00
Raymond Hill
f7bbc80717
Improve "Whitelist pane"; remove now useless built-in switch rule
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/214

Built-in whitelist directives are now rendered differently
than user-defined whitelist directives. Also, removing a
built-in whitelist directive will only cause that directive
to be commented out, so that users do not have to remember
built-in directives should they want to bring them back.

Related issue:
 https://github.com/uBlockOrigin/uBlock-issues/issues/494

The built-in per-site switch rule
`no-scripting: behind-the-scene false` has been removed,
it should not ever be needed since there will always be a
valid root context for main- and sub-frames.
2019-05-18 14:20:05 -04:00
Raymond Hill
de41c1bf53
Fix parsing of recursive !#if-`!#endif directives
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/270
2019-05-18 10:31:04 -04:00
Raymond Hill
62387fb87a
Prevent picker's preview mode from modifying style attribute
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/551

The issue fixes previewing the hiding/unhiding of targeted
elements in the element picker.

However it does not address the case of previewing
`:style(...)` operators -- this would require a much
more complex fix, which I am not sure is worth the
amount of work and increased code complexity.
2019-05-17 19:26:48 -04:00
Raymond Hill
9cbdff1a9d
Import translation work from https://crowdin.com/project/ublock 2019-05-17 15:02:00 -04:00
Raymond Hill
9bfbbfec84
Adjust visual of cosmetic exception filters in logger
The invariant prefixes `##` and `#@#` are now hidden,
allowing to reveal more of the filter itself when the
logger view is narrow.
2019-05-17 11:45:07 -04:00
Raymond Hill
0ca44b847c
Avoid duplicated strings in filterOrigin w/ new approach
The new approach is simpler and should benefit selfie
serialization/unserialization.

This renders stringDeduplicater obsolete -- it has been
removed.
2019-05-17 10:13:58 -04:00
Raymond Hill
1386429382
Fix regression in applying procedural cosmetic filters
Related commit:
- 3573b6b32c
2019-05-16 17:22:20 -04:00
Raymond Hill
3573b6b32c
Add ability to report exception cosmetic filters in the logger
Related issue:
- https://github.com/gorhill/uBlock/issues/127

Additionally, the extended exception filters in the
logger will be rendered with a line-through to more
easily distinguish them from non-exception ones.

Also, opportunistically converted revisited code to
ES6 syntax.
2019-05-16 13:44:49 -04:00
Raymond Hill
fc109c8b7c
Revisit code to benefit from ES6 syntax 2019-05-15 14:49:12 -04:00
Raymond Hill
1fe3b54acc
Fix cosmetic exception filters not applying
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/575

Regression from:
- 93f80eedfa

Specific cosmetic exception filters need to be returned so that
they can be applied to generic cosmetic filters.
2019-05-15 14:43:59 -04:00
Raymond Hill
39e2a03edb
Fix comment 2019-05-14 09:31:51 -04:00
Raymond Hill
a14dcecf8f
Do not assume wildcards fall on label boundaries
Related commit:
- fe0b7a0e0f

Related feedback:
- https://github.com/uBlockOrigin/uBlock-issues/issues/572#issuecomment-492223980
2019-05-14 09:29:45 -04:00
Raymond Hill
93f80eedfa
Refactor runtime storage of specific cosmetic filters
This was a TODO item:
- 07cbae66a4/src/js/cosmetic-filtering.js (L375)

µBlock.staticExtFilteringEngine.HostnameBasedDB has been
re-factored to accomodate the storing of specific cosmetic
filters.

As a result of this refactoring:

- Memory usage has been further decreased
- Performance of selector retrieval marginally
  improved
- New internal representation opens the door
  to use a specialized version of HNTrie, which
  should further improve performance/memory
  usage
2019-05-14 08:52:34 -04:00
Raymond Hill
8a312b9bbb
Support cases with more than one wildcard
Related commit:
- fe0b7a0e0f

Related feedback:
- https://github.com/uBlockOrigin/uBlock-issues/issues/572#issuecomment-492147440
2019-05-14 06:52:13 -04:00
Raymond Hill
fe0b7a0e0f
Relax destination hostname requirements in redirect filters
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/572

Wildcards are now allowed in the hostname part of redirect
filters. There will be an attempt to find the longest
right-hand portion of the hostname with no wildcard. If
no non-empty hostname can be extracted, `*` will be used.
2019-05-13 20:19:10 -04:00
Raymond Hill
1e40f50eb3
Add benchmark method to cosmetic filtering engine
To measure retrieval of site-specific selectors. From
uBO's own dev console:

    µBlock.cosmeticFilteringEngine.benchmark();
2019-05-12 11:41:47 -04:00
Raymond Hill
57890d60ff
Fix incorrect use of this in static method
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/568

Regression from:
- 19ece97b0c
2019-05-11 17:40:55 -04:00
Raymond Hill
8a7e704080
Add support for nth-ancestor operator in HTML filtering
Also opportunitisically converted some code to
ES6's `class`.
2019-05-11 13:21:23 -04:00
Raymond Hill
915c1f1f3c
Report resources blocked by csp= option in logger
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/552
2019-05-11 10:40:34 -04:00
Raymond Hill
12bdd01595
Ensure "Ignore generic cosmetic filters" sticks on Fennec
Related issue:
- https://www.reddit.com/r/uBlockOrigin/comments/blkudl/

The setting was not sticking at first-install time.
2019-05-11 09:04:13 -04:00
Raymond Hill
ac1a323918
Import translation work from https://crowdin.com/project/ublock 2019-05-10 17:26:34 -04:00
Raymond Hill
e59bdb1485
Defuse fixed position on body element in element zapper
The `fixed` style property on the `body` element will be
defused if an overlay element is removed using the element
zapper.

Related:
- https://www.reddit.com/r/uBlockOrigin/comments/bktxtb/scrolling_doesnt_work/emlscyz
2019-05-06 13:32:55 -04:00
Raymond Hill
26237d6d40
Import translation work from https://crowdin.com/project/ublock 2019-05-06 11:39:41 -04:00
Raymond Hill
3692bb4ada
Add HNTrieRef.dump() and STrieRef.dump() as dev tool
To be used at the console, as an investigation tool for
development purpose.

Using it to verify the content of the largest
FilterHostnameDict instance, I spotted an all-uppercase
hostname in the HNTrieRef instance:

µBlock.staticNetFilteringEngine.categories.get(0).get(0x10000000).dict.dump();

Thus the changes to static-net-filtering.js are to fix
the erroneous insertion of filters with uppercase
characters. The single instance found was a hostname entry
in Malware Domain List (TRIANGLESERVICESLTD dot COM).
2019-05-06 11:12:39 -04:00
Raymond Hill
ce488d9fc8
Import translation work from https://crowdin.com/project/ublock 2019-05-01 20:05:16 -04:00
Raymond Hill
0e4fbefd07
Remove unecessary null placeholders FilterOriginHitSet et al.
The `null` placeholder are not necessary, we can just use
default arguments instead, and add the HNTrieContainer
references if and only if they are instanciated.
2019-05-01 18:54:11 -04:00
Raymond Hill
9e4385243c
Web accessible secrets can be used for at most one second
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/550

Related Chromium issue (I can't access it):
- https://bugs.chromium.org/p/chromium/issues/detail?id=957866

Findings so far: affects browsers based on Chromium 74.
I could not reproduce the issue with either Chromium 73 or
Google Chrome 75.

This commit is a mitigation: to prevent sites from using
uBO's internal WAR secret for tracking purpose. A secret
can be used for at most one second, after which a new secret
is generated.

The original issue related to the implementation of
secret-gated web accessible resources is:
- https://github.com/gorhill/uBlock/issues/2823
2019-04-30 14:36:07 -04:00
Raymond Hill
73e2f25e95
Add new cosmetic procedural operator: :nth-ancestor(n)
The purpose of this new `:nth-ancestor(n)` operator is to
lookup the nth ancestor relative to the currently selected
node.

It is essentially equivalent to `:xpath(..)`, where
ancestor distance is expressed as a number rather than a
sequence of slash-separated `..`.

The rationale to introduce this new procedural selector
is to have a low overhead way to accomplish ancestor
selection.
2019-04-30 09:02:14 -04:00
Raymond Hill
42bf659695
Revert "Order HNTrie nodes alphabetically to allow for early bailout"
This reverts commit f5f9e05071.
2019-04-30 07:00:52 -04:00
Raymond Hill
f5f9e05071
Order HNTrie nodes alphabetically to allow for early bailout
This commit implements the alphabetical ordering of HNTrie
nodes, so as to make it possible to bail out early at
HNTrie.matches() time.

Contrary to what I expected, there is no performance gain
observed to HNTrie.matches() as per benchmarks -- I find
the results perplexing.

Because of this I will revert this commit immediately.
The purpose of this commit is to record the changes so
that I can bring them back to life in the future whenever
I want to investigate further.
2019-04-30 06:47:54 -04:00
Raymond Hill
adabb56dc9
Do not store impossible to match filters in HNTrie
Consider the two following filters:

    example.com
    www.example.com

This commit make it so that if the first filter is
already present in a given HNTrie, the second filter
will not be stored, since HNTrie will _always_
return the first filter as a match whenever the
hostname to match is example.com or any subdomain
of example.com.

The detection of such pointless filters is
virtually free when adding a hostname to an HNTrie
instance (given how data is stored in the trie), so
in practice no overhead is incurred to detect such
pointless filters.

The ability to ignore impossible to match filters
in HNTrie instances will _especially_ benefit those
using large hosts files.

Examples of how this helps using real configurations:

- Default lists:
  444 filters out of 100,382 were ignored as a result
  of this commit.

- Default lists + "Energized Ultimate Protection":
  283,669 filters out of 903,235 were ignored as a
  result of this commit.

Side note: There was no measurable difference between
the two configurations above in the performance of
the matching algorithm as reported by the built-in
benchmark tool.
2019-04-29 13:15:16 -04:00
Raymond Hill
c4f9ae706a
Fix alternate code path introduced in 295f08da97 (oops) 2019-04-28 14:18:09 -04:00
Raymond Hill
295f08da97
Implement code path for when TextDecoder() is not available
The primary purpose is to unbreak
https://github.com/cliqz-oss/adblocker/tree/master/bench/comparison
2019-04-28 14:07:21 -04:00
Raymond Hill
ac58b8e688
Make token hashes fit within a 32-bit integer
The staticNetFilteringEngine uses token hashes to store/lookup
filters into Map objects.

Before this commit, the tokens were encoded into token hashes
as JS numbers (not exceeding MAX_SAFE_INTEGER) using at most
the 8 first characters of the token.

With this commit, token hashes are now restricted to fit
into 32-bit integers, and are derived from at most the 7 first
characters. This improves filter look-up performance as per
built-in benchmark().
2019-04-28 10:15:15 -04:00
Raymond Hill
510cda0bc5
Support in logger's filter expression picker 2019-04-28 07:23:14 -04:00
Raymond Hill
96dce22218
Increase resolution of known-token lookup table
Related commit:
- 69a43e07c4

Using 32 bits of token hash rather than just the 16 lower
bits does help discard more unknown tokens.

Using the default filter lists, the known-token lookup
table is populated by 12,276 entries, out of 65,536, thus
making the case that theoretically there is a lot of
possible tokens which can be discarded.

In practice, running the built-in
staticNetFilteringEngine.benchmark() with default filter
lists, I find that 1,518,929 tokens were skipped out of
4,441,891 extracted tokens, or 34%.
2019-04-27 08:18:01 -04:00
Raymond Hill
a8946c8d73
Fix list lookup of multi-hostname domain= filters in logger
Related commit:
- 3f3a1543ea

The regression was preventing uBO to find from which list a filter
originated. This affected only filters for which the `domain=`
option had multiple hostnames.
2019-04-27 07:04:43 -04:00
Raymond Hill
4c9e760a10
Import translation work from https://crowdin.com/project/ublock 2019-04-26 17:30:19 -04:00
Raymond Hill
69a43e07c4
Ignore unknown tokens in urlTokenizer.getTokens()
Given that all tokens extracted from one single URL are potentially
iterated multiple times in a single URL-matching cycle, it pays to
ignore extracted tokens which are known to not be used anywhere in
the static filtering engine.

The gain in processing a single network request in the static
filtering engine can become especially high when dealing with
long and random-looking URLs, which URLs have a high likelihood
of containing a majority of tokens which are known to not be in
use.
2019-04-26 17:14:00 -04:00
Raymond Hill
19ece97b0c
Leverage compile-time token information in new fitler classes
Related commit:
- 99390390fc

The token information available at compile time can be stored
in the filter to be used at match() time. This allows the use of
startsWith() rather than a more costly indexOf() call as a first
quick test to detect mismatches.
2019-04-26 11:16:47 -04:00
Raymond Hill
f667fc2d65
Fix page count computation in publicSuffixList.enableWASM() 2019-04-25 19:40:07 -04:00
Raymond Hill
e0d2285da0
Convert HNTrie code to ES6 class 2019-04-25 19:38:07 -04:00
Raymond Hill
155abfba18
Cache and reuse result of HNTrieRef.matches() when possible
Due to how web pages typically load secondary resources and due
to how HNTrieContainer instances are used in uBO, there is a
great likelihood that the result of a previous call to
HNTrieRef.matches() can be reused in a subsequent call.
This has been confirmed by instrumenting HNTrieRef.matches().

Since uBO uses distinct HNTrieContainer instances to either
match against the request or the origin hostnames, this
means a high likelihood of repeated calls to HNTrieRef.matches()
with the same hostname as argument, hence a performance gain
when caching the argument+result -- as despite that
HNTrie.matches() is fast, comparing two short strings is even
faster if this allows to skip HNTrie.matches() altogether.
2019-04-25 18:36:03 -04:00
Raymond Hill
99390390fc
Introduce three more specialized filter classes to avoid regexes
Performance- and memory-related work. Three more classes have
been created to avoid regex-based filters internally.

Purpose is to enforce filters which have only one single
wildcard in their pattern, a common occurrence. The filter
pattern is split in two literal string segments.

Similar as above, with the added condition that the filter is
hostname-anchored (`||`). The "Wildcard2" variant is a further
specialization to enforce filters where the only wildcard
is immediately preceded by the `^` special character, again
a very common occurrence.

Using two literal string segments in lieu of regexes allows to
quickly detect a mismatch by just testing the first segment.
Additionally, this reduces memory footprint as regexes are
much more expensive memory-wise than plain strings.

These three new filter classes allow to replace the use of
5276 regex-based filters internally with plain string-based
filters.

Often-called isHnAnchored() has been further fine-tuned to
avoid as much work as possible. I have also observed that
using an arrow function for closure-purpose helps measurably
performance, as per built-in benchmark.
2019-04-25 17:48:08 -04:00
Raymond Hill
fff2bb6290
Assume media elements with no Content-Length header to be of size 0
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/543
2019-04-24 08:30:54 -04:00
Raymond Hill
72bbcdd93c
Prevent search expression in CodeMirror editor from crossing line boundaries
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/493
2019-04-23 19:26:02 -04:00
Raymond Hill
cd1a11fa9d
Update to CodeMirror version 5.46 2019-04-23 19:06:03 -04:00
Raymond Hill
c535c624bd
Import translation work from https://crowdin.com/project/ublock 2019-04-23 09:32:15 -04:00
Raymond Hill
3c5102811a
Fix the logger's rendering of hostnames starting with digits
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/541
2019-04-23 09:28:00 -04:00
Raymond Hill
16a76aa524
Add filter expressions in logger's expression picker
- Added `media`
- Include `generichide` in `dom` filter expression
- Include `beacon`/`csp_report`/`ping` in `other filter expression
2019-04-22 10:23:58 -04:00
Raymond Hill
43ecffc295
Fix overzealous strict blocking (regression)
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/536

Regression from:
- 3f3a1543ea (diff-522a16ddeed280252d7c3a351261b441R2767)
2019-04-21 09:17:31 -04:00
Raymond Hill
f10b100379
Fix the handling of pseudoclass-based generic cosmetic filters
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/464

Regression from:
261ef8c510 (diff-3b15596213ed9ba37fb5b8bb1402a6c2R599)

Pseudoclass-based generic cosmetic filters were improperly seen
as invalid following the regression.
2019-04-21 07:49:44 -04:00
Raymond Hill
7735b35e21
Fix uncaught rejected promise in assets.fetchText()
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/534

Regression from
a52b07ff6e
2019-04-21 06:12:20 -04:00
Raymond Hill
97f91f8be9
Small code review of a52b07ff6e 2019-04-20 19:10:34 -04:00
Raymond Hill
f0d5205bd7
Discard existing lines when importing from file in "My filters"
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/519
2019-04-20 18:57:16 -04:00
Raymond Hill
537271f26b
Fix how *$, |https://, http:// filters are reported in logger
This was a regression introduced in
3f3a1543ea

Reported in issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/528#issuecomment-485163348
2019-04-20 17:25:32 -04:00
Raymond Hill
a52b07ff6e
Make userResourcesLocation able to support multiple URLs
The URLs must be space-separated.

Reminders:
- The additional resources will be updated at the same time
  the built-in resource file is updated
- Purging the cache of 'uBlock filters' will also purge the
  cache of the built-in resource file -- and hence force a
  reload of the user's custom resources if any

Related issues:
- https://github.com/gorhill/uBlock/issues/3307
- https://github.com/uBlockOrigin/uAssets/issues/5184#issuecomment-475875189

Addtionally:
- Opportunitically promisified assets.fetchText()
- Fixed https://github.com/gorhill/uBlock/issues/3586
2019-04-20 17:16:49 -04:00
Raymond Hill
fa83744b58
Use a sequence of base 64 numbers to encode array buffers
The purpose of using a custom base128 encoder is to
convert array buffers into strings, to allow a direct
string-to-array buffer conversion at load time:

  string => array buffer

Whereas a JSON array would require an extra step:

  JSON array as string => JS array => array buffer

Turns out that the current use of a custom base128 encoding
results in a significantly larger selfie storage usage when
converting array buffers into strings.

Speculation: possibly the browser convert the strings to
save into JSON strings internally. Since the custom base128
encoder is likely to cause the resulting string to contain
a lot of unprintable ASCII characters, these will need to
be escaped when converted to JSON -- escaped characters
occupy more space than non-escaped ones.

Using a sequence of base 64 numbers means only printable
will be present in the output string, hence no escaping
necessary. I have observed significant reduction in
storage usage for selfie purpose.
2019-04-20 09:06:54 -04:00
Raymond Hill
69cb5d8abd
Import translation work from https://crowdin.com/project/ublock 2019-04-19 17:07:27 -04:00
Raymond Hill
3f3a1543ea
Add HNTrie-based filter classes to store origin-only filters
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/528#issuecomment-484408622

Following STrie-related work in above issue, I noticed that a large
number of filters in EasyList were filters which only had to match
against the document origin. For instance, among just the top 10
most populous buckets, there were four such buckets with over
hundreds of entries each:

- bits: 72, token: "http", 146 entries
- bits: 72, token: "https", 139 entries
- bits: 88, token: "http", 122 entries
- bits: 88, token: "https", 118 entries

These filters in these buckets have to be matched against all
the network requests.

In order to leverage HNTrie for these filters[1], they are now handled
in a special way so as to ensure they all end up in a single HNTrie
(per bucket), which means that instead of scanning hundreds of entries
per URL, there is now a single scan per bucket per URL for these
apply-everywhere filters.

Now, any filter which fulfill ALL the following condition will be
processed in a special manner internally:

- Is of the form `|https://` or `|http://` or `*`; and
- Does have a `domain=` option; and
- Does not have a negated domain in its `domain=` option; and
- Does not have `csp=` option; and
- Does not have a `redirect=` option

If a filter does not fulfill ALL the conditions above, no change
in behavior.

A filter which matches ALL of the above will be processed in a special
manner:

- The `domain=` option will be decomposed so as to create as many
  distinct filter as there is distinct value in the `domain=` option
- This also apply to the `badfilter` version of the filter, which
  means it now become possible to `badfilter` only one of the
  distinct filter without having to `badfilter` all of them.
- The logger will always report these special filters with only a
  single hostname in the `domain=` option.

***

[1] HNTrie is currently WASM-ed on Firefox.
2019-04-19 16:33:46 -04:00
Raymond Hill
b70302c0fc
Cleanup comments following changes in 34f3cfe5e7 2019-04-16 19:20:56 -04:00
Raymond Hill
34f3cfe5e7
Add filterClassHistogram() method to µBlock.staticNetFilteringEngine
As a development tool for investigation purpose. To use, enter the
following at uBO's dev console:

    µBlock.staticNetFilteringEngine.filterClassHistogram()
2019-04-16 19:01:14 -04:00
Raymond Hill
4940cda154
Categorize google as a bad token for map key purpose
In the static network filtering engine, `google` token is too
generic and probably leads to too many false positives, beside
causing too large filter bucket.
2019-04-16 06:52:13 -04:00
Raymond Hill
60858b6719
Fix handling of backslashes in string expressions for :has-text() 2019-04-15 18:56:28 -04:00
Raymond Hill
a594b3f3d1
Add µBlock.staticNetFilteringEngine.bucketHistogram() as investigative dev tool
Additionally, lower the treshold of trieability to 4 for FilterPlainPrefix1.
2019-04-15 11:45:33 -04:00
Raymond Hill
c9c21f9cbf
Add more languages for list selection at install/reset time
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/501

Also, the handling of 3-letter language codes has been fixed.
2019-04-14 18:20:57 -04:00
Raymond Hill
7652808806
Improve handling of srcset-based images in element picker
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/517
2019-04-14 17:37:48 -04:00
Raymond Hill
b73480b4c5
Update fix for https://github.com/uBlockOrigin/uBlock-issues/issues/468
As suggested by @jspenguin2017:
https://github.com/uBlockOrigin/uBlock-issues/issues/468#issuecomment-482863195
2019-04-14 16:57:09 -04:00
Raymond Hill
c229003d31
Performance + code maintenance work on static network filtering engine
Implement a plain string trie container class: STrieContainer.

Make use of STrieContainer where beneficial

  Some filter buckets can grow quite large, and in such case
  coalescing "trieable" filter classes into a single trie reduces
  lookup performance and memory usage.

  For instance, at time of commit, the filter bucket for the
  `ad` keyword contains 919 entries[1].

  Coalescing trieable filters of the same class into a single plain
  string trie reduced the size of the bucket into 50 entries + two
  tries which are scanned only once each whenever the bucket is
  visited.

  [1] Enter the following code at uBO's dev console:
      µBlock.staticNetFilteringEngine.categories.get(0).get(µBlock.urlTokenizer.tokenHashFromString('ad'))

Refactor static network filtering engine code to make use of
ES6's syntactic sugar `class`.

Change first auto-update run from 7 to 5 minutes.
2019-04-14 16:45:20 -04:00
Raymond Hill
92c5f17b78
Improve usefulness of FilterContainer.benchmark()
Add ability to test/record results. This allows to compare against
output after code changes to detect and more accurately report
regressions.
2019-04-14 09:44:24 -04:00
Raymond Hill
813d96175d
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/468 2019-04-13 08:10:55 -04:00
Raymond Hill
d2cb0f17ea
Report block count in benchmark()
The block count can be used for testing against regression after
code changes.
2019-04-12 10:19:38 -04:00
Raymond Hill
563f6fddde
Import translation work from https://crowdin.com/project/ublock 2019-04-08 12:36:19 -03:00
Noelle Leigh
0bb7b76338 Fixed wrong method for number of elements in a Map (#3755) 2019-04-06 16:42:24 -03:00
Raymond Hill
1a7a3298e2
Be prepared to deal with failure to read user settings
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/507
2019-04-03 13:18:47 -03:00
Raymond Hill
f47ad8366e
Fix https://github.com/NanoAdblocker/NanoCore/issues/257 2019-04-03 00:18:16 -03:00
Raymond Hill
d505adfa38
Upgrade CodeMirror to 5.45 2019-03-31 00:31:29 -03:00
Raymond Hill
f62d866b36
Code review implementation of cacheStorage.clear()
Possibly related issue:
- https://old.reddit.com/r/firefox/comments/b3u4nj/what_is_the_estimated_time_period_for_reviewing_a/

@gwarser has been able to reproduce at will, while I have been
unable to reproduce at all. The change here is to clear the
content of the database instead of outright deleting it before
restoring backed up settings.
2019-03-28 10:17:47 -03:00
Raymond Hill
f52e77b0c8
Import translation work from https://crowdin.com/project/ublock 2019-03-23 18:08:49 -03:00
Raymond Hill
2fd587b7ae
Simplyfy code to gather storage used with StorageManager.estimate()
Documentation:
https://developer.mozilla.org/docs/Web/API/StorageManager
2019-03-22 22:09:27 -03:00
Raymond Hill
ac71d6577a
Visually emphasize directive syntax (!#if/!#endif) in list viewer/editor 2019-03-21 19:53:04 -03:00
Raymond Hill
26c57feee8
Code review of IndexedDB usage for cache storage purpose
Use Promise.prototype.catch() to deal with potential exceptions.

Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/416
2019-03-21 17:49:19 -03:00
Raymond Hill
34a138e3ef
Add unlimitedStorage to Firefox manifest; add timeout to IndexedDB access
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/416

The Chromium version of uBO has declared `unlimitedStorage` since the
extension was first published in 2014. Declaring this permission in
Firefox brings uBO inline with the Chromium version. I suspect some
reported errors could be caused by IndexedDB eviction due to the lack
of `unlimitedStorage` permission.

Additionally, a timeout has been added when uBO tries to access its
indexedDB storage. It's unclear whether this will help with the
mentioned related issue though, the root cause is still to be
identified.
2019-03-17 09:45:28 -04:00
Raymond Hill
008370e4b9
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/461
uBO will fallback using a JSON string when trying to encode an array
buffer in Chromium version 59 and earlier.
2019-03-16 09:00:31 -04:00
Raymond Hill
580c3885df
Fix typo which could lead to improper filtering context
Related discussion:
- 354ac4f57b (commitcomment-32715209)
2019-03-15 07:47:36 -04:00
Raymond Hill
875542c964
Code review of fix for https://github.com/uBlockOrigin/uBlock-issues/issues/459
Relocate workaround to the code responsible to compute filtering context, such
that the workaround will also be applied in other code paths, for example  also
for webRequest.onHeadersReceived.
2019-03-14 11:24:13 -04:00
Raymond Hill
9a7887eb39
Better English in comment 2019-03-13 17:21:30 -04:00
Raymond Hill
f5974a500b
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/459 2019-03-13 17:17:37 -04:00
Raymond Hill
e49debd5dd
Properly report :spath operator of procedural cosmetic filters in logger
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/453
2019-03-08 07:26:55 -05:00
Raymond Hill
3a8b68ea76
Remove obsolete code related to assets storage refactoring in 1.11.0
The removed code was quite old, and was about how user filters were
persisted before/after uBO version 1.11, related to the following
issue:
- https://github.com/gorhill/uBlock/pull/2314

The assets storage refactoring was released in:
- https://github.com/gorhill/uBlock/releases/tag/1.11.0
2019-03-06 08:59:13 -05:00
Raymond Hill
67d143ec4e
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/448 2019-03-05 12:42:59 -05:00
Raymond Hill
07d4a6b60c
Import translation work from https://crowdin.com/project/ublock 2019-03-05 10:52:56 -05:00
Raymond Hill
388c1c98ec
Fix parsing of AdGuard's #$?#-based cosmetic filters
As reported in the following commit:
- https://github.com/AdguardTeam/AdguardFilters/commit/4fe02d73cee6
2019-03-05 10:10:40 -05:00
Raymond Hill
5a2133de2a
Import translation work from https://crowdin.com/project/ublock 2019-02-26 11:29:22 -05:00
Raymond Hill
337b1f81b6
Code review of indexedDB-based cache storage 2019-02-26 10:37:25 -05:00
Raymond Hill
eaa0094e53
Fix uncaugh exception at launch when indexedDB is forbidden
Possibly related to:
- https://www.reddit.com/r/uBlockOrigin/comments/atbjvg/web_pages_dont_load_in_waterfox_56271_64bit_with/
2019-02-24 11:28:28 -05:00
Raymond Hill
6aa2074e2f
Import translation work from https://crowdin.com/project/ublock 2019-02-24 09:08:19 -05:00
Raymond Hill
c161d45230
Use const, let instead of var 2019-02-24 09:01:58 -05:00
Raymond Hill
1c26afe874
Remove caching the result of domain extraction from hostname
With the new PSL implementation, benchmarks do not show benefit
from caching the domain extracted from a hostname for later
reuse -- the caching seems to even add an overhead instead with
the new publicSuffixList implementation.
2019-02-20 08:51:14 -05:00
Raymond Hill
8edc3bf3e7
Import translation work from https://crowdin.com/project/ublock 2019-02-20 07:25:56 -05:00
Raymond Hill
c83b6776da
Remove support for implicit scriptlet injection
Related issue:
- https://github.com/gorhill/uBlock/issues/3550
2019-02-20 07:18:37 -05:00
Raymond Hill
b585518c00
Do not fall back to alternative cache backend if selected one fails
Default behavior is to fall back to an alternative backend
if the uBO-selected one is not available. However there will be
no fall back when the `cacheStorageAPI` is set to one specific
backend by the user.
2019-02-20 07:05:45 -05:00
Raymond Hill
87feb47b51
Support disabling suspendTabsUntilReady in Firefox
The value of `suspendTabsUntilReady` was disregarded in Firefox and
uBO defaulted to always defer tab loading until it was ready.

This commit allows to disable the deferring of tab loading in
Firefox. The new valid values for `suspendTabsUntilReady` are:
- `unset`: leave it to the platform to pick the optimal
  behavior (default)
- `no`: do no suspend tab loading at launch time
- `yes`: suspend tab loading at launch time
2019-02-19 12:30:37 -05:00
Raymond Hill
928ab91ab8
Add support to benchmark the dynamic filtering pane
From uBO's dev console, type:
- `µBlock.sessionFirewall.benchmark();`

Keep in mind that it's the temporary ruleset being benchmarked.
2019-02-19 10:46:33 -05:00
Raymond Hill
93842a3f9c
Improve detection of invalid CSS selectors
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/389

Additionally, fix case of using potentially uninitialized variable
in preview mode. Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/425
2019-02-18 16:00:42 -05:00
Raymond Hill
426a6ea9a7
Fix spurious output at uBO's dev console
Regression from https://github.com/gorhill/uBlock/commit/0d369cda21bb
2019-02-18 14:41:04 -05:00
Raymond Hill
f7a632c94a
Fix regression preventing new install or reseting to factory default
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/431
2019-02-18 06:18:30 -05:00
Raymond Hill
27f7de7b96
Import translation work from https://crowdin.com/project/ublock 2019-02-17 16:11:36 -05:00
Raymond Hill
0d369cda21
Allow use of browser.storage.local as cache storage backend in Firefox
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/409

By default `indexedDB` is used in Firefox for purpose of cache storage
backend.

This commit allows to force the use of `browser.storage.local` instead
as cache storage backend. For this to happen, set `cacheStorageAPI` to
`browser.storage.local` in advanced settings.

Additionally, should `indexedDB` not be available for whatever reason,
uBO will automatically fallback to `browser.storage.local`.
2019-02-17 15:40:09 -05:00
Raymond Hill
3b81841dc0
Properly set resource URL in benchmark loop 2019-02-17 07:45:05 -05:00
Raymond Hill
d63592b11e
Remove obsolete code to translate |blob: filters into CSP filters
These filters are to be considered obsolete since they can't be
matched against network requests in the webRequest API.

They were probably meant to work when ABP was pre-webext, which
means they are quite probably obsolete and there is no longer
a point for uBO to conveniently translate them into CSP directives.
2019-02-16 19:25:15 -05:00
Raymond Hill
e93062bcdf
Spin-off FilterOrigin flavors into standalone classes
This removes the derivation of FilterOrigin flavors from
FilterOrigin itself and simplify code paths. FilterOrigin
flavors are small specialized classes, no need to
overcomplicate with derivation.

Specifically, this removes an indirect call to reach the
match() method.
2019-02-16 12:16:30 -05:00
Raymond Hill
5733439f62
Leverage whotracks.me's huge dataset of URLs for benchmark purpose
As seen at:
  https://whotracks.me/blog/adblockers_performance_study.html

The requests.json.gz file can be downloaded from:
  https://cdn.cliqz.com/adblocking/requests_top500.json.gz

Copy the file into ./tmp/requests.json.gz

If the file is present when you build uBO using `make-[target].sh` from
the shell, the resulting package will contain `./assets/requests.json`,
which will be looked-up by the method below to launch a benchmark
session.

From uBO's dev console, launch the benchmark:
  µBlock.staticNetFilteringEngine.benchmark();

The usual browser dev tools can be used to obtain useful profiling
data, i.e. start the profiler, call the benchmark method from the
console, then stop the profiler when it completes.

Keep in mind that the measurements at the blog post above where obtained
with ONLY EasyList. The CPU reportedly used was:
  https://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+i7-6600U+%40+2.60GHz&id=2608

Rename ./tmp/requests.json.gz to something else if you no longer want
./assets/requests.json in the build.
2019-02-15 16:18:03 -05:00
Raymond Hill
b1f7739cba
Import translation work from https://crowdin.com/project/ublock 2019-02-15 07:50:28 -05:00
Raymond Hill
515b7cdcfc
Use proper embedding context when evluating inline-script
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/422
2019-02-15 07:37:43 -05:00
Raymond Hill
ed7e34fb07
Refactor selfie generation into a more flexible persistence mechanism
The motivation is to address the higher peak memory usage at launch
time with 3rd-gen HNTrie when a selfie was present.

The selfie generation prior to this change was to collect all
filtering data into a single data structure, and then to serialize
that whole structure at once into storage (using JSON.stringify).

However, HNTrie serialization requires that a large UintArray32 be
converted into a plain JS array, which itslef would be indirectly
converted into a JSON string. This was the main reason why peak
memory usage would be higher at launch from selfie, since the JSON
string would need to be wholly unserialized into JS objects, which
themselves would need to be converted into more specialized data
structures (like that Uint32Array one).

The solution to lower peak memory usage at launch is to refactor
selfie generation to allow a more piecemeal approach: each filtering
component is given the ability to serialize itself rather than to be
forced to be embedded in the master selfie. With this approach, the
HNTrie buffer can now serialize to its own storage by converting the
buffer data directly into a string which can be directly sent to
storage. This avoiding expensive intermediate steps such as
converting into a JS array and then to a JSON string.

As part of the refactoring, there was also opportunistic code
upgrade to ES6 and Promise (eventually all of uBO's code will be
proper ES6).

Additionally, the polyfill to bring getBytesInUse() to Firefox has
been revisited to replace the rather expensive previous
implementation with an implementation with virtually no overhead.
2019-02-14 13:33:55 -05:00
Raymond Hill
2fb4dc8358
Update PSL library to latest official version 2019-02-12 12:00:20 -05:00
Raymond Hill
1e2969c3b0
Update PSL library to last version 2019-02-12 07:59:38 -05:00
Raymond Hill
0c976992ba
Import translation work from https://crowdin.com/project/ublock 2019-02-10 12:26:48 -05:00
Raymond Hill
4da340384a
Update publicSuffixLibrary to latest (WASM-able) version
See https://github.com/gorhill/publicsuffixlist.js
2019-02-10 12:19:05 -05:00
Raymond Hill
29b10d2151
Tone down logger visual for tab-less network requests 2019-02-05 12:05:00 -05:00
Raymond Hill
d432f78b66
Import translation work from https://crowdin.com/project/ublock 2019-02-05 07:04:52 -05:00
Raymond Hill
4c428edeef
Import translation work from https://crowdin.com/project/ublock 2019-02-02 08:14:47 -05:00
Raymond Hill
656203adc7
Minor generic code review of changes since 1.18.2 2019-02-02 08:09:34 -05:00
Raymond Hill
fc03782985
Ensure that WASM module was actually loaded 2019-02-01 09:09:51 -05:00
Raymond Hill
ff269d793d
Use indexedDB instead of for cacheStorageAPI value 2019-02-01 08:27:28 -05:00
Raymond Hill
69c87c5117
Fix Promise chain of WASM module load operations
The Promise chain was not properly designed for WASM module
loading. This became apparent when removing WASM modules
from Opera build[1].

The problem was that errors thrown by fetch() -- used to
load WASM modules -- were not properly handled.

[1] Opera refuses updating uBO if there are unrecognized file
types in the package, and `.wasm`/`.wat` files are not
recognized by Opera uploader.
2019-02-01 08:20:43 -05:00
Raymond Hill
923c5ce5bd
Compute URL of sublists as relative to URL of parent list
Related issue:
- https://github.com/NanoAdblocker/NanoCore/issues/239

The erroneous behavior was to compute the URL of a sublist as
relative to the URL of the root list, which may differ from the
URL of a parent list.
2019-01-29 11:52:16 -05:00
Raymond Hill
3195f554f7
Fix partyness evaluation for cases of base domain-less hostnames
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/402
2019-01-29 10:34:58 -05:00
Raymond Hill
98307e07cb
Import translation work from https://crowdin.com/project/ublock 2019-01-28 16:22:41 -05:00
Raymond Hill
d7c169c587
Import translation work from https://crowdin.com/project/ublock 2019-01-27 17:24:26 -05:00
Raymond Hill
15100459b3
Harden content script's message Port against spurious disconnections
Those spurious disconnections have been observed to occur at
uBO's launch time.

Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/403

I have observed that this fixes an issue observed on Firefox 64
(current stable).

The reported Waterfox issue *may* be fixed as a result. If not,
the issue he still considered fixed as Waterfox is not
officially supported.
2019-01-27 17:07:40 -05:00
Raymond Hill
85d6339b07
Code review for a026e9ae54: no need to be so flexible 2019-01-25 18:58:49 -05:00
Raymond Hill
a026e9ae54
Fix reverting use of IndexedDB as default cache storage on Chromium
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/399

The advanced setting `cacheStorageAPI` has been added to allow
a user to force the use of IndexedDB as cache storage. Set to
`IndexedDB` to force use of IndexedDB. Default to `unset`.
2019-01-25 18:49:30 -05:00
Raymond Hill
185ebf0d7d
Import translation work from https://crowdin.com/project/ublock 2019-01-25 08:47:39 -05:00
Raymond Hill
ba7baec1f4
Import translation work from https://crowdin.com/project/ublock 2019-01-24 07:06:43 -05:00
Raymond Hill
b214ec1bae
Ensure pointer-events style is set to auto at element picker launch
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/393
2019-01-23 17:11:07 -05:00
Raymond Hill
be76714cfc
Import translation work from https://crowdin.com/project/ublock 2019-01-22 06:53:09 -05:00
Raymond Hill
9e89dd4f26
Fix missing partyness in logger when empty domain in resource URL 2019-01-22 06:13:30 -05:00
Raymond Hill
a668893427
Import translation work from https://crowdin.com/project/ublock 2019-01-21 12:18:10 -05:00
Raymond Hill
64e0498084
Import translation work from https://crowdin.com/project/ublock 2019-01-20 12:35:25 -05:00
Raymond Hill
16a0ebbfb0
Import translation work from https://crowdin.com/project/ublock 2019-01-19 09:09:37 -05:00
Raymond Hill
1de821d99b
Apply stricter rejection of usage of url() in :style rules 2019-01-18 19:07:31 -05:00
Raymond Hill
6d19c4be88
Import translation work from https://crowdin.com/project/ublock 2019-01-18 06:57:47 -05:00
Raymond Hill
ff6991c292
Import translation work from https://crowdin.com/project/ublock 2019-01-17 15:54:43 -05:00
Raymond Hill
52526b74d9
Minor visual change to logger 2019-01-17 15:49:18 -05:00
Raymond Hill
299afacd99
Import translation work from https://crowdin.com/project/ublock 2019-01-17 08:07:24 -05:00
Raymond Hill
4df8e9be41
Add logger "Export"-related strings for i18n 2019-01-17 08:03:50 -05:00
Raymond Hill
801eb43572
Prevent info entries from polluting logger output
These entries are meant to be shown only when using "All"
mode, not when the output is narrowed to a specific tab.
2019-01-16 13:29:34 -05:00
Raymond Hill
0c80994124
Fine tune visuals in logger's export-to-clipboard dialog 2019-01-16 12:02:16 -05:00
Raymond Hill
5f341e02ed
Import translation work from https://crowdin.com/project/ublock 2019-01-16 07:32:18 -05:00
Raymond Hill
e8ff6a2abf
Prevent sites from disabling mouse events for element picker
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/380

Previous fix was incorrect:
84818fcd84

Additionally, I fixed the "Network filters" or "Cosmetic filters"
sections not being properly hidden when there was not valid
filters found.
2019-01-15 16:34:57 -05:00
Raymond Hill
86e5d0384c
Fix minor logger quirks as per feedback 2019-01-15 15:12:47 -05:00
Raymond Hill
84818fcd84
Prevent sites from disabling mouse events for the element picker
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/380
2019-01-15 14:41:23 -05:00
Raymond Hill
0b73808bf7
Import translation work from https://crowdin.com/project/ublock 2019-01-15 08:42:28 -05:00
Raymond Hill
3b206fd224
Put back 'Static filter' instead of just 'Filter' 2019-01-15 08:32:39 -05:00
Raymond Hill
b0fb6d678d
Fix regression from 0edf53f508 (diff-a51c8c4aedf62ea9aec5e71f3b1427c3R624) 2019-01-15 08:18:45 -05:00
Raymond Hill
5d5b05b387
Fix an issue in new logger export feature
Specifically, if selecting table+markdown, the export dialog
would no longer be accessible once closed.
2019-01-14 16:52:13 -05:00
Raymond Hill
ac5bae6a65
Import translation work from https://crowdin.com/project/ublock 2019-01-14 15:10:28 -05:00
Raymond Hill
0edf53f508
Add export-to-clipboard feature to logger
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/334

Additionally, a number of smallish issues following
refactoring of the logger code were addressed.
2019-01-14 14:57:31 -05:00
Raymond Hill
88a54d442d
Import translation work from https://crowdin.com/project/ublock 2019-01-14 08:08:09 -05:00
Raymond Hill
3be59f172d
Use blocked/allowed colors in logger's "Details" pane
Additionally, another attempt at making the logger render
better on small-screen devices.
2019-01-13 08:34:17 -05:00
Raymond Hill
10f1fdcb7c
Import translation work from https://crowdin.com/project/ublock 2019-01-12 17:22:55 -05:00
Raymond Hill
9fd63bdbe6
Merge branch 'master' of github.com:gorhill/uBlock into nextdev 2019-01-12 17:06:07 -05:00
Raymond Hill
be0c7186a2
Import translation worl from https://crowdin.com/project/ublock 2019-01-12 17:05:41 -05:00
Raymond Hill
ed5d63df69
Grand refactoring of the logger
Performance-related work: the logger data has been decoupled
from the DOM -- inspired from CodeMirror's way of efficiently
handling large amout of text data.

This decoupling now makes the logger highly efficient CPU- and
memory-wise, and open the way to more possibilities.

Ability to configure some aspect of the logger behavior and
visuals:
- The hard-coded limit of 5000 entries has been
  removed and is now replaced with a variety of
  user-configurable settings to enforce the discarding of
  logger entries.
- Some columns in the logger output can now be hidden.

The filter list look-up feature has been merged into the
existing overlay dialog used to create URL rules or static
filters, as an entry in a new "Details" pane.

Other issues addressed during refactoring:
- https://github.com/uBlockOrigin/uBlock-issues/issues/280
- https://github.com/gorhill/uBlock/issues/1999

The minimum version supported on Firefox has been bumped
up to 55.0.
2019-01-12 16:36:20 -05:00
Raymond Hill
407aa68272
Merge branch 'master' of github.com:gorhill/uBlock into nextdev 2019-01-08 08:08:16 -05:00
Raymond Hill
f1f1892233
Import translation work from https://crowdin.com/project/ublock 2019-01-08 07:57:49 -05:00
Raymond Hill
64bea27881
Add ability to control auto-commenting at filter creation time
Related issues:
- https://github.com/uBlockOrigin/uBlock-issues/issues/372
- https://github.com/gorhill/uBlock/issues/93

A new advanced settings has been added: `autoCommentFilterTemplate`.

Default value is `{{date}} {{origin}}`.

Placeholders are identified by `{{...}}`. There are currently
only three placeholders supported:

- `{{date}}`: will be replaced with current date
- `{{time}}`: will be replaced with current time
- `{{origin}}`: will be replaced with site information on which
  the filter(s) was created

If no placeholder is found in `autoCommentFilterTemplate`, this
will disable auto-commenting. So one can use `-` to disable
auto-commenting.

Additionally, if auto-commenting is enabled, uBO will not emit a
comment if an emitted comment would be a duplicate of the last
one found in the user filter list.
2019-01-08 07:37:50 -05:00
Raymond Hill
2c4535d1fe
Prevent spurious disappearance of built-in expression filters panel
After a bit more testing following
<38b73f7100>.

Hovering the mouse cursor over the margin area would cause the panel
to spuriously disappear.
2019-01-01 16:31:54 -05:00
Raymond Hill
dbca18ebe1
Expand built-in filter expression panel by default
In light of <38b73f7100>,
it makes sense to now have the panel expanded by default.
2019-01-01 16:31:38 -05:00
Raymond Hill
76eb3e9d03
Hide built-in expressions panel in logger when cursor leaves panel 2019-01-01 16:31:19 -05:00
Raymond Hill
24cb894aa0
Prevent spurious disappearance of built-in expression filters panel
After a bit more testing following
<38b73f7100>.

Hovering the mouse cursor over the margin area would cause the panel
to spuriously disappear.
2019-01-01 11:43:41 -05:00
Raymond Hill
0867a15d36
Expand built-in filter expression panel by default
In light of <38b73f7100>,
it makes sense to now have the panel expanded by default.
2019-01-01 11:34:24 -05:00
Raymond Hill
38b73f7100
Hide built-in expressions panel in logger when cursor leaves panel 2019-01-01 11:18:14 -05:00
Raymond Hill
d8674d8abe
Merge changes from master 2018-12-31 12:11:28 -05:00
Raymond Hill
08261e3c15
Change DOM surveyor to time-based processing logic (from chunk-based)
The DOM surveyor will now use time-based logic to spread its work
over time. This allows the surveying to better scale down on
slower devices.

Additionally, the DOM surveyor code has been reworked to lower as
much as possible memory churning when collating nodes to survey.

This rework has been motivated after profiling the "monstrous DOM"
seen in the following page:
<https://doc.rust-lang.org/std/iter/trait.Iterator.html>

The idea is that making the DOM surveyor efficient on such
"monstrous DOM" case should make it efficient everywhere in
practice.
2018-12-31 11:50:40 -05:00
Raymond Hill
f35dff2c9d
Code review related to performance in main content script
- Avoid concatenating with empty array: though the concatenated
  array is empty, this still forces the creation of a whole new
  array as per semantic of Array.prototype.concat().
  <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/concat>

- Do not convert arrays to strings when sending data to
  main process in surveyPhase1(): I no longer see any benefit
  doing so in profiling data (if I recall properly this was
  benefiting Firefox, but I can't remember for sure anymore why
  I chose to do so back then).
2018-12-29 16:34:46 -05:00
Raymond Hill
09fb3549f3
Improve creation of rows in dynamic filtering pane of popup panel
- Reuse existing rows without first removing them
- New rows appended all at once through DocumentFragment
2018-12-29 08:43:44 -05:00
Raymond Hill
87cf95c04b
Avoid redundant DOM attributes in dynamic filtering pane
Move redundant attributes in cells to parent row; use
Element.closest() to look-up these attributes when needed.
2018-12-29 06:54:05 -05:00
Raymond Hill
8eda70bce2
Import translation work from https://crowdin.com/project/ublock 2018-12-28 13:06:39 -05:00
Raymond Hill
4e2a8a0ce0
Fix vertical centering of hostnames in dynamic filtering pane
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/358

Additionally, use `display: none;` to unburden the browser
renderer from taking into account the `sup` element since
most of the time it is unused.
2018-12-28 12:56:56 -05:00
Raymond Hill
c78fa16e5b
Fine tune spacing of per-site switches
Hopefully this will fix the issue seen on Firefox for Android: for
some reasons, the popup panel's default size is now more zoomed
out than it used to be in latest stable release.

Additionally, I fixed the syntactically incorrect instances of
:before and :after.
2018-12-28 09:03:32 -05:00
Raymond Hill
f6dde894cb
Decrease a bit the space between extra tools at bottom of popup panel
Since the counts are now limited to two characters, no point
allocating more space than needed.
2018-12-27 11:24:32 -05:00
Raymond Hill
ab2efd1b84
Import translation work from https://crowdin.com/project/ublock 2018-12-27 10:21:25 -05:00
Raymond Hill
eb1428c8bb
Fix regression in the collapsing of blocked resources
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/356
2018-12-27 10:17:08 -05:00
Raymond Hill
8a88e9d931
Support CSS selectors mixed w/ operators in procedural cosmetic filters
Related issue:
- https://github.com/gorhill/uBlock/issues/3683

This commit further increases uBO's procedural cosmetic filters
Adguard's cosmetic filter syntax -- specifically those procedural
cosmetic filters where plain CSS selectors appeared following
a procedural oeprator (this was rejected as invalid by uBO).

Also, experimental support for `:watch-attrs` procedural
operator, as discussed in <https://github.com/uBlockOrigin/uBlock-issues/issues/341#issuecomment-449765525>.
Support may be dropped before next release depending on whether
a better solution is suggested.

Additionally, the usual opportunistic refactoring toward ES6
syntax.
2018-12-26 10:45:19 -05:00
Raymond Hill
e4cec5a15e
Add missing CSS rule for FA "exclamation-triangle" icon 2018-12-26 10:41:25 -05:00
Raymond Hill
2ba1cd7dc3
Import translation work from https://crowdin.com/project/ublock 2018-12-26 06:53:46 -05:00
Raymond Hill
0ffa4b91de
Minor code review
- Make FA icons non-selectable, because of spurious selection
  on Firefox for Android when merely tapping an icon
- Disable spellchecking in the static network filter editor
  in the logger
2018-12-25 10:28:32 -05:00
Raymond Hill
f4b9549d05
Remove use of background color style on the logger's input fields
Related feedback from the following issue:
- https://github.com/gorhill/uBlock/issues/787#issuecomment-449531979
2018-12-24 10:23:21 -05:00
Raymond Hill
be9e7fd11c
Code review related to the early blocking of network requests at launch 2018-12-24 08:56:35 -05:00
Raymond Hill
fe595bb2b9
Import translation work from https://crowdin.com/project/ublock 2018-12-24 08:11:20 -05:00
Raymond Hill
4d540f3ffa
Import translation work from https://crowdin.com/project/ublock 2018-12-23 18:04:21 -05:00
Raymond Hill
41548be6be
Move early blocking of requests out of experimental status on Firefox
Related issues:
- https://github.com/gorhill/uBlock/issues/2067
- https://github.com/uBlockOrigin/uBlock-issues/issues/128

Related mozbug issue:
- https://bugzilla.mozilla.org/show_bug.cgi?id=1503721
2018-12-23 17:59:31 -05:00
Raymond Hill
99cdec5ba6
Informal code review to tidy up logger buffer fetching implementation 2018-12-23 15:35:32 -05:00
Raymond Hill
ddee2bff13
Import translation work from https://crowdin.com/project/ublock 2018-12-23 14:26:49 -05:00
Raymond Hill
6ac0c66813
Left-align text in "type" column in the logger
Feedback in related issue:
- https://github.com/gorhill/uBlock/issues/3654#issuecomment-449649399
2018-12-23 14:12:14 -05:00
Raymond Hill
f1567ee272
Prevent spurious wrapping of text in logger's expression picker
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/351
2018-12-23 09:18:37 -05:00
Raymond Hill
e2d1f50dd8
Normalize Adguard's plain cosmetic filters disguised as style-based filters
Reported by https://github.com/uBlock-user in
https://github.com/orgs/uBlockOrigin/teams/ublock-issues-volunteers/discussions/56

For some reasons, many cosmetic filters in Adguard's Annoyance List
are plain cosmetic filters disguised as style-based cosmetic filters,
and this was breaking uBO's ability to reverse lookup such filters
from the logger.
2018-12-23 08:58:03 -05:00
Raymond Hill
13ce898e52
Import translation work from https://crowdin.com/project/ublock 2018-12-22 15:53:26 -05:00
Raymond Hill
91144c4edc
Allow creating broad cosmetic filters directly from the picker
Using the Ctrl key while cliking an element on the page will cause
the picker to choose a broad cosmetic filter as candidate.
2018-12-22 15:44:23 -05:00
Raymond Hill
d574a09784
Make the element picker dialog slowly fade away when made discrete
This fixes the following issues:
- https://github.com/gorhill/uBlock/issues/3449
- https://github.com/uBlockOrigin/uBlock-issues/issues/55
2018-12-22 15:09:38 -05:00
Raymond Hill
69668d27b1
Ensure the text cursor in visible when a CodeMirror editor is resized
Related issues:
- https://github.com/gorhill/uBlock/issues/3706
- https://github.com/gorhill/uBlock/issues/3701
2018-12-22 13:35:46 -05:00
Raymond Hill
cd597709bb
Remember cursor position in "My filters" for next visit
Related issue:
- https://github.com/gorhill/uBlock/issues/3706
2018-12-22 13:09:56 -05:00
Raymond Hill
2be36ffe81
Fix bad alignment in comments 2018-12-22 12:26:50 -05:00
Raymond Hill
f3773ef6eb
Internationalize CodeMirror's hard-coded tooltips in the "My rules" pane
Related issue:
- https://github.com/gorhill/uBlock/issues/3708

This was brought into the issue above but I ended up forgotting
about it after I focused mostly on the second issue brought up
in there.
2018-12-22 11:55:13 -05:00
Raymond Hill
ba81f79d1b
Limit count badges of per-site tools to 99 in the popup panel
This is a revised fix as per feedback in the following issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/279#issuecomment-449531436
2018-12-22 11:19:44 -05:00
Raymond Hill
b9b0c3fba4
Remove the (confusing) "eventful" logger output filtering expression
This will render the following issue obsolete:
- https://github.com/uBlockOrigin/uBlock-issues/issues/349
2018-12-22 08:41:05 -05:00
Raymond Hill
ea3e3b6440
Inject inline-script logger scriptlet at document_end
Feedback from related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/343#issuecomment-449529429
2018-12-22 08:33:42 -05:00
Raymond Hill
c8fcdedc44
Report inline script tags in logger if present in document
Related issue:
    - https://github.com/uBlockOrigin/uBlock-issues/issues/343
2018-12-21 14:17:47 -05:00
Raymond Hill
e9d76b3575
Report inline script tags in logger if present in document
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/343
2018-12-21 14:16:17 -05:00
Raymond Hill
30093dc990
Remove (broken) benchmark pane 2018-12-21 12:02:23 -05:00
Raymond Hill
610ca2684b
Remove (broken) benchmark pane 2018-12-21 12:01:24 -05:00
Raymond Hill
2849dbb805
Fix duplicate entry in URL filtering dialog: https://github.com/gorhill/uBlock/issues/3401 2018-12-21 10:09:29 -05:00
Raymond Hill
21593dbfdd
Fix broken link 2018-12-21 08:41:53 -05:00
Raymond Hill
abd5a975ba
Further fine tune layout for small screen devices; use SVG for icon
Related issues:
- https://github.com/uBlockOrigin/uBlock-issues/issues/348
- https://github.com/uBlockOrigin/uBlock-issues/issues/249
2018-12-21 08:16:24 -05:00
Raymond Hill
aeff011d4c
Remove obsolete comment 2018-12-21 07:32:23 -05:00
Raymond Hill
55f2014e8c
Fine tune layout fix: https://github.com/uBlockOrigin/uBlock-issues/issues/348 2018-12-21 07:31:11 -05:00
Raymond Hill
0ce42fa23d
Apply fix to diff code as per http://www.mathertel.de/Diff/DiffTest.aspx?oldfile=Diff.cs.v1&newfile=Diff.cs.v2 2018-12-20 18:57:06 -05:00
Raymond Hill
423deceb01
Import translation work from https://crowdin.com/project/ublock 2018-12-20 17:38:14 -05:00
Raymond Hill
291b08a8e6
Fine tune the space between power button and basic tools 2018-12-20 17:31:56 -05:00
Raymond Hill
3730d7d128
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/40 2018-12-20 17:29:39 -05:00
Raymond Hill
04d17a3d84
Fix missing reload icon in filter creation dialog
Regression from bb737e29d5
2018-12-20 08:57:14 -05:00
Raymond Hill
ef97379e89
Possibly fix https://github.com/uBlockOrigin/uBlock-issues/issues/348, need to confirm with next dev build 2018-12-20 08:52:23 -05:00
Raymond Hill
540c311438
Fix https://twitter.com/arneblankerts/status/1075402247725637633, regression @ d3a3505a54 (diff-1c951eedcd0be2e11c02da8fabcc46b5R380) 2018-12-19 17:44:17 -05:00
Raymond Hill
6bc22ab4ba
Convert uBO's svg-based icon into a stylable svg symbol-based icon 2018-12-19 16:21:23 -05:00
Raymond Hill
42d337c706
Import translation work from https://crowdin.com/project/ublock 2018-12-19 14:10:54 -05:00
Raymond Hill
bb737e29d5
Revert use of Fontawesome v5; use 4.7 or equivalent: see <>https://github.com/uBlockOrigin/uBlock-issues/issues/249#issuecomment-448587658 2018-12-19 14:05:19 -05:00
Raymond Hill
350c106d41
Add attribution for Fontawesome 5 2018-12-18 18:03:56 -05:00
Raymond Hill
feed1180b9
Import translation work from https://crowdin.com/project/ublock 2018-12-18 17:28:24 -05:00
Raymond Hill
61d95aa60f
Move builtin filter expr button inside input field 2018-12-18 17:23:03 -05:00
Raymond Hill
0dcd77d352
Import translation work from https://crowdin.com/project/ublock 2018-12-18 16:52:27 -05:00
Raymond Hill
2b84bdcc83
Improve contextual information for translators 2018-12-18 16:37:07 -05:00
Raymond Hill
f4138fbff5
minor visual fine tuning to popup panel header 2018-12-18 16:24:37 -05:00
Raymond Hill
5dca5285e2
Fix regression introduced in 9b27a98f90 (diff-f7413cbfa6561a980810c682fa4b1a12R638) 2018-12-18 14:00:23 -05:00
Raymond Hill
2e7654d429
Relax semantic of leading/trailing pipes in filter expressions in logger 2018-12-18 13:37:01 -05:00
Raymond Hill
79905aa798
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/279; partially fix https://github.com/uBlockOrigin/uBlock-issues/issues/249 2018-12-18 13:35:44 -05:00
Raymond Hill
56f7505ad8
Further improve logger along with fixes to specific logger issues
- Add tooltip support (not yet complete):
  https://github.com/gorhill/uBlock/issues/1222
- Add a link to logger documentation:
  https://github.com/gorhill/uBlock/issues/2876#issuecomment-322905413
- Migrate to from fontawesome font to svgs:
  https://github.com/uBlockOrigin/uBlock-issues/issues/249
2018-12-17 13:54:17 -05:00
Raymond Hill
9d756147cf
Start work toward fixing https://github.com/uBlockOrigin/uBlock-issues/issues/249 2018-12-17 13:53:24 -05:00
Raymond Hill
dfcd23197d
Fix parsing of redirect= option as per 67e06f53b4 (commitcomment-27803901) 2018-12-17 07:46:04 -05:00
Raymond Hill
b0da5df0a0
include "scripting" in row filterer builtin "script" expression 2018-12-16 15:33:03 -05:00
Raymond Hill
aa50dc00d2
add built-in expressions to logger's row filterer (see #787) 2018-12-16 15:26:38 -05:00
Raymond Hill
d3a3505a54
fix regression in 8f05a2f8d3 (related issue: #3683) 2018-12-16 09:17:26 -05:00
Raymond Hill
8214a0b17d
Improve tooltip for partyness information in logger 2018-12-15 12:23:13 -05:00
Raymond Hill
261ef8c510
Add support for procedural :not to HTML filtering
Related issue: <https://github.com/gorhill/uBlock/issues/3683>

Additionally, improve compile-time error reporting in the logger
2018-12-15 10:46:17 -05:00
Raymond Hill
d2a7ada0b0
fix https://github.com/uBlockOrigin/uBlock-issues/issues/341 2018-12-14 17:55:22 -05:00
Raymond Hill
8f05a2f8d3
fix https://github.com/uBlockOrigin/uBlock-issues/issues/341, and further work for https://github.com/gorhill/uBlock/issues/3683 2018-12-14 15:25:18 -05:00
Raymond Hill
932c13bfa0
drop deprecated windowType from windows.get() 2018-12-14 14:15:43 -05:00
Raymond Hill
5b7a3c9983
fix https://github.com/uBlockOrigin/uBlock-issues/issues/256; add regex support in logger filter field 2018-12-14 11:01:21 -05:00
Raymond Hill
2f1d319072
code review: don't remember tabless network requests in behind-the-scene scope 2018-12-14 08:47:29 -05:00
Raymond Hill
1d7e3e8f82
fix https://github.com/uBlockOrigin/uBlock-issues/issues/339 2018-12-14 07:03:19 -05:00
Raymond Hill
9b27a98f90
Fix https://github.com/gorhill/uBlock/issues/3654
Additionally, there has been refactoring work done regarding
filtering context used throughout uBO, motivated by the fix
here.
2018-12-13 12:30:54 -05:00
Raymond Hill
90c073882e
fix not discarding empty hostnames: 912af3284d (commitcomment-31608689) 2018-12-08 17:23:36 -05:00
Raymond Hill
a34254122a
release indexeddb ref when unused; promisify some io code 2018-12-07 16:51:18 -05:00
gwarser
cb9acd7028 fix https://github.com/uBlockOrigin/uBlock-issues/issues/332 (#3746) 2018-12-06 13:29:25 -05:00
Raymond Hill
969900efa5
import translation work from https://crowdin.com/project/ublock 2018-12-06 10:23:49 -05:00
Raymond Hill
3075582c72
fix https://github.com/uBlockOrigin/uBlock-issues/issues/314 2018-12-06 10:18:19 -05:00
Raymond Hill
96703325ea
fix https://github.com/uBlockOrigin/uBlock-issues/issues/225 2018-12-06 09:36:41 -05:00
Raymond Hill
f655223779
fix https://github.com/uBlockOrigin/uBlock-issues/issues/292 2018-12-06 09:29:17 -05:00
Raymond Hill
ed265e5f68
fix https://github.com/uBlockOrigin/uBlock-issues/issues/331 2018-12-06 08:50:13 -05:00
Raymond Hill
e7d4aff2a2
fix https://github.com/uBlockOrigin/uBlock-issues/issues/328 2018-12-05 19:18:20 -05:00
Raymond Hill
0d6a18207a
fix https://github.com/uBlockOrigin/uBlock-issues/issues/329 2018-12-05 15:57:41 -05:00
Raymond Hill
1b6fea16da
3rd-gen hntrie, suitable for large set of hostnames 2018-12-04 13:02:09 -05:00
Raymond Hill
bf28a83e2d
code review re cd7b1c0eb4 2018-12-03 08:07:54 -05:00
Raymond Hill
cd7b1c0eb4
fix https://github.com/uBlockOrigin/uBlock-issues/issues/325 2018-12-02 21:41:28 -05:00
Raymond Hill
c3b0fd31f6
import translation work from https://crowdin.com/project/ublock 2018-12-01 08:57:37 -05:00
Raymond Hill
75d9cf3055
fix https://github.com/uBlockOrigin/uBlock-issues/issues/313 2018-11-26 12:02:32 -05:00
Raymond Hill
bf266eb757
recompile wat file using latest https://github.com/WebAssembly/wabt/releases 2018-11-25 12:12:07 -05:00
Raymond Hill
5d98a88093
revert unintended stray change from commit 4504040344 2018-11-24 12:21:25 -05:00
Raymond Hill
95ffc138f2
import translation work from https://crowdin.com/project/ublock 2018-11-24 12:11:58 -05:00
Raymond Hill
4504040344
minor code review: do not cache hostname/domain pairs when parsing filters 2018-11-24 12:09:27 -05:00
Raymond Hill
2a91a685ce
code review: fix handling of too long needles 2018-11-19 14:04:26 -05:00
Raymond Hill
a3051842bb
fix returning the wrong value (re https://github.com/uBlockOrigin/uBlock-issues/issues/6) 2018-11-18 05:56:13 -05:00
Raymond Hill
e39ecc466f
import translation work from https://crowdin.com/project/ublock 2018-11-17 05:59:29 -05:00
Raymond Hill
2189f020df
add new advanced setting to disable use of WASM for dev purpose 2018-11-16 10:19:06 -05:00
Raymond Hill
be5bed817a
import translation work from https://crowdin.com/project/ublock 2018-11-08 09:09:08 -02:00
Raymond Hill
12a2fac659
Merge branch 'master' of github.com:gorhill/uBlock 2018-11-08 09:03:54 -02:00
Raymond Hill
9eba215961
fix missing trailing asterisk in filter representation in the logger
Issue unearthed in https://github.com/uBlockOrigin/uAssets/issues/4083#issuecomment-436914727
2018-11-08 09:01:41 -02:00
Saitama
574631fd35 update prefetching doc link (#3742) 2018-11-08 07:16:35 -02:00
Raymond Hill
6d00583a50
fix blob: case as per feedback https://github.com/uBlockOrigin/uBlock-issues/issues/283#issuecomment-436371415 2018-11-06 17:22:09 -02:00
Raymond Hill
894dbb38d8
import translation work from https://crowdin.com/project/ublock 2018-11-06 16:29:43 -02:00
Raymond Hill
835dcd41f2
code review for 7d100f7b21: just the very slow opportunistic walk toward full ES6 code base 2018-11-06 16:20:44 -02:00
Raymond Hill
7d100f7b21
fix https://github.com/uBlockOrigin/uBlock-issues/issues/283 2018-11-06 16:11:03 -02:00
Raymond Hill
19b7cbca55
minor review of hntrie code 2018-11-06 13:38:37 -02:00
Raymond Hill
a42513aa2f
minor code review 2018-11-04 19:26:02 -02:00
Raymond Hill
95899a0d1d
be explicit about where the related wasm file is fetched 2018-11-04 18:52:25 -02:00
Raymond Hill
d7d544cda0
Squashed commit of the following:
commit 7c6cacc59b27660fabacb55d668ef099b222a9e6
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sat Nov 3 08:52:51 2018 -0300

    code review: finalize support for wasm-based hntrie

commit 8596ed80e3bdac2c36e3c860b51e7189f6bc8487
Merge: cbe1f2e 000eb82
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sat Nov 3 08:41:40 2018 -0300

    Merge branch 'master' of github.com:gorhill/uBlock into trie-wasm

commit cbe1f2e2f38484d42af3204ec7f1b5decd30f99e
Merge: 270fc7f dbb7e80
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Fri Nov 2 17:43:20 2018 -0300

    Merge branch 'master' of github.com:gorhill/uBlock into trie-wasm

commit 270fc7f9b3b73d79e6355522c1a42ce782fe7e5c
Merge: d2a89cf d693d4f
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Fri Nov 2 16:21:08 2018 -0300

    Merge branch 'master' of github.com:gorhill/uBlock into trie-wasm

commit d2a89cf28f0816ffd4617c2c7b4ccfcdcc30e1b4
Merge: d7afc78 649f82f
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Fri Nov 2 14:54:58 2018 -0300

    Merge branch 'master' of github.com:gorhill/uBlock into trie-wasm

commit d7afc78b5f5675d7d34c5a1d0ec3099a77caef49
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Fri Nov 2 13:56:11 2018 -0300

    finalize wasm-based hntrie implementation

commit e7b9e043cf36ad055791713e34eb0322dec84627
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Fri Nov 2 08:14:02 2018 -0300

    add first-pass implementation of wasm version of hntrie

commit 1015cb34624f3ef73ace58b58fe4e03dfc59897f
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Wed Oct 31 17:16:47 2018 -0300

    back up draft work toward experimenting with wasm hntries
2018-11-03 08:58:46 -03:00
Raymond Hill
000eb82f08
import translation work from https://crowdin.com/project/ublock 2018-11-03 08:24:20 -03:00
Raymond Hill
b94b3417d1
do not overwrite prior results 2018-11-03 08:08:30 -03:00
Raymond Hill
dbb7e80e3c
import translation work from https://crowdin.com/project/ublock 2018-11-02 17:20:02 -03:00
Raymond Hill
ead324d859
GPLv3 requirement: "includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice" 2018-11-02 17:16:44 -03:00
Raymond Hill
d693d4fba3
add new "Benchmarks" pane in dashboard
Purpose is strictly for development purpose. The new pane can
be enabled by setting the advanced setting `benchmarkingPane`
to  `true`.
2018-11-02 16:18:50 -03:00
Raymond Hill
23cd2e1d4a
make "none" a reserved "redirect=" keyword (see deefe87555) 2018-10-31 19:34:54 -03:00
Raymond Hill
6d9382a501
fix https://github.com/uBlockOrigin/uBlock-issues/issues/77 2018-10-29 09:56:51 -03:00
Raymond Hill
fdb1f00086
import translation work from https://crowdin.com/project/ublock 2018-10-28 11:04:42 -03:00
Raymond Hill
9039874fc9
refactor some webRequest-related code (now that firefox legacy is out of the way) 2018-10-28 10:58:25 -03:00
Raymond Hill
5e08d083e0
forgot to link to issue (re https://github.com/uBlockOrigin/uBlock-issues/issues/248) 2018-10-25 11:10:21 -03:00
Raymond Hill
5f66f03c69
regression from cabb0d36b6: avoid counting "badfilter" entries as actual filters 2018-10-24 20:06:27 -03:00
Raymond Hill
c0fc7dd869
fix https://github.com/uBlockOrigin/uBlock-issues/issues/248 2018-10-24 20:02:15 -03:00
Raymond Hill
1670014e42
import translation work from https://crowdin.com/project/ublock 2018-10-24 10:15:32 -03:00
Raymond Hill
3a85158dbb
fix regression from cabb0d36b6 regarding filter used count per list 2018-10-24 06:55:04 -03:00
Raymond Hill
cabb0d36b6
fix https://github.com/gorhill/uBlock/issues/3371 2018-10-23 14:01:08 -03:00
Raymond Hill
5fd3f82205
Update README.md 2018-10-19 12:02:04 -03:00
Raymond Hill
3076b0f4fa
include source code of lz4-block-codec.wasm for reviewers 2018-10-19 11:56:28 -03:00
Raymond Hill
c564e23e1f
import translation work from https://crowdin.com/project/ublock 2018-10-17 21:27:14 -03:00
Raymond Hill
b8720b83de
fix https://github.com/uBlockOrigin/uBlock-issues/issues/6 2018-10-17 11:52:34 -03:00
Raymond Hill
c192045e1d
fix https://github.com/uBlockOrigin/uBlock-issues/issues/264 2018-10-15 14:15:00 -03:00
Raymond Hill
d870ee147d
comment out console-logging of information (useful only for development purpose) 2018-10-01 10:14:06 -04:00
Raymond Hill
832c6f0a31
fix https://github.com/uBlockOrigin/uMatrix-issues/issues/64 by importing CodeMirror 5.40.2 2018-09-26 06:38:02 -04:00
Raymond Hill
cd919d0013
import translation work from https://crowdin.com/project/ublock 2018-09-23 08:20:03 -04:00
Raymond Hill
5f3ebafbf2
minor code review 2018-09-21 09:27:41 -04:00
Raymond Hill
e107cbb370
revised fix for https://github.com/uBlockOrigin/uBlock-issues/issues/229 2018-09-21 09:16:46 -04:00
Raymond Hill
6544ff5c56
fix https://github.com/uBlockOrigin/uBlock-issues/issues/229 2018-09-18 17:05:53 -04:00
Raymond Hill
a57450e1a0
fix https://github.com/uBlockOrigin/uBlock-issues/issues/228 2018-09-18 15:21:00 -04:00
Raymond Hill
c999b278c3
import translation work from https://crowdin.com/project/ublock 2018-09-18 07:48:58 -04:00
Raymond Hill
6815c85521
add info about the script used to generate the web-accessible resouces 2018-09-14 08:02:27 -04:00
Raymond Hill
9f7b92a6ce
import translation work from https://crowdin.com/project/ublock 2018-09-11 08:47:18 -04:00
Raymond Hill
b5ef2d0105
code review for https://github.com/gorhill/uBlock/commit/0322d03303cd -- fix handling of rc versions 2018-09-11 08:42:02 -04:00
Raymond Hill
0322d03303
fix https://github.com/uBlockOrigin/uBlock-issues/issues/212 2018-09-11 08:37:32 -04:00
Raymond Hill
cc4bf3581f
add ampproject.org/v0.js as a web-accessible-resources 2018-09-09 18:11:44 -04:00
Raymond Hill
183caa2782
fix regression from ba32c6a473 2018-09-09 18:08:07 -04:00
Raymond Hill
d5ddf837fa
fix a generic exception preventing a lowly-generic complex cosmetic filter from being applied 2018-09-09 13:15:43 -04:00
Raymond Hill
06fe7e6871
code review for static extended filtering, notably:
- use domain-derived integer hash to store filters

- remove code meant for firefox/legacy

- properly handle subdomains of entity-based filters
2018-09-09 08:10:09 -04:00
Raymond Hill
1ae0272de2
import translation work from https://crowdin.com/project/ublock 2018-09-07 10:55:29 -04:00
Raymond Hill
1d108082b7
minor code review re. 8b5a7aa398 2018-09-07 10:52:10 -04:00
Raymond Hill
8b1c39507e
minor code review: use URL() to lookup query parameters 2018-09-07 10:43:58 -04:00
Raymond Hill
8b5a7aa398
remove context menu entry and picker tools for whitelisted sites 2018-09-07 10:42:59 -04:00
Raymond Hill
89c073f3e9
fix https://github.com/uBlockOrigin/uBlock-issues/issues/209 2018-09-07 09:11:07 -04:00
Raymond Hill
108fb425fc
fix typo in comment 2018-09-06 12:55:57 -04:00
Raymond Hill
ba32c6a473
fix https://github.com/uBlockOrigin/uBlock-issues/issues/208 2018-09-06 12:51:50 -04:00
Raymond Hill
28cb2e4f4d
import translation work from https://crowdin.com/project/ublock 2018-09-05 11:25:39 -04:00
Raymond Hill
84a4e1ac38
import translation work from https://crowdin.com/project/ublock 2018-09-04 10:34:56 -04:00
Raymond Hill
5bb8cb5ba9
import translation work from https://crowdin.com/project/ublock 2018-09-03 16:31:43 -04:00
Raymond Hill
777144b036
fix https://github.com/uBlockOrigin/uBlock-issues/issues/200 2018-09-03 16:15:51 -04:00
Raymond Hill
cbb5833bf2
fix https://github.com/uBlockOrigin/uBlock-issues/issues/199 2018-09-03 14:36:26 -04:00
Raymond Hill
a891b6f537
import translation work from https://crowdin.com/project/ublock 2018-09-03 14:12:13 -04:00
Raymond Hill
6d34a52179
fix #2859 2018-09-03 14:06:49 -04:00
Raymond Hill
c3c08af43e
import translation work from https://crowdin.com/project/ublock 2018-09-01 06:45:44 -04:00
Raymond Hill
279241626b
fix https://github.com/uBlockOrigin/uBlock-issues/issues/191 2018-09-01 06:42:21 -04:00
Raymond Hill
96525cffa5
code review for 3c85c03194: simplify counting of script resources 2018-09-01 06:36:17 -04:00
Raymond Hill
989fbd1c71
fix erroneous description, as per feedback 2018-08-31 19:14:27 -04:00
Raymond Hill
3c85c03194
fix #308, #3436, https://github.com/uBlockOrigin/uBlock-issues/issues/155
<https://github.com/gorhill/uBlock/issues/3436>: a new per-site switch
has been added, no-scripting, which purpose is to wholly disable/enable
javascript for a given site. This new switch has precedence over all
other ways javascript can be disabled, including precedence over dynamic
filtering rules.

The popup panel will report the number of script resources which have
been seen by uBO for the current page. There is a minor inaccuracy to
be fixed regarding the count, and which fix requires to extend request
journaling.

<https://github.com/gorhill/uBlock/issues/308>: the `noscript` tags will
now be respected when the new no-scripting switch is in effect on a given
site.

A default setting has been added to the _Settings_ pane to
disable/enable globally the new no-script switch, such that one can
work in default-deny mode regarding javascript execution.

<https://github.com/uBlockOrigin/uBlock-issues/issues/155>: a new
hidden setting, `requestJournalProcessPeriod`, has been added to
allow controlling the delay before uBO internally process it's
network request journal queue. Default to 1000 (milliseconds).
2018-08-31 18:47:02 -04:00
Raymond Hill
cae7484be1
fix https://github.com/uBlockOrigin/uBlock-issues/issues/171 2018-08-31 10:50:19 -04:00
Raymond Hill
1e2b584662
fix https://github.com/uBlockOrigin/uBlock-issues/issues/184 2018-08-31 10:49:01 -04:00
Raymond Hill
aeb19c952b
fix false positive detection of popups
Possibly what was being experienced by this user:
https://twitter.com/Reiniervdhulst/status/1035251223669211137
2018-08-31 09:26:10 -04:00
Raymond Hill
8ca6239e64
fix https://github.com/NanoAdblocker/NanoCore/issues/202 2018-08-30 08:32:56 -04:00
Raymond Hill
3c187c6278
fix https://github.com/uBlockOrigin/uBlock-issues/issues/141#issuecomment-416792939 2018-08-29 08:20:31 -04:00
Raymond Hill
ed926036ee
import translation work from https://crowdin.com/project/ublock 2018-08-27 15:42:59 -04:00
Raymond Hill
e75fba169a
normalize :if to :has (see #3683) 2018-08-25 09:45:49 -04:00
Raymond Hill
bd3922c580
normalize -abp-has to has for better duplicate detection with uBO-specific syntax 2018-08-24 18:31:28 -04:00
Raymond Hill
58bd6b6974
adjust lz4 ttl as suggested by @gwarser; cache resources selfie as string 2018-08-22 08:13:10 -04:00
Raymond Hill
b7c4ee0c45
enable cache storage compression by default 2018-08-21 12:59:35 -04:00
Raymond Hill
4149f5582d
import translation work from https://crowdin.com/project/ublock 2018-08-21 12:58:27 -04:00
Raymond Hill
b3dec3825c
minor code review of lz4-related code 2018-08-21 11:07:34 -04:00
Raymond Hill
3d867baf0b
fix https://github.com/NanoMeow/QuickReports/issues/6#issuecomment-414516623 2018-08-21 07:07:14 -04:00
Raymond Hill
938d54b1f7
remove unused code meant for Firefox/legacy 2018-08-18 07:51:46 -04:00
Raymond Hill
bfdf8b49aa
import translation work from https://crowdin.com/project/ublock 2018-08-15 09:42:41 -04:00
Raymond Hill
ed492bc485
fix https://github.com/uBlockOrigin/uBlock-issues/issues/170, #2240 2018-08-15 07:58:42 -04:00
Raymond Hill
5bd18f1edc
fix "Element picker/zapper does not switch tabs" in https://github.com/uBlockOrigin/uBlock-issues/issues/168 2018-08-14 20:14:13 -04:00
Raymond Hill
f0308960a4
fix typos 2018-08-14 10:07:49 -04:00
Raymond Hill
4bb1ec5cff
fix https://github.com/uBlockOrigin/uBlock-issues/issues/164 [regression] 2018-08-14 07:33:54 -04:00
Raymond Hill
6db88e67b1
make use of CodeMirror in "Advanced settings" page 2018-08-13 10:21:42 -04:00
Raymond Hill
3fa72d25df
import translation from https://crowdin.com/project/ublock 2018-08-13 07:58:05 -04:00
Raymond Hill
1aa5497841
fix https://github.com/uBlockOrigin/uBlock-issues/issues/162 2018-08-12 19:58:33 -04:00
Raymond Hill
5502a03f50
fix typo 2018-08-12 19:18:54 -04:00
Raymond Hill
4b72918e3a
typo 2018-08-12 09:07:44 -04:00
Raymond Hill
815283c77c
explain purpose of files (for reviewers really) 2018-08-12 09:06:25 -04:00
Raymond Hill
55501c4cdf
code review of pure-js implementation of lz4 2018-08-12 08:47:50 -04:00
Raymond Hill
0aeaf27f58
code review of 38aabc937a 2018-08-12 07:18:34 -04:00
Raymond Hill
684d974194
import translation work from https://crowdin.com/project/ublock 2018-08-11 10:45:00 -04:00
Raymond Hill
38aabc937a
reorganize cache storage compression; workaround fix for #2812 2018-08-11 10:39:43 -04:00
Raymond Hill
8f1b4b52fd
fix #3606 2018-08-09 11:31:25 -04:00
Raymond Hill
e163080518
added optional lz4 compression for cache storage (https://github.com/uBlockOrigin/uBlock-issues/issues/141)
Squashed commit of the following:

commit 6a8473822537636ac54d5dabdb14472114bb730b
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Mon Aug 6 10:56:44 2018 -0400

    remove remnant of snappyjs and spurious instruction

commit 9a4b709bee97d3cc2235fab602359fa5953bdb46
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Mon Aug 6 09:48:58 2018 -0400

    make cache storage compression optionally available on all platforms

    New advanced setting: `cacheStorageCompression`. Default is `false`.

commit 22ee6547f2f7c9c5aefe25dea1262a1b31612155
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sun Aug 5 19:16:26 2018 -0400

    remove Chromium from lz4 experiment

commit ee3e201c45afe983508f70713a2d43af74737d8d
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sun Aug 5 18:52:43 2018 -0400

    import lz4-block-codec.wasm library

commit 883a3118efcfd749c82356fde7134754d6ae371d
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sun Aug 5 18:50:46 2018 -0400

    implement storage compression through lz4-wasm [draft]

commit 48d1ccaba407de447c2cd6747dc3a90839c260a7
Merge: 8ae77e6 b34c897
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sat Aug 4 08:56:51 2018 -0400

    Merge branch 'master' of github.com:gorhill/uBlock into lz4

commit 8ae77e6aeeaa85af335e664c2560d2afd37288c6
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Wed Jul 25 18:17:45 2018 -0400

    experiment with compression
2018-08-06 12:34:41 -04:00
Raymond Hill
a20498b5c0
import translation work from https://crowdin.com/project/ublock 2018-08-02 17:59:24 -04:00
Raymond Hill
ec8e1cca15
fix https://github.com/uBlockOrigin/uBlock-issues/issues/149 2018-07-30 08:56:51 -04:00
Raymond Hill
0543288889
import translation work from https://github.com/gorhill/uBlock 2018-07-26 10:24:10 -04:00
Raymond Hill
7702b1f4bc
minor code review 2018-07-25 18:24:14 -04:00
Raymond Hill
c417b76cea
code review: prepare for forward-compatibility if ever compression is introduced 2018-07-25 18:04:53 -04:00
Raymond Hill
a717c42894
import translation work from https://crowdin.com/project/ublock 2018-07-24 09:45:20 -04:00
Raymond Hill
7ae68c8d7d
fix https://github.com/uBlockOrigin/uBlock-issues/issues/144 2018-07-24 09:17:18 -04:00
Raymond Hill
8ea24c91c8
import translation work from https://crowdin.com/project/ublock 2018-07-23 14:18:11 -04:00
Raymond Hill
12118e83aa
code review re. https://github.com/gorhill/uBlock/issues/2356#issuecomment-406909702 2018-07-23 09:54:25 -04:00
Raymond Hill
597f856417
fix https://github.com/uBlockOrigin/uBlock-issues/issues/140 2018-07-22 22:23:11 -04:00
Raymond Hill
1c8d59f0f5
fix rendering of ASCII string for RTL languages 2018-07-22 16:08:54 -04:00
Raymond Hill
5465d6010b
import translation work from https://crowdin.com/project/ublock 2018-07-22 15:49:06 -04:00
Raymond Hill
8db80dc4b8
fix #2356 2018-07-22 15:33:35 -04:00
Raymond Hill
51a4e9ccf4
fix #2763 2018-07-22 10:47:02 -04:00
Raymond Hill
80fedd4647
code review re. 8e9fe020b5 2018-07-22 08:14:50 -04:00
Raymond Hill
d5f40b90f6
fix #2179 2018-07-22 08:14:02 -04:00
Raymond Hill
8e9fe020b5
allow to view list content from blocked-document page 2018-07-21 12:22:53 -04:00
Raymond Hill
3097091704
import translation work from https://crowdin.com/project/ublock 2018-07-21 07:58:16 -04:00
Raymond Hill
182542e917
code review for https://github.com/uBlockOrigin/uBlock-issues/issues/106: mind keyboard layout 2018-07-20 18:03:32 -04:00
Raymond Hill
c57c760b1e
code review for https://github.com/uBlockOrigin/uBlock-issues/issues/106 2018-07-20 13:52:14 -04:00
Raymond Hill
473872105c
import translation work from https://crowdin.com/project/ublock 2018-07-20 07:53:23 -04:00
Raymond Hill
87b323fe05
fix https://github.com/uBlockOrigin/uBlock-issues/issues/135 2018-07-20 07:11:21 -04:00
Raymond Hill
56393ae16e
import translation work from https://crowdin.com/project/ublock 2018-07-19 22:14:25 -04:00
Raymond Hill
b5016a1f7a
fix https://github.com/uBlockOrigin/uBlock-issues/issues/136 2018-07-19 22:13:06 -04:00
Raymond Hill
07c7c3d944
import translation work from https://crowdin.com/project/ublock 2018-07-19 10:46:40 -04:00
Raymond Hill
e21705dea6
fix 2320610019 (commitcomment-29762923) 2018-07-19 09:40:39 -04:00
Raymond Hill
fbaf8b4e2f
code review for https://github.com/uBlockOrigin/uBlock-issues/issues/106 2018-07-19 06:46:40 -04:00
Raymond Hill
20c95455e4
import translation work from https://crowdin.com/project/ublock 2018-07-19 06:41:27 -04:00
Raymond Hill
ef455deb0a
fix https://github.com/uBlockOrigin/uBlock-issues/issues/106 2018-07-18 18:00:55 -04:00
Raymond Hill
bb72f6bf19
import translation work from https://crowdin.com/project/ublock 2018-07-16 09:37:47 -04:00
Raymond Hill
dcd98f4efa
fix load-time race condition for high-generic cosmetic filters
potentially causing high-generic cosmetic filters to not be applied
because the MRU cache contains an empty list of high-generic filters
when there is a query from a content script for cosmetic filters
before they are fully loaded and ready.
2018-07-16 09:30:36 -04:00
Raymond Hill
94c3415054
import translation work from https://crowdin.com/project/ublock 2018-07-10 06:06:03 -04:00
Raymond Hill
224661f905
fix https://github.com/uBlockOrigin/uBlock-issues/issues/118 2018-07-09 15:21:45 -04:00
Raymond Hill
79d5af20fc
fix potential spurious error from ignoring chrome.runtime.lastError 2018-07-08 08:25:08 -04:00
Raymond Hill
73067f27b1
fix bad English in comment 2018-07-06 10:47:51 -04:00
Raymond Hill
3e42b4a97f
fix https://github.com/AdguardTeam/FiltersRegistry/issues/82 2018-07-06 09:50:41 -04:00
Raymond Hill
211048396f
fix https://github.com/uBlockOrigin/uBlock-issues/issues/102 2018-07-04 15:03:09 -04:00
Raymond Hill
034b2c7014
import translation work from https://crowdin.com/project/ublock 2018-07-04 09:59:49 -04:00
Raymond Hill
cf56d84061
fix https://github.com/uBlockOrigin/uBlock-issues/issues/105 2018-07-04 09:38:37 -04:00
Raymond Hill
8754898028
import translation work from https://crowdin.com/project/ublock 2018-06-28 09:13:08 -04:00
Raymond Hill
bf0654b5ed
code review for 138e1bf558 (oops) 2018-06-26 08:33:44 -04:00
Raymond Hill
138e1bf558
fix https://github.com/uBlockOrigin/uBlock-issues/issues/89 2018-06-26 08:30:58 -04:00
Raymond Hill
ea1d2e99e1
import translation work from https://crowdin.com/project/ublock 2018-06-24 07:43:53 -04:00
Raymond Hill
4da20e96e7
fix https://github.com/uBlockOrigin/uBlock-issues/issues/84 2018-06-23 19:15:56 -04:00
Raymond Hill
4bcf578606
fix https://www.reddit.com/r/uBlockOrigin/comments/8qodpw/how_to_hide_the_info_shown_of_what_is_currently/e0lglrr/ 2018-06-14 08:29:38 -04:00
Raymond Hill
89d9e850e6
import translation work from https://crowdin.com/project/ublock 2018-06-12 08:41:20 -04:00
Raymond Hill
f6fd471318
import translation work from https://crowdin.com/project/ublock 2018-06-10 07:36:53 -04:00
Raymond Hill
7bd76150a1
code review: fix bad lookup causing [hostname,domain] cache to never be hit 2018-06-04 08:18:13 -04:00
Raymond Hill
b838e22024
code review of 39277172e8: select "All" when kb shortcut from logger itself 2018-06-03 19:49:08 -04:00
Raymond Hill
39277172e8
fix https://github.com/uBlockOrigin/uBlock-issues/issues/54 2018-06-03 13:56:24 -04:00
Raymond Hill
7766786b2c
code review: reuse last decomposed hostname (hit rate = 75%) 2018-06-03 13:27:42 -04:00
Raymond Hill
4a57825411
code review: remove scriplet js text after injection (see https://github.com/uBlockOrigin/uBlock-issues/issues/53#issuecomment-394024828) 2018-06-01 18:41:27 -04:00
Raymond Hill
2c843f6e69
code review: chromium 45 supports arrow functions = start using them 2018-06-01 11:49:48 -04:00
Raymond Hill
798f8dab9d
reduce baseline memory at selfie-load time 2018-06-01 07:54:31 -04:00
Raymond Hill
ab867dedf5
improve in-memory storage of specific cosmetic filters + more ES6
- collate together specific filters with same base domain
- replace string-based hash to integer-based hash
- revisit code to benefit from ES6-specific syntax
2018-05-31 10:41:03 -04:00
Raymond Hill
44224fe2c7
use old.reddit.com for support URL 2018-05-29 07:40:29 -04:00
Raymond Hill
c2f251c49f
import translation work from https://crowdin.com/project/ublock 2018-05-28 16:44:18 -04:00
Raymond Hill
c6cab02999
fine-tune logger-related code
- Default to being detached
- Default to "Current tab"
- Append current tab title to "Current tab" entry
- Avoid iterating through all tabs when no change
2018-05-27 08:31:17 -04:00
Raymond Hill
f887eeb3f5
code review for c5d8588118: mind whitelist status; mind an inaccessible document 2018-05-22 09:26:49 -04:00
Raymond Hill
3c9e7fe54f
import translation work from https://crowdin.com/project/ublock 2018-05-20 06:52:17 -04:00
Raymond Hill
0c5e2eb7ee
code review for c5d8588118: mind about:blank et al. iframes 2018-05-20 06:49:12 -04:00
Raymond Hill
3d172d7e76
import translation work from https://crowdin.com/project/ublock 2018-05-18 10:22:10 -04:00
Raymond Hill
b4306e3297
code reivew of c5d8588118: immediate scriptlets injection works well only on Chromium-based browsers for now 2018-05-18 10:19:14 -04:00
Raymond Hill
e693e308d4
code review for c5d8588118 2018-05-17 16:24:08 -04:00
Raymond Hill
21670a031f
use name in manifest for "About" pane 2018-05-17 12:45:57 -04:00
Raymond Hill
f2b2a0dca5
Merge branch 'master' of github.com:gorhill/uBlock 2018-05-17 07:33:31 -04:00
Raymond Hill
c5d8588118
inject scriptlets earlier (experimental) (ex. https://github.com/uBlockOrigin/uAssets/issues/2300) 2018-05-17 07:33:21 -04:00
Hugo Xu
de6cf0e6aa Align header parsing to ABP (#3724) 2018-05-16 14:55:12 -04:00
Raymond Hill
3a78e73e4b
Merge branch 'master' of github.com:gorhill/uBlock 2018-05-16 11:50:58 -04:00
Raymond Hill
1c8df4a652
fix https://github.com/uBlockOrigin/uBlock-issues/issues/42 2018-05-16 11:50:50 -04:00
Hugo Xu
25786c3257 Round hour up to nearest day (#3723)
* Update storage.js

* Update storage.js
2018-05-16 11:01:40 -04:00
Raymond Hill
09e2b1f45f
import translation work from https://crowdin.com/project/ublock 2018-05-15 08:07:47 -04:00
Raymond Hill
686171c315
import translation work from https://crowdin.com/project/ublock 2018-05-14 07:51:49 -04:00
Raymond Hill
232ffa8add
import translation work from https://crowdin.com/project/ublock 2018-05-12 16:31:50 -04:00
Raymond Hill
3ff6a1d9e2
import translation work from https://crowdin.com/project/ublock 2018-05-08 09:49:19 -04:00
Raymond Hill
7e5661383a
code review to further lower overhead of updating toolbar icon 2018-05-08 09:43:25 -04:00
Raymond Hill
e772d20ff2
add new sized icons 2018-05-07 19:24:23 -04:00
Raymond Hill
29a5306f5a
import translation work from https://crowdin.com/project/ublock 2018-05-06 15:09:39 -04:00
Raymond Hill
35f939f993
fix https://github.com/ghacksuserjs/ghacks-user.js/issues/412 2018-05-06 15:06:26 -04:00
Raymond Hill
ee36b3ddd5
add missing favicon to assert-viewer page 2018-05-06 07:36:58 -04:00
Raymond Hill
8dd22c848a
fix https://issues.adblockplus.org/ticket/6649 (allow u flag in regexes) 2018-05-05 08:14:29 -04:00
Raymond Hill
e5d5d9eaf6
code review for 14709d18cf 2018-05-05 06:28:16 -04:00
Raymond Hill
14709d18cf
fix #2809 2018-05-04 08:44:54 -04:00
Raymond Hill
8be1aed04d
guard against future instances of issue fixed in #3721 2018-05-03 09:55:36 -04:00
Raymond Hill
6cccf6ccda
Revert "fix #2809"
This reverts commit 32e2a1b2c7.
2018-05-02 14:09:47 -04:00
Raymond Hill
32e2a1b2c7
fix #2809 2018-05-02 09:41:30 -04:00
Raymond Hill
f7b07317c7
import translation work from https://crowdin.com/project/ublock 2018-05-02 08:04:45 -04:00
Raymond Hill
32cf6a9a65
import translation work from https://crowdin.com/project/ublock 2018-05-01 20:18:25 -04:00
Raymond Hill
f64d703ba0
fix quirks in parsing of Steven Black's hosts files 2018-05-01 18:29:58 -04:00
Raymond Hill
46e1c79916
import translation work from https://crowdin.com/project/ublock 2018-05-01 08:08:59 -04:00
Raymond Hill
efe68e0f9c
fix https://www.reddit.com/r/firefox/comments/8a5e0e/if_you_find_firefox_for_android_slow_disable/dy7q6w2/ 2018-04-30 13:00:12 -04:00
Raymond Hill
a43b553020
import translation work from https://crowdin.com/project/ublock 2018-04-30 08:42:39 -04:00
Raymond Hill
cc5dcfb072
import translation work from https://crowdin.com/project/ublock 2018-04-29 09:12:37 -04:00
Raymond Hill
674c3c6079
fix https://github.com/uBlockOrigin/uBlock-issues/issues/17 2018-04-29 09:07:12 -04:00
Raymond Hill
8e8e06e3e7
import translation work from https://crowdin.com/project/ublock 2018-04-28 14:16:15 -04:00
Raymond Hill
f90ec9c957
import translation work from https://crowdin.com/project/ublock 2018-04-27 15:01:53 -04:00
Raymond Hill
08495c42e9
complete "debian" as a target platform 2018-04-27 11:43:35 -04:00
Raymond Hill
d0c1c7c4c9
add link to issue tracker in dashboard's 'About' 2018-04-27 08:44:25 -04:00
Raymond Hill
3923520b87
remove no longer needed platform-dependent polyfill.js 2018-04-27 08:36:38 -04:00
Raymond Hill
f940bc02f0
import translationwork from https://crowdin.com/project/ublock 2018-04-25 06:40:35 -04:00
Raymond Hill
fbc5e6d26c
fix https://github.com/uBlockOrigin/uBlock-issues/issues/22 2018-04-24 23:21:54 -04:00
Raymond Hill
427d0fd0ff
fix https://github.com/uBlockOrigin/uBlock-issues/issues/21 2018-04-24 17:12:41 -04:00
anvakl
4d3a2b5f85 Minor fixes to code (#3720)
* Fix leftovers from old code.

* change changes.procedural.size to changes.procedural.length

changes.procedural is an array so it should be changes.procedural.length
the  code works with changes.procedural.size because (undefined !== 0) is always true.
2018-04-24 06:05:30 -04:00
Raymond Hill
10a4a6465e
fix #3639 2018-04-24 05:48:28 -04:00
Raymond Hill
75b148b307
upgrade to CodeMirror 5.37 2018-04-23 17:30:28 -04:00
Raymond Hill
0d9184b1d8
import translation work from https://crowdin.com/project/ublock 2018-04-22 14:53:57 -04:00
Raymond Hill
48426469de
code review of 5386558e68 2018-04-22 10:01:33 -04:00
Raymond Hill
5386558e68
fix https://www.reddit.com/r/uBlockOrigin/comments/8dkvqn/116_broken_loading_custom_filters_from_my_filters/ 2018-04-21 12:34:54 -04:00
Raymond Hill
26e5b3f45d
add noopmp4-1s as a web_accessible_resources 2018-04-20 18:18:33 -04:00
Raymond Hill
38a49f461e
import translation work from https://crowdin.com/project/ublock 2018-04-20 16:25:02 -04:00
Hugo Xu
048930ca8f RegExp fix for https://github.com/gorhill/uBlock/issues/3717 (#3718)
* Update ublock.js

* Update ublock.js

* Update ublock.js
2018-04-20 16:09:41 -04:00
Raymond Hill
9d8e2e20fb
fix firewall pane's save/revert not showing up when scrolled down on small screens 2018-04-20 16:03:37 -04:00
Raymond Hill
86e80d43d6
fix https://github.com/gorhill/uBlock/issues/3693#issuecomment-379782428 2018-04-20 11:26:11 -04:00
Raymond Hill
7255a66cd5
fix https://github.com/uBlockOrigin/uBlock-issues/issues/4 2018-04-20 10:59:33 -04:00
Raymond Hill
dbdcc1f583
import translation work from https://crowdin.com/project/ublock 2018-04-19 06:06:59 -04:00
Raymond Hill
9fe774647d
fix https://github.com/uBlockOrigin/uBlock-issues/issues/2 2018-04-18 09:03:30 -04:00
Raymond Hill
0036154d52
code review: be sure "ublock" flavor is always present 2018-04-18 07:11:13 -04:00
Raymond Hill
053349dc41
Merge branch 'master' of github.com:gorhill/uBlock 2018-04-15 06:50:40 -04:00
Raymond Hill
8868b53a41
import translation work from https://crowdin.com/project/ublock 2018-04-15 06:50:31 -04:00
Michele Spagnuolo
15ed9abb5b Compress the icon PNGs with zopflipng (#3458) 2018-04-15 06:30:40 -04:00
Raymond Hill
e2af7c5c55
code review: simplfy devbuild detection using webextFlavor 2018-04-14 06:09:36 -04:00
Raymond Hill
501f632d3d
import translation work from https://crowdin.com/project/ublock 2018-04-13 06:31:58 -04:00
Raymond Hill
bd0a7ebf16
import translation work from https://crowdin.com/project/ublock 2018-04-12 07:32:59 -04:00
Hugo Xu
ae6b376a75 Fix RegExp escape (#3700) 2018-04-11 11:28:10 -04:00
Raymond Hill
42d5908d37
import translation work from https://crowdin.com/project/ublock 2018-04-11 06:37:44 -04:00
Raymond Hill
c34326cf4e
code review: further tuning filter list directives 2018-04-11 06:34:13 -04:00
Raymond Hill
8436ccbc4e
improve ckoud widget for small screen devices 2018-04-10 11:21:56 -04:00
Raymond Hill
69f33a4b65
import translation work from https://crowdin.com/project/ublock 2018-04-10 08:43:30 -04:00
Raymond Hill
e1c18110c0
code review: fix jshint warning 2018-04-10 08:14:10 -04:00
Raymond Hill
6bbd892dd3
Merge branch 'master' of github.com:gorhill/uBlock 2018-04-10 08:08:36 -04:00
Raymond Hill
94a43bec0d
fix #3694 2018-04-10 08:08:28 -04:00
Hugo Xu
60751044fe Update scriptlet-filtering.js (#3696) 2018-04-09 17:49:35 -04:00
Raymond Hill
00cb02ec47
fix new hidden setting default value not being applied (https://github.com/orgs/uBlockOrigin/teams/volunteers/discussions/62) 2018-04-09 17:46:29 -04:00
Raymond Hill
47598d4499
further fine tune "Filter lists" pane (b60c06f3) 2018-04-09 15:45:25 -04:00
Raymond Hill
26c2320e46
code review: improve compatibility with StevenBlack hosts files 2018-04-09 15:40:29 -04:00
Raymond Hill
2a390879f7
import translation work from https://crowdin.com/project/ublock 2018-04-09 14:35:27 -04:00
Raymond Hill
b60c06f3c4
various improvements to the "Filter lists" pane 2018-04-09 09:01:39 -04:00
Raymond Hill
fb2b402940
use Element.matches instead of ugly hack 2018-04-09 08:28:36 -04:00
Raymond Hill
8071321e91
lower default value of manualUpdateAssetFetchPeriod 2018-04-09 08:26:14 -04:00
Raymond Hill
8df6dbf0b2
fix inccorrect padding with RTL languages 2018-04-09 08:24:47 -04:00
Hugo Xu
47ae08b0b1 Accept ubo:// (#3682)
This prevents AdBlock and ABP from reacting to subscription links of uBO-only filters.
2018-04-06 17:32:18 -04:00
Raymond Hill
daf948b779
fix https://github.com/gorhill/uBlock/pull/3679#issuecomment-379092981 2018-04-06 16:15:10 -04:00
Raymond Hill
a015ad0a5c
Merge branch 'master' of github.com:gorhill/uBlock 2018-04-06 16:02:41 -04:00
Raymond Hill
4d8974fe80
code review: avoid redundant PSL selfie 2018-04-06 16:02:35 -04:00
Hugo Xu
fc4fccd8e3 Accept # Title: and # Expires:; optimize RegExp (#3679)
* Accept `# Title:` and `# Expires`; optimize RegExp

* Prevent confusion with network filter
2018-04-06 15:59:01 -04:00
Raymond Hill
c0387835fa
code review: modernize old code 2018-04-05 15:22:19 -04:00
Raymond Hill
c1d3b6222e
code review: use regex to speed up CSS selector validation 2018-04-05 09:45:11 -04:00
Raymond Hill
93f49a61d7
add pre-processor directives to filter list compiler (https://github.com/AdguardTeam/AdguardBrowserExtension/issues/917) 2018-04-05 07:29:15 -04:00
Raymond Hill
bf384e2bca
better evaluate vAPI.webextFlavor 2018-04-04 12:42:01 -04:00
Raymond Hill
c695599860
code review: adjust position of eraser/padlock only when needed 2018-04-04 08:17:53 -04:00
Raymond Hill
e64a59b32c
fix #3667 2018-04-02 18:40:29 -04:00
Raymond Hill
98df44c373
invalidate resources selfie when new version is detected [Firefox] 2018-04-02 11:03:12 -04:00
Raymond Hill
fe11ff61c8
mind whitelist directives for filterable behind-the-scene requests (#3654) 2018-04-02 09:10:38 -04:00
Raymond Hill
2b92f114bb
fix dashboard icon issue for Pale Moon (#3665) 2018-04-02 06:51:57 -04:00
Raymond Hill
9bc029b72c
allow un-whitelisting in non-advanced user mode 2018-03-31 15:02:12 -04:00
Raymond Hill
2632cf63b2
code review for 588a8acc 2018-03-31 12:12:31 -04:00
Raymond Hill
b91c2a7b41
import translation work from https://crowdin.com/project/ublock 2018-03-31 10:26:17 -04:00
Raymond Hill
588a8accb1
add default noop rules for behind-the-scene scope 2018-03-31 10:21:11 -04:00
Raymond Hill
0451758163
mind rc when deriving an integer from version string 2018-03-30 09:58:30 -04:00
Raymond Hill
0a879a816b
treat behind-the-scene network requests like all others 2018-03-30 08:55:51 -04:00
Raymond Hill
dd49e0ad7c
oops, file picker button shouldn't be visible 2018-03-28 19:28:29 -04:00
Raymond Hill
9fdda522a1
send cursor at the end when opening "My filters" pane 2018-03-28 19:04:04 -04:00
Raymond Hill
fce2eaf3c3
further improving UI for small screens 2018-03-28 16:15:50 -04:00
Raymond Hill
88f0fd6c00
avoid spurious select-all 2018-03-28 09:43:48 -04:00
Raymond Hill
f764435812
various changes to enhance UI for mobile devices 2018-03-28 09:11:55 -04:00
Raymond Hill
782faf4f44
fix #3646 2018-03-27 19:10:31 -04:00
Raymond Hill
827732a991
revert attempted fix for #3646 2018-03-27 15:03:24 -04:00
Raymond Hill
376c95bcc9
#3646: find out if this makes a difference 2018-03-27 14:11:06 -04:00
Raymond Hill
e35f6b3df6
code review: no need for callback arg 2018-03-23 15:05:35 -04:00
Raymond Hill
d9161aeffa
fix #3636 2018-03-23 15:03:29 -04:00
Raymond Hill
fca714c12d
code review for 6871d9aed4: mind rtl languages 2018-03-21 09:04:08 -04:00
Raymond Hill
431b40f8e4
code review for 6871d9aed4 2018-03-21 08:42:21 -04:00
Raymond Hill
6871d9aed4
add ability to filter out rules in "My rules" pane 2018-03-21 07:24:52 -04:00
Raymond Hill
9ce1f8af08
fix https://www.reddit.com/r/uBlockOrigin/comments/8524cf/my_custom_scriptlets_doesnt_work_what_am_i_doing/ 2018-03-19 10:25:03 -04:00
Raymond Hill
96d4f987ac
use default codemirror input style, contenteditable interferes with search widget 2018-03-18 14:04:58 -04:00
Raymond Hill
2afd9919cc
fix #3624 2018-03-18 13:56:20 -04:00
anvakl
33fa25bbe5 fix for gorhill/uBlock#3464 (#3616)
Adding index to insertRule fixed the issue
2018-03-17 13:35:36 -04:00
Raymond Hill
23accd1c57
fix #3615 2018-03-17 10:25:03 -04:00
Raymond Hill
d29b40991a
remove use of innerHTML to please Firefox validator (see https://github.com/codemirror/CodeMirror/pull/5313) 2018-03-17 08:58:55 -04:00
Raymond Hill
e26e70ad4e
fix #3614 2018-03-17 08:38:49 -04:00
Raymond Hill
dbd34c4592
force default pointer because Firefox legacy (#3611) 2018-03-16 20:49:00 -04:00
Raymond Hill
fc850ec8b9
force default pointer for find next-prev buttons 2018-03-16 20:28:17 -04:00
Raymond Hill
31eaa766dc
fix other quirks with rtl languages (#3611) 2018-03-16 19:38:43 -04:00
Raymond Hill
7d110250f3
fix #3611 2018-03-16 18:33:50 -04:00
Raymond Hill
e5eb0ac362
remove comment with erroneous information 2018-03-16 07:49:56 -04:00
Raymond Hill
fe791b9bd2
import translation work from https://crowdin.com/project/ublock 2018-03-14 12:12:09 -04:00
Raymond Hill
11ccb4523a
update fix for https://github.com/gorhill/uMatrix/issues/967 2018-03-14 12:06:49 -04:00
Raymond Hill
95398b85f9
Merge branch 'master' of github.com:gorhill/uBlock 2018-03-13 17:24:40 -04:00
Raymond Hill
04cee142bc
fix https://github.com/gorhill/uMatrix/issues/967 (uBO-side) 2018-03-13 17:24:07 -04:00
hiikezoe
d104ee27ec Specify a transform value at 0% keyframe (#3598)
In Firefox, transform animations which don't specify 0% or 100% keyframe value
are not properly optimized if the animations are scrolled-out [1]. Such
animations unfortunately consume much CPU rather than visible ones. An easy
way to avoid this is to specify the missing keyframe value.

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1430884
2018-03-13 06:07:53 -04:00
Raymond Hill
b89ec2861c
fix #3594: incomplete conversion to CodeMirror widget 2018-03-12 12:08:45 -04:00
Raymond Hill
9715d1e8b9
make use of CodeMirror for Whitelist pane 2018-03-12 08:28:07 -04:00
Raymond Hill
1e8d966938
fix regression in Firefox legacy version 2018-03-11 18:59:21 -04:00
Raymond Hill
eb789939ca
code review for b10ac0020d: fix too rigid field separator 2018-03-11 12:52:02 -04:00
Raymond Hill
b10ac0020d
make use of CodeMirror in "My rules" pane 2018-03-11 10:59:39 -04:00
Raymond Hill
caef7d00bb
add CodeMirror's merge.js addon + modify imported diff code for compatibility 2018-03-11 10:59:02 -04:00
Raymond Hill
2aa704651d
import original version of https://github.com/Swatinem/diff 2018-03-11 10:54:29 -04:00
Raymond Hill
dd979ff5ff
code review: allow dev build of Firefox to update resources.txt 2018-03-11 10:38:35 -04:00
Raymond Hill
081e5b4db9
fix #3581 2018-03-07 10:37:18 -05:00
Raymond Hill
333c6f60fb
fix #3580 2018-03-07 06:28:26 -05:00
Raymond Hill
a470c119aa
make options separator standout a bit better 2018-03-06 15:47:40 -05:00
Raymond Hill
15530df0e7
code review: reset internal parser data once done parsing 2018-03-06 15:46:05 -05:00
Raymond Hill
ec56165d0d
new script:inject syntax, use only when next release is *very* widespread 2018-03-06 09:09:53 -05:00
Raymond Hill
34efe9d6f2
[codemirror] use inputStyle=contenteditable for better select-all performance 2018-03-06 06:22:11 -05:00
Raymond Hill
d2be9aeb0b
fix asset viewer rendering for mobile device 2018-03-06 06:19:48 -05:00
Raymond Hill
7a90a69347
fine tuning syntax highlighter 2018-03-05 13:05:26 -05:00
Raymond Hill
ed8c9ac04e
add missing addon for 9df0202a00 2018-03-05 11:27:23 -05:00
Raymond Hill
9b803a2295
fine tuning syntax highlighter 2018-03-05 11:25:45 -05:00
Raymond Hill
9df0202a00
[codemirror] add active line addon 2018-03-05 06:59:03 -05:00
Raymond Hill
1205156ca3
prevent search bar from shrinking (#3567) 2018-03-04 18:23:01 -05:00
Raymond Hill
65e55549c7
fix resizing quirk due to new top panel (#3567) 2018-03-04 18:09:06 -05:00
Raymond Hill
ee357eeb15
import translation work from https://crowdin.com/project/ublock 2018-03-04 17:21:30 -05:00
Raymond Hill
2c45971c65
code review: fine tuning look/behavior (#3567) 2018-03-04 17:13:27 -05:00
Raymond Hill
c59ceff6a1
code review: always search from current cursor position (#3567) 2018-03-04 15:52:34 -05:00
Raymond Hill
a69379068e
fix nonsensical "obsolete" status for user filters 2018-03-04 15:00:42 -05:00
Raymond Hill
d6b733010d
add missing stylesheet (#3567) 2018-03-04 15:00:00 -05:00
Raymond Hill
bc61bef9a7
address #3567 2018-03-04 14:07:01 -05:00
Raymond Hill
b14011deb8
add CodeMirror's lib README to the package 2018-03-02 07:15:41 -05:00
Raymond Hill
8cf87061f4
fix #3562 2018-03-01 14:12:16 -05:00
Raymond Hill
8d5ebf44ef
support saving using keyboard (through codemirror) in "My filters" 2018-03-01 13:37:23 -05:00
Raymond Hill
959f68ce89
fix #3494 2018-03-01 13:11:17 -05:00
Raymond Hill
8b538de0cd
import translation work from https://crowdin.com/project/ublock/ 2018-03-01 11:44:24 -05:00
Raymond Hill
8680bbc086
fine tuning codemirror styles 2018-03-01 11:26:24 -05:00
Raymond Hill
273c80564a
fix rendering of comments starting with # 2018-02-28 19:16:19 -05:00
Raymond Hill
e5bb1eee1b
add credit for CodeMirror 2018-02-28 19:04:52 -05:00
Raymond Hill
61ec088d43
integrate codemirror into "My filters" pane 2018-02-28 18:51:33 -05:00
Raymond Hill
cff1bcb24f
minor code review 2018-02-28 12:36:18 -05:00
Raymond Hill
ac7e012633
start integration of codemirror to improve UI 2018-02-28 12:31:43 -05:00
Raymond Hill
7eeba29220
fix #3551: regressions as a result of fix to #3428 2018-02-27 06:54:48 -05:00
Raymond Hill
0414ce80a0
code review for #3428 2018-02-26 16:52:16 -05:00
Raymond Hill
67e06f53b4
offer concise version of often-used filter options (see https://github.com/NanoAdblocker/NanoCore/blob/master/Notes/FilterIncompatibility.MD#convenience-options) 2018-02-26 14:08:16 -05:00
Raymond Hill
2c901588c7
fix #3546, #3428 2018-02-26 13:59:16 -05:00
Raymond Hill
a0505b2adf
import translation work from https://crowdin.com/project/ublock 2018-02-24 11:11:57 -05:00
Raymond Hill
d42adc912d
fix silly mistake in fix for #3526 2018-02-23 09:45:51 -05:00
Raymond Hill
9fb455d2df
fix #3406 2018-02-23 06:42:17 -05:00
Raymond Hill
a81d2a759b
fix #3318, #3387 2018-02-21 13:29:36 -05:00
Raymond Hill
6b7d8e75f4
bring out of band fixes (c5cbf5db47, 2999dbee5c) for Firefox/webext into master 2018-02-21 08:19:43 -05:00
Raymond Hill
0c94716b75
import translation work from https://crowdin.com/project/ublock 2018-02-18 07:26:43 -05:00
Raymond Hill
21f7d42f54
fix #3507 2018-02-18 07:16:10 -05:00
Raymond Hill
c3f9f6b716
code review: bit stricter code path 2018-02-18 06:08:48 -05:00
Raymond Hill
4ed0d87b7b
code review: prevent redirection to WAR when request is xmlhttprequest 2018-02-16 13:37:20 -05:00
Raymond Hill
207a7b10d0
fix typos 2018-02-16 09:11:22 -05:00
Raymond Hill
287f04b47e
code review for #3474, #2823: simplify management of "web accessible resources" 2018-02-16 09:07:20 -05:00
Raymond Hill
47152560af
import emergency fix from 1.15.6 2018-02-15 17:39:31 -05:00
Raymond Hill
17930cc778
fix #3474, #2823 2018-02-15 17:25:38 -05:00
Raymond Hill
473358cfbc
import translation work from https://crowdin.com/project/ublock 2018-02-12 12:09:17 -05:00
Raymond Hill
94c8cfc3f3
fix #3506 2018-02-12 08:18:24 -05:00
Raymond Hill
f6afd8c90b
help address https://github.com/nikrolls/uBlock-Edge/pull/103 2018-02-04 10:43:10 -05:00
Raymond Hill
43eab7aff7
import translation work from https://crowdin.com/project/ublock 2018-02-03 12:10:01 -05:00
Raymond Hill
613ff9cc9b
tentatively fix #3478: need feedback from reporter 2018-02-03 09:34:27 -05:00
Raymond Hill
7f9435f8b2
import Kazakh translation work 2018-01-31 12:49:23 -05:00
Raymond Hill
6602ed27e0
import translation work from https://crowdin.com/project/ublock 2018-01-31 12:29:01 -05:00
Raymond Hill
36da71f547
import translation work from https://crowdin.com/project/ublock 2018-01-30 09:18:02 -05:00
Raymond Hill
51fc60223a
fix #3450 2018-01-20 09:10:23 -05:00
Raymond Hill
dada3fe6bc
import translation work from https://crowdin.com/project/ublock 2018-01-18 12:32:43 -05:00
Raymond Hill
55be87223e
import translation work from https://crowdin.com/project/ublock 2018-01-16 09:22:37 -05:00
Raymond Hill
ecb5ca393e
import translation work from https://crowdin.com/project/ublock 2018-01-13 09:48:58 -05:00
Raymond Hill
888d36fd06
fix #3433 2018-01-13 09:42:42 -05:00
Raymond Hill
a217ca42c9
fix https://github.com/nikrolls/uBlock-Edge/issues/101 2018-01-13 09:07:34 -05:00
Raymond Hill
6219866b53
fix #3430 (regression) 2018-01-12 09:33:01 -05:00
Raymond Hill
a73e1460b8
import translation work from https://crowdin.com/project/ublock 2018-01-11 09:09:56 -05:00
Raymond Hill
36b1eac88e
fix #3425 (regression from 6cdb20df) 2018-01-10 17:59:07 -05:00
Raymond Hill
41c2c33ce2
import translation work from https://crowdin.com/project/ublock 2018-01-10 11:55:16 -05:00
Raymond Hill
9fa1c37183
code review: fix eraser when using "Current tab" view in logger 2018-01-10 11:50:08 -05:00
Raymond Hill
4ed8184d2c
import translation work from https://crowdin.com/project/ublock 2018-01-09 09:40:14 -05:00
Raymond Hill
6cdb20dffe
improve logger convenience following fix for #2854 2018-01-09 08:08:17 -05:00
Raymond Hill
689d18c54f
fix #2854 2018-01-08 14:29:39 -05:00
Raymond Hill
f53b3e3930
fix #3416 2018-01-08 07:33:38 -05:00
Raymond Hill
b7155a0e0f
fix #3408 2018-01-07 17:53:33 -05:00
jspenguin2017
178b82eb6a
https://github.com/NanoAdblocker/NanoCore/issues/40 2018-01-06 08:54:28 -05:00
Raymond Hill
7cd8185f3a
import translation work from https://crowdin.com/project/ublock 2018-01-05 13:26:16 -05:00
Raymond Hill
a0375bb6a3
add support for iso-8859-1/windows-1252 encoding (https://github.com/gorhill/uBlock/issues/3391#issuecomment-354868704) 2018-01-05 13:15:56 -05:00
Raymond Hill
4812ac9b68
fix #3399 (part 1) 2018-01-04 18:26:52 -05:00
Raymond Hill
21b52ec10b
code review: remove pointless test 2018-01-04 17:55:59 -05:00
Raymond Hill
04d84cf92a
fix #3397 2018-01-03 13:59:38 -05:00
Raymond Hill
5a468be661
import translation work from https://crowdin.com/project/ublock 2018-01-02 23:25:42 -05:00
Raymond Hill
455bf281f0
fix #3391 2018-01-02 23:06:16 -05:00
Raymond Hill
636dcf7ee4
fix #3383 2018-01-01 07:52:03 -05:00
Raymond Hill
ce696e5fbe
fix #3386 2017-12-31 21:13:06 -05:00
Raymond Hill
ec29c9a127
fix #3382 2017-12-31 16:05:23 -05:00
Raymond Hill
37fde84a45
code review #3367 + improve compatibility with Adguard filters 2017-12-31 08:44:29 -05:00
Raymond Hill
17dfec5759
fix #3372 2017-12-30 18:55:01 -05:00
Raymond Hill
1cd61063fa
fix #3380 2017-12-30 17:38:07 -05:00
Raymond Hill
e84e79f96e
fix #3367 2017-12-30 16:02:34 -05:00
Raymond Hill
9f89c67f3f
import translation work from https://crowdin.com/project/ublock 2017-12-30 11:26:06 -05:00
Raymond Hill
f659dc8e49
add TODOs comments 2017-12-30 11:21:23 -05:00
Raymond Hill
f7c02e237f
code review for #3331: increase restrictions
Only resources from within current directory will be allowed,
everything else will be silently rejected.
For example, this will forbid pulling lists from different repos
on GitHub, despite the lists being same origin.
2017-12-30 11:05:15 -05:00
Raymond Hill
6ab34efe44
minor code review: remove pointless test 2017-12-29 21:54:03 -05:00
Raymond Hill
3ec9377c3e
code review: disregard case sensitivity 2017-12-29 21:29:57 -05:00
Raymond Hill
a3f7392f06
code review: mind length of data available 2017-12-29 20:33:24 -05:00
Raymond Hill
b36320c643
code review: improve scriptlet inject code in stream data listener 2017-12-29 20:26:03 -05:00
Raymond Hill
6f8099fb90
fix regression in scriptlet injection: mind BOM sequence in response data filtering 2017-12-29 15:56:15 -05:00
Raymond Hill
5c20182948
fix regression in per-list filter counts (reported by @mapx-) 2017-12-29 13:31:37 -05:00
Raymond Hill
707d7708a1
code review: fix recursivity in HTML filtering's procedural selectors 2017-12-29 10:26:50 -05:00
Raymond Hill
31791f2dd2
code review: caller always expect an array as return value 2017-12-29 09:02:26 -05:00
Raymond Hill
a8d79feecd
fix #3379 (regression from a9f68fe02f) 2017-12-29 08:05:50 -05:00
Raymond Hill
fd1410ac9f
import translation work from https://crowdin.com/project/ublock 2017-12-28 14:26:03 -05:00
Raymond Hill
a9f68fe02f
Fix #3069, and consequently #3374, #3378.
A new filtering class has been created: "static extended filtering".
This new class is an umbrella class for more specialized filtering
engines:
- Cosmetic filtering
- Scriptlet filtering
- HTML filtering

HTML filtering is available only on platforms which support modifying
the response body on the fly, so only Firefox 57+ at the moment.

With the ability to modify the response body, HTML filtering has
been introduced: removing elements from the DOM before the source
data has been parsed by the browser.

A consequence of HTML filtering ability is to bring back script tag
filtering feature.
2017-12-28 13:49:02 -05:00
Raymond Hill
d2df01dc08
remove unused library 2017-12-27 09:46:12 -05:00
Raymond Hill
3f335ad432
address incomplete fix for #2877 as per feedback: dec0b80a72 (commitcomment-26447318) 2017-12-23 08:14:08 -05:00
Raymond Hill
4f5f3652ed
code review re last commit b446f9f8bd 2017-12-22 11:56:27 -05:00
Raymond Hill
b446f9f8bd
fix regression reported in dec0b80a72 (commitcomment-26435928) by partially reverting changes from 4a09c9f866 2017-12-22 11:45:07 -05:00
Raymond Hill
8688461b1a
import translation work from https://crowdin.com/project/ublock 2017-12-22 09:44:55 -05:00
Raymond Hill
4ab63e70fe
code review: avoid Array.splice/unshift
The array size stays the same, items are just moved around.
2017-12-22 09:37:26 -05:00
Raymond Hill
607968de7f
code review: cache most-recently-used pre-filled scriptlets 2017-12-21 17:05:25 -05:00
Raymond Hill
4a09c9f866
improve slightly pre-parsing of ##script:... filters 2017-12-17 10:28:12 -05:00
Raymond Hill
dec0b80a72
fix #2877 2017-12-17 08:09:47 -05:00
Raymond Hill
8e7ccef14c
code review for #3331: support relative paths as per https://github.com/AdguardTeam/AdguardBrowserExtension/issues/917 2017-12-15 09:24:06 -05:00
Raymond Hill
912582ce4b
code review: remove space as per https://github.com/AdguardTeam/AdguardBrowserExtension/issues/917 2017-12-15 07:55:15 -05:00
Raymond Hill
6a8c27b6df
fix #3331: ability to fetch sublists using !# include directives 2017-12-15 07:39:21 -05:00
Raymond Hill
36956cbc7a
remove obsolete resource caching code 2017-12-14 16:42:54 -05:00
Raymond Hill
e54610a1ab
import translation work from https://crowdin.com/project/ublock 2017-12-14 08:21:03 -05:00
Raymond Hill
ca8917149d
fix #3341 2017-12-13 08:02:55 -05:00
Raymond Hill
0e9fbce041
import translation work from https://crowdin.com/project/ublock 2017-12-13 07:57:50 -05:00
gorhill
958a7c20ed
fix #3335 2017-12-10 15:03:03 -05:00
gorhill
e83ffde5af
code review for #3328 2017-12-08 07:07:05 -05:00
gorhill
c7e8b65b6c
fix #3328 2017-12-08 00:33:02 -05:00
gorhill
423b32a8ad
import translation work from https://crowdin.com/project/ublock 2017-12-03 07:39:42 -05:00
gorhill
faad68f37b
code review: simplify needlessly complicated logger buffering code 2017-12-01 16:42:33 -05:00
gorhill
88853070a1
fix 1c0fa98f0c (commitcomment-25969978) 2017-12-01 06:45:05 -05:00
gorhill
1c0fa98f0c
fix #3293 (need feedback) 2017-11-30 16:27:58 -05:00
gorhill
8c9fbfab5b
import translation work from https://crowdin.com/project/ublock 2017-11-29 07:19:40 -05:00
gorhill
142ed51f05
comment fix with issue number (#3287) 2017-11-27 17:09:22 -05:00
gorhill
426d9e9db1
fix #3287 2017-11-27 14:48:01 -05:00
gorhill
75659a3154
fix #3260 2017-11-22 07:41:33 -05:00
Kacper Michajłow
ec70c75264 improve DOM inspector (#3254)
* dom-inspector: Improvments

- Fix race between userCSS injection and element highlight resulting in none or not all elements highlighted.
- Fix page being scanned twice resulting in unneeded slowdown.

* dom-inspector: Clear mutationTimer to allow more than one update.

* dom-inspector: Fix procedural filters shown as declarative with expando.
2017-11-21 18:08:32 -05:00
gorhill
b85ea96d1e
fix #3257 2017-11-21 13:38:31 -05:00
gorhill
815517d4d6
import translation work from https://crowdin.com/project/ublock 2017-11-20 08:53:39 -05:00
gorhill
806032cdc4
improve DOM inspector
- Fix regressions reported in #3159
- Fix #2001
- Fix some item points in #407
2017-11-20 08:42:32 -05:00
gorhill
387eaa0b21
fix #3185 2017-11-16 10:55:28 -05:00
gorhill
b02fcb1b31
fix #3130 2017-11-16 00:34:01 -05:00
gorhill
118240d36d
fix #3232 (regression from 386e8bee9c) 2017-11-15 16:32:52 -05:00
gorhill
374e157b11
fix #3159 2017-11-14 15:03:20 -05:00
gorhill
fa5500a6a0
import translation work from https://crowdin.com/project/ublock 2017-11-13 09:08:34 -05:00
gorhill
034e46b055
mind isTrusted for click events (see https://palant.de/2017/11/11/on-web-extensions-shortcomings-and-their-impact-on-add-on-security) 2017-11-12 07:44:28 -05:00
gorhill
48f65f11d1
fix #2963 2017-11-12 07:41:55 -05:00
gorhill
502b9b15e6
import translation work from https://crowdin.com/project/ublock 2017-11-11 08:01:22 -05:00
gorhill
fd5f63d850
fix #3196 2017-11-10 11:36:14 -05:00
gorhill
8b0df725a1
minor code review (#2072) 2017-11-10 08:01:04 -05:00
gorhill
562bdc132c
translation work from https://crowdin.com/project/ublock 2017-11-10 07:56:40 -05:00
gorhill
7b27e8f08a
add further fixes as per feedback (#2072) 2017-11-10 07:53:27 -05:00
gorhill
d3d522ac46
fix #3213 2017-11-10 06:56:38 -05:00
gorhill
bc036724c1
code review (#3208) 2017-11-09 15:46:25 -05:00
gorhill
8d420a6da1
translation work from https://crowdin.com/project/ublock 2017-11-09 12:59:16 -05:00
gorhill
386e8bee9c
fix #3210 2017-11-09 12:53:05 -05:00
gorhill
3dcfc302e4
fix https://github.com/gorhill/uBlock/issues/3208#issuecomment-342900031 2017-11-08 13:29:04 -05:00
gorhill
86becd2514
oops 2017-11-08 11:11:36 -05:00
gorhill
cb1262a663
restore original short name as per feedback on https://crowdin.com/project/ublock 2017-11-08 10:55:35 -05:00
gorhill
e5afbb2ed7
further make popup panel more ARIA-friendly (#2072) 2017-11-08 07:34:22 -05:00
gorhill
9884ff115a
code review e7294a46d4: force refresh tooltip if needed 2017-11-07 17:03:24 -05:00
gorhill
e7294a46d4
fix https://github.com/gorhill/uBlock/issues/2072#issuecomment-342594160 2017-11-07 16:38:26 -05:00
gorhill
9d86ab0af9
fix #3201 2017-11-07 11:31:19 -05:00
gorhill
4d20950dfa
save investigative work for the future re. wasm 2017-11-05 12:33:46 -05:00
gorhill
da605f53a6
code review: avoid pointless test for single-char cells 2017-11-05 06:45:43 -05:00
gorhill
f71d3689a9
fix case 2 of #3199 2017-11-04 23:51:44 -04:00
gorhill
8d44bf9837
fix #3187 again, as per feedback 2017-11-03 16:51:28 -04:00
gorhill
22c460d52f
just edit comments 2017-11-03 08:36:16 -04:00
gorhill
5928996f2a
address #3193 2017-11-02 15:49:11 -04:00
gorhill
2ca8c76cb8
fix #3187 2017-11-02 11:12:17 -04:00
gorhill
3044590fa6
code review: allow free scrolling in element picker mode 2017-10-31 08:26:51 -04:00
gorhill
2db377f577
code review: lower timer delay = less risk of large backlog 2017-10-31 06:47:39 -04:00
gorhill
07d1d6819a
translation work from https://crowdin.com/project/ublock 2017-10-29 17:05:55 -04:00
gorhill
cbff97f8e7
code review: improve caching of high generics with exceptions 2017-10-29 13:58:46 -04:00
gorhill
25e2452722
code review: use for..of instead of for(..;..;..) 2017-10-28 16:50:44 -04:00
gorhill
005c659500
code review: improve element picker for touch-only devices 2017-10-28 09:07:41 -04:00
gorhill
bbda2a9086
code review: preemptively address https://bugzilla.mozilla.org/show_bug.cgi?id=1408996#c9 2017-10-27 14:22:45 -04:00
gorhill
d60edbfae1
code review last commit: oops 2017-10-26 06:23:57 -04:00
gorhill
44ce44aa42
code review: early injection of lookred up generic cosmetic filters when possible 2017-10-26 06:18:03 -04:00
gorhill
6b65e3f406
code review: avoid reinjecting already injected low generic cosmetic filters 2017-10-25 11:42:18 -04:00
gorhill
26e9bb7c19
code review: use Map instead of Object 2017-10-25 11:37:58 -04:00
gorhill
d33d54426e
translation work from https://crowdin.com/project/ublock 2017-10-24 16:46:53 -04:00
gorhill
9952e12aff
fine tune DOM surveyor 2017-10-24 16:38:51 -04:00
gorhill
ed5dba432a
fix https://discourse.mozilla.org/t/support-ublock-origin/6746/606 2017-10-24 09:09:10 -04:00
gorhill
2bea51cc63
fix silly regression regarding the DOM surveyor 2017-10-24 07:55:35 -04:00
gorhill
7571d4c576
fix no-popups switch color in logger 2017-10-23 22:39:30 -04:00
gorhill
9b891384af
fix #3165 2017-10-23 22:27:39 -04:00
gorhill
0503f52b1e
remove unused source code 2017-10-23 13:35:11 -04:00
gorhill
f516cd3d26
remove unused source code 2017-10-23 13:33:35 -04:00
gorhill
bdd594b67e
translation work from https://crowdin.com/project/ublock 2017-10-23 12:58:03 -04:00
gorhill
a76f5b15ac
fix https://github.com/gorhill/uBlock/issues/3160#issuecomment-338509997 2017-10-23 12:21:37 -04:00
gorhill
6e18829f02
add to #2984: fix regressions, as per feedback and code review 2017-10-23 09:01:00 -04:00
gorhill
14109b33d6
minor code review 2017-10-22 14:20:33 -04:00
gorhill
ef84e6d8fd
fix https://github.com/gorhill/uBlock/issues/2984#issuecomment-338475886 2017-10-22 12:48:13 -04:00
gorhill
4f7aab695c
fix #3160 2017-10-22 08:59:29 -04:00
gorhill
6112a68faf
fix #2984 2017-10-21 13:43:46 -04:00
gorhill
95f2fb6b11
translation wok from https://crowdin.com/project/ublock 2017-10-20 07:11:48 -04:00
gorhill
aaf01b7518
again update URL following changes to wiki 2017-10-19 10:06:36 -04:00
gorhill
c49aed29a3
update URL following changes to the wiki 2017-10-19 09:54:42 -04:00
gorhill
5861a9aac2
help translators re. #3150 2017-10-19 09:40:26 -04:00
gorhill
95b25f7d49
fix #3150 2017-10-19 09:35:28 -04:00
gorhill
143e9c7414
more code review re. #3140 2017-10-19 08:07:00 -04:00
gorhill
7e21eec7ce
code review for #3140: handle case where both blockedURI & sourceFile are not found 2017-10-19 00:45:24 -04:00
gorhill
eb7bdba47f
fix #3140 2017-10-18 15:00:22 -04:00
gorhill
d44c54a477
code review: diregard letter case when validating popup filters as popunder ones 2017-10-13 09:52:17 -04:00
gorhill
9b83033785
code review of 7713597e (oops) 2017-10-13 09:38:16 -04:00
gorhill
7713597e3e
fix #3129, #3112, #2277 2017-10-13 09:33:02 -04:00
gorhill
0c1207bd7a
fix #3110 2017-10-09 09:28:28 -04:00
gorhill
8c33720d16
fix #3111 2017-10-08 23:47:23 -04:00
gorhill
49c19f2dcc
remove stray console.log used for development purpose 2017-10-06 13:47:39 -04:00
gorhill
ca39be2770
translation work from https://crowdin.com/project/ublock 2017-10-06 13:38:12 -04:00
gorhill
4639d75896
fix #3101 2017-10-06 13:35:45 -04:00
gorhill
c49ba60f0b
minor code review 2017-10-05 08:38:34 -04:00
gorhill
bd18fe3901
fix #2793: user-friendlier normalization 2017-10-04 13:20:43 -04:00
gorhill
a6b01cb0e5
fix #3090 2017-10-04 11:14:24 -04:00
gorhill
e7e390d2e2
fix #3077 2017-10-01 07:56:28 -04:00
gorhill
ca299a394f
code review fix as per https://github.com/gorhill/uBlock/issues/2793#issuecomment-333269387 2017-09-30 10:18:41 -04:00
gorhill
6a71fc59a4
evict possible remnant of resources.txt from cache [Firefox] 2017-09-29 08:22:17 -04:00
gorhill
8559669e89
fix #2755 2017-09-28 12:53:05 -04:00
gorhill
d73b888150
fix #3060 2017-09-27 10:27:29 -04:00
gorhill
c74526a895
fix #3057 2017-09-26 16:09:35 -04:00
gorhill
cd5c0ec05a
translation work from https://github.com/gorhill/uBlock 2017-09-26 08:43:02 -04:00
gorhill
83ff2ef26e
fix #3053 2017-09-26 07:54:06 -04:00
gorhill
ac481ec1f2
fix #1510 2017-09-21 11:46:15 -04:00
gorhill
e3c4d4d7fe
change dashboard icon: keep the cogs for a future use 2017-09-21 09:06:07 -04:00
gorhill
54a0b3599e
translation work from https://crowdin.com/project/ublock 2017-09-21 09:02:42 -04:00
gorhill
0130e2b462
fix support link 2017-09-20 10:28:17 -04:00
gorhill
e9beccba51
code review of fix #3038 2017-09-19 23:25:08 -04:00
gorhill
1b6c211fa0
fix #3038 2017-09-19 12:58:11 -04:00
gorhill
59ba5248f5
fix #3034 2017-09-18 13:06:36 -04:00
gorhill
b677600637
fix #3032 -- hopefully 2017-09-18 10:52:30 -04:00
gorhill
b21e8b5e77
translation from https://crowdin.com/project/ublock 2017-09-16 08:41:36 -04:00
gorhill
1e760f9429
fix #3024: regression from 5626b500 2017-09-16 07:59:56 -04:00
gorhill
2c4faaa84d
fix #3020 2017-09-16 07:49:43 -04:00
gorhill
f632171566
remove spurious space character 2017-09-14 17:54:59 -04:00
gorhill
b778c6a365
translation work from https://crowdin.com/project/ublock 2017-09-14 13:32:48 -04:00
gorhill
faeedeaf56
fix #2283 2017-09-13 23:41:20 -04:00
gorhill
5626b5005a
fix #2946 2017-09-12 11:43:43 -04:00
gorhill
147dc4f987
translation work from https://crowdin.com/project/ublock 2017-09-11 17:10:43 -04:00
gorhill
dfe18111b9
fix #1539 2017-09-11 09:53:42 -04:00
gorhill
c641cadea9
rename "Social" filter list category to "Annoyances" 2017-09-10 13:02:04 -04:00
gorhill
2660bee0d2
fix #2919 2017-09-05 19:49:48 -04:00
gorhill
a0c595d02d
fix #2950 2017-09-02 06:11:33 -04:00
gorhill
8b4b1fa9db
properly fix #2938 2017-08-31 14:17:55 -04:00
gorhill
73387e54ad
fix #2938 2017-08-30 19:03:02 -04:00
gorhill
126110c9a0
remove ability to pull latest version of resources.txt from remote repo.
This is required as per Firefox extension reviewers. Mail exchange:

========

Reviewer:
> Do I read the code correctly that you are executing remote JS by
> downloading/updating from
> https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/resources.txt
> and injecting scripts in contentscripts.js?

Me:
> Yes, resources.txt contains scriptlets or other resources used to:
>
> - Minimize potential page breakage (e.g. google-analytics.com/ga.js);
> - Defuse anti-blockers (e.g. bab-defuser.js);
> - Defuse anti-blockers or minimize page breakage through redirection
> (e.g. 2x2-transparent.png)
>
> This is not a new feature -- this is also part of the legacy version,
> and I consider this is a major feature of uBO. Given how fast things can
> change out there, this allows me to quickly push fixes when a new issue
> is reported for a site without having to go through a full update of the
> extension.

Reviewer:
> I am aware that this is not a new feature. I am unclear why it has been
> allowed in the past, since it violates our policy about remote code
> execution. I assume it was missed due to the fairly complex codebase.
>
> I can approve this version so you are not blocked on the migration, but
> eventually, you cannot use functionality that executes remote code.
> Since we're moving to a more automated review process, you will be able
> to ship new versions without being blocked on a human review.

Me:
> Do I understand correctly that extensions such as TamperMonkey or
> ViolentMonkey won't be allowed on AMO?
>
> Those extensions are even more permissive than uBO given a user can
> import scripts from any source, while with uBO only scriptlets which are
> part of the project are allowed.

Reviewer:
> The key difference between add-ons like Tampermonkey and uBO is that in
> Tampermonkey, users are making an active and conscious decision to
> download and execute that specific code. In uBO, the user did not
> initiate that download/execution, nor are they even aware of it
> happening.

Me:
> So users of TamperMonkey -- tech-savvy or not -- can download & inject
> countless 3rd-party user scripts from countless authors, have them
> update on their own automatically at regular interval with no user
> intervention.
>
> On the other hand, it's not acceptable for me, the author of the
> extension, who users implicitly trusted when installing the extension,
> who is completely controlling and vouching for the content of
> "resources.txt", to have this one 1st-party resource file[1] to be
> updated at regular interval with no user intervention.
>
> So anyways, what is expected from me at this point? Do I need to remove
> scriptlet injection and resource redirection features? Do I need to
> remove only the updating part of resources.txt?
>
> [1] key to core features of uBO (counter anti-blockers + page breakage
> mitigations) and possibly an important factor in installing the
> extension.

========

Now about this commit: the purpose of the code change here is to
prevent "resources.txt" -- which is part of the package -- from being
updated -- this applies only to the Firefox webext[-hybrid] version
of uBO.
2017-08-30 09:15:06 -04:00
gorhill
beb7933016
fix #2925 2017-08-29 18:32:00 -04:00
gorhill
b2e89c9ece
generate better regex for hostname-anchored generic filters 2017-08-24 18:30:05 -04:00
gorhill
c31d29c2e3
fix bad test: regression from fdcc9515 2017-08-24 17:54:27 -04:00
gorhill
9a64bf2282
translation work from https://crowdin.com/project/ublock 2017-08-22 19:00:53 -04:00
gorhill
63be43a365
shield content script against exceptions in injected scriptlets 2017-08-21 12:04:35 -04:00
gorhill
a1350b8cff
fix #2882 2017-08-17 09:54:01 -04:00
gorhill
b9f793e06f
translation work from https://crowdin.com/project/ublock 2017-08-17 08:34:00 -04:00
gorhill
fdcc9515dc
fix #2029 2017-08-17 08:25:02 -04:00
gorhill
d1c752da29
fix bad English in comment 2017-08-16 18:06:04 -04:00
gorhill
797082a36c
fix #2552 2017-08-16 14:10:41 -04:00
gorhill
5f72565f7a
fix #2873 2017-08-15 09:09:16 -04:00
gorhill
0e078e536d
eliminate validation warning on AMO: avoid innerHTML 2017-08-11 14:26:15 -04:00
gorhill
502dd89d53
fix AMO validation warning re. invalid CSS 2017-08-10 18:55:36 -04:00
gorhill
04718be3fd
translation work from https://crowdin.com/project/ublock 2017-08-09 10:52:27 -04:00
gorhill
7291227a64
fix #2836 2017-08-08 11:08:18 -04:00
Alex Silva
06237767fa Update about.html (#2841) 2017-08-03 17:07:30 -04:00
gorhill
eb3519b075
fix #2839 2017-08-03 10:18:05 -04:00
gorhill
43512277c6
fix #2835 2017-07-31 17:03:09 -04:00
gorhill
645c862886
always set browserAction title 2017-07-25 09:16:48 -04:00
gorhill
906cb34716
make uBO/webext functional on Firefox for Android Nightly 2017-07-24 19:25:49 -04:00
gorhill
d866e4d472
add proper handling of potentially unsupported webext APIs 2017-07-24 11:35:22 -04:00
gorhill
0d892a8856
fix #2810 2017-07-23 09:56:43 -04:00
gorhill
48ee02980b
remove stray code change from f5ef83719c 2017-07-22 17:13:21 -04:00
gorhill
b429e1c7ba
fix #2813 2017-07-22 16:58:08 -04:00
gorhill
f5ef83719c
address #2806 2017-07-21 07:48:50 -04:00
gorhill
f1036395f7
add workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1360285 2017-07-19 09:36:17 -04:00
gorhill
ebf89751b9
translation work from https://crowdin.com/project/ublock 2017-07-18 09:47:38 -04:00
gorhill
49d287994f
remove obsolete default whitelist directive 2017-07-14 07:49:58 -04:00
gorhill
4c39461ab6
translation work from https://crowdin.com/project/ublock 2017-07-13 15:16:20 -04:00
gorhill
36317e67a2
#2781: code review, small fine tuning 2017-07-13 14:34:43 -04:00
gorhill
3aed25ff2c
#2781: code review, try a bit harder to find a good token 2017-07-11 15:04:25 -04:00
gorhill
f0ea2b6f9a
#2781: code review 2017-07-11 13:57:31 -04:00
gorhill
2862368a99
fix #2781 2017-07-11 12:21:08 -04:00
gorhill
93f575c4c0
fix https://github.com/gorhill/uBlock/issues/2776#issuecomment-313922863 2017-07-09 10:39:23 -04:00
gorhill
7fb034f640
minor code review: logData can still be set when not logging 2017-07-09 08:45:55 -04:00
gorhill
9701a519a2
really fix #2776 2017-07-09 06:58:34 -04:00
gorhill
974194ab8d
fix #2776 2017-07-08 20:03:37 -04:00
gorhill
efffa5e183
trashcan instead of X to remove an imported list 2017-07-07 11:31:37 -04:00
gorhill
9ac4dc9f81
fix #2768 2017-07-07 11:23:24 -04:00
gorhill
6273b5d7bf
translation work from https://crowdin.com/project/ublock 2017-07-05 11:01:02 -04:00
gorhill
186c119202
fix #2753 2017-07-03 10:54:30 -04:00
gorhill
414765f526
code review: fix workaround for legacy FF 2017-07-03 10:50:47 -04:00
gorhill
2cb8ddbe03
fix #2740 2017-07-03 10:20:47 -04:00
gorhill
a8382e821d
work around for #2734 until fixed in Nightly 2017-07-03 09:51:34 -04:00
gorhill
20346ef0ed
auto-convert removed stock list into an imported list 2017-07-03 09:08:46 -04:00
gorhill
bb4bf3d795
translation work from https://crowdin.com/project/ublock 2017-06-25 21:53:58 -04:00
Raymond Hill
bc2ee2d560 translation work from https://crowdin.com/project/ublock 2017-06-24 16:25:17 -04:00
Raymond Hill
afa7995d7d fix #2730 2017-06-24 15:43:08 -04:00
gorhill
5360b3b0a9
dashboard icon should be last 2017-06-23 06:48:06 -04:00
gorhill
d337abe504
minor code review 2017-06-22 14:36:45 -04:00
Sean Stangl
88fcf53d34 Check childElementCount directly. (#2725) 2017-06-21 20:09:19 -04:00
gorhill
9b55684551
fix #2718 2017-06-21 15:49:42 -04:00
gorhill
5ee1fa7684
fix #2720 2017-06-21 07:17:44 -04:00
gorhill
d95c5672be
translation work from https://crowdin.com/project/ublock 2017-06-19 09:30:32 -04:00
gorhill
f3fb8230ec
translation work from https://crowdin.com/project/ublock 2017-06-17 10:25:04 -04:00
gorhill
84f22ce3a6
code review: do not pollute logger with firewall noop rules 2017-06-14 08:32:12 -04:00
gorhill
2fdf4cb19d
translation work from https://crowdin.com/project/ublock 2017-06-09 10:56:43 -04:00
gorhill
2c9c98eb79
fix #2664 2017-06-07 17:35:22 -04:00
gorhill
6b293dd58b
code review: put back erroneously removed line 2017-06-07 13:20:35 -04:00
gorhill
3110d45771
translation work from https://crowdin.com/project/ublock 2017-06-05 09:28:27 -04:00