Commit Graph

9478 Commits

Author SHA1 Message Date
Raymond Hill 0df8986b52
Fix `make lint` warning 2021-12-04 11:48:17 -05:00
Raymond Hill e8e7294431
New revision for dev build 2021-12-04 11:45:43 -05:00
Raymond Hill 725e6931f5
Refactoring work in static network filtering engine
The original motivation is to further speed up launch time
for either non-selfie-based and selfie-based initialization
of the static network filtering engine (SNFE).

As a result of the refactoring:

Filters are no longer instance-based, they are sequence-of-
integer-based. This eliminates the need to create instances
of filters at launch, and consequently eliminates all the
calls to class constructors, the resulting churning of memory,
and so forth.

All the properties defining filter instances are now as much
as possible 32-bit integer-based, and these are allocated in a
single module-scoped typed array -- this eliminates the need
to allocate memory for every filter being instantiated.

Not all filter properties can be represented as a 32-bit
integer, and in this case a filter class can allocate slots
into another module-scoped array of references.

As a result, this eliminates a lot of memory allocations when
the SNFE is populated with filters, and this makes the saving
and loading of selfie more straightforward, as the operation
is reduced to saving/loading two arrays, one of 32-bit
integers, and the other, much smaller, an array JSON-able
values.

All filter classes now only contain static methods, and all
of these methods are called with an index to the specific
filter data in the module-scoped array of 32-bit integers.

The filter sequences (used to avoid the use of JS arrays) are
also allocated in the single module-scoped array of 32-bit
integers -- they used to be stored in their own dedicated
array.

Additionally, some filters are now loaded more in a deferred
way, so as reduce uBO's time-to-readiness -- the outcome of
this still needs to be evaluated, time-to-readiness is
especially a concern in Firefox for Android or less powerful
computers.
2021-12-04 11:16:44 -05:00
Raymond Hill 64f427d0e5
Have `getAll()` returns at least one neutered Tracker object
Related discussion:
- https://github.com/uBlockOrigin/uAssets/issues/10731#issuecomment-986031354
2021-12-04 11:07:19 -05:00
Raymond Hill ccc4c7d41f
Log selfie-related events at launch time 2021-12-04 10:55:33 -05:00
Raymond Hill 1becd8ad18
Use `removeparam`, `queryprune` is deprecated 2021-12-04 10:52:24 -05:00
Raymond Hill 7428e117b5
Remove pointless setting from support information 2021-12-04 10:44:57 -05:00
Raymond Hill 5f7d005e3d
Fix pointless use of parenthesis in regex 2021-12-02 17:58:52 -05:00
Raymond Hill 99dfce0b44
Fix `make lint` warning 2021-12-02 17:58:17 -05:00
Raymond Hill 1ce11f72bc
New revision for stable release 2021-11-30 08:06:16 -05:00
Raymond Hill 3ff3e794f2
Update submodules 2021-11-30 08:05:07 -05:00
Raymond Hill 33ab856e86
Import translation work from https://crowdin.com/project/ublock 2021-11-30 08:04:45 -05:00
Raymond Hill 395a4e36a9
Officialize `uiPopupConfig` advanced setting
Related discussion:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1817#issuecomment-981104204
2021-11-28 10:35:50 -05:00
Raymond Hill 217bddb423
Make Firefox dev build auto-update 2021-11-28 07:56:58 -05:00
Raymond Hill 5ad4efc17e
New revision for release candidate 2021-11-28 07:48:49 -05:00
Raymond Hill aad90eb323
More fine tuning of filter issue report feature 2021-11-28 07:47:16 -05:00
Raymond Hill b66dfb1c87
Make Firefox dev build auto-update 2021-11-27 12:21:19 -05:00
Raymond Hill fe3affc777
New revision for dev build 2021-11-27 12:14:08 -05:00
Raymond Hill a06296d4e8
Import translation work from https://crowdin.com/project/ublock 2021-11-27 12:10:31 -05:00
Raymond Hill 1408422cba
Fine tune new reporting feature
Add ability to bring back logger button in popup panel through
the advanced setting `uiPopupConfig`. Adding `+logger` token
to `uiPopupConfig` will bring back the logger icon in the mobile
version of the popup panel.

Additionally, the link to the logger in the Support pane will
take into account whether the <Shift> key is pressed, so as
to behave like the logger icon in the popup panel.

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

The troubleshooting information has been further fine-tuned to
report popup panel data related to the reported page, for better
diagnosis by disclosing any customization to uBO which was
affecting the reported page.
2021-11-27 11:58:32 -05:00
Raymond Hill 6f31f07255
Make Firefox dev build auto-update 2021-11-26 12:41:54 -05:00
Raymond Hill a2444a8c25
Import translation work from https://crowdin.com/project/ublock 2021-11-26 12:30:50 -05:00
Raymond Hill 32122329c9
New revision for dev build 2021-11-26 12:27:12 -05:00
Raymond Hill 74d1f90264
Allow reporter to select a choice of URLs to report
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1836

The URL to report can now be picked from a list of related
URLs in order to allow the reporter to publish edited version
of the reported URL.

Additionally, the hash, user name, and password which could be
present in a reported URL are always removed.
2021-11-26 12:23:18 -05:00
Edward Brey 95a105da1a
Link to filter descriptions
If you click the Home button for one of the EasyList filter lists in uBlock settings, now you will go to a page that succinctly describes what the filter does. The old links took you to a forum with no clear way to find info on a given filter, especially for a new user.
2021-11-26 06:12:46 -06:00
Raymond Hill 1ac9c5ceb7
Reject generic HTML block filters
Related feedback:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1844

Generic HTML block filters will by highlighted as invalid and
rejected by uBO at compile time.
2021-11-24 18:14:09 -05:00
Raymond Hill 8bad29fbcc
New version for stable release 2021-11-22 09:10:12 -05:00
Raymond Hill 19800f0af2
Update submodules 2021-11-22 09:09:36 -05:00
Raymond Hill 3cf3ec595f
Import translation work from https://crowdin.com/project/ublock 2021-11-22 09:06:02 -05:00
Raymond Hill 374d4800e5
Arrow functions are not `instanceof Function`
But their `typeof` is `function`, so use this instead to
detect whether an argument is a function which can be
called.

Related feedback:
- https://www.reddit.com/r/uBlockOrigin/comments/qyx7en/
2021-11-21 11:19:12 -05:00
Raymond Hill 9b1f59c8b2
Make Firefox dev build auto-update 2021-11-21 08:36:45 -05:00
Raymond Hill e81683b27b
New revision for dev build 2021-11-21 08:28:11 -05:00
Raymond Hill 5845aa3d73
Import translation work from https://crowdin.com/project/ublock 2021-11-21 08:00:22 -05:00
Raymond Hill 2fae1ce90e
Remove ability to unredact
Unredacted settings is unlikely to be useful after all,
and removing the ability to unredact ensure users won't
mistakenly publish unredacted information.
2021-11-21 07:53:36 -05:00
Raymond Hill a8f0461a57
Make Firefox dev build auto-update 2021-11-20 09:56:21 -05:00
Raymond Hill be034c7a66
New revision for release candidate 2021-11-20 09:40:09 -05:00
Raymond Hill a240392e07
Import translation work from https://crowdin.com/project/ublock 2021-11-20 09:39:48 -05:00
Raymond Hill 5d51d172c4
Collapse config details by default 2021-11-20 09:38:00 -05:00
Raymond Hill 64cd70664d
Update submodules 2021-11-19 08:54:05 -05:00
Raymond Hill 69a2f123c5
Import translation work from https://crowdin.com/project/ublock 2021-11-19 08:32:11 -05:00
Raymond Hill 0aca350914
Update submodules 2021-11-19 08:15:41 -05:00
Raymond Hill ee5ef4e8ab
Update block-lan list location 2021-11-18 12:27:26 -05:00
Raymond Hill bec9e190fd
Make Firefox dev build auto-update 2021-11-18 12:11:34 -05:00
Raymond Hill 74137c6b82
New revision for release candidate 2021-11-18 11:36:02 -05:00
Raymond Hill 5c48e32344
Import translation work from https://crowdin.com/project/ublock 2021-11-18 11:24:07 -05:00
Raymond Hill bb3c75e37a
Better English, I think 2021-11-18 11:13:04 -05:00
Raymond Hill f33f92c47f
Make Firefox dev build auto-update 2021-11-17 09:46:14 -05:00
Raymond Hill e9ea57e9ac
Use real quotes (i.e. not HTML encoded)
So that translators can replace them mor eeasily with
whatever quotes is most appropriate for the language.
2021-11-17 09:37:11 -05:00
Raymond Hill 2c679fffde
New revision for release candidate 2021-11-17 09:26:27 -05:00
Raymond Hill 6566f496c2
Import translation work from https://crowdin.com/project/ublock 2021-11-17 08:23:57 -05:00