-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revise the scope of the filter syntax converter #228
Comments
This was done for performance reasons. This was discussed in more detail somewhere deep in General filter chit-chat, but its size does not allow me now to find exactly where it was. The current set of filters to proceed was created based on which of the filters uses the new syntax. We can expand it if I missed something or think of an additional advanced option to enable processing of all filters, but I would not want to enable it by default. |
I agree that all filters should be converted, including "user filters" (if you refer to "custom" ones, under uBO's "Filter lists" tab). |
Yes, and this was done intentionally so as not to confuse users. Filters loaded from remote sources are displayed by uBO already converted and are displayed in the logs in the same way. With "My filters" this will not work, so they are not converted, and displayed and used as is. Theoretically, I can try to add an additional option that will activate the converter for "My filters", if one need this for A/B testing, but I'm afraid that you yourself will get confused. |
That approach has the disadvantage that it doesn't automatically account for whenever a new list has moved from the old syntax to the new. For instance, Frellwit's list now has ≥100 entries with the new +js syntax, which I think happened after the inital creation of the conversion script. |
|
Frellwit's list used the old syntax when the conversion began, but has since moved on to the new syntax. For instance, in uBO 1.16.4.19 on Pale Moon 18.8.4 64-bit, testing on
...are not shown in the uBO logger as having been applied, nor are any other |
Yes, Frellwit's Swedish Filter does indeed use the new filter syntaxes, and so does many other filters, which the converter currently doesn't process! |
Ok, probably then it's worth adding all regional filters to the list for processing by default. However, turning processing on globally will have too much negative impact on performance due to monsters like EasyList or Malware Domains, which are also pointless to process, just like all AdGuard lists. |
What about the custom filters? --
How much of a performance drop do you estimate that we're talking about exactly? |
What about an option in the advanced settings to turn on global processing? Unfortunately, the best solution has not yet crossed my mind.
This can cause the browser to freeze for several seconds when updating filters. |
Trying to rule out lists that quite clearly intended to target ABP only (e.g. Greek Adblock Filter, EasyList Italy, etc.), gave me these remaining results for lists that do intend to support uBO and its many syntaxes in whichever ways:
It's also possible that AdGuard, who are themselves already converting from their own |
OK, an optional advanced setting sounds like a reasonable solution then. |
This comment has been minimized.
This comment has been minimized.
Well, it seems that since the initial implementation of the filter syntax converter, my test results for its performance are somewhat outdated. I checked it again and it turned out that now it looks quite good at handling even large filters like EasyList or Malware Domains. Here is a test version that has uBlock0_1.16.4.20b2.firefox-legacy.xpi.zip (rename to xpi) Could you please check how uBO behaves when this option turned on in your case? Perhaps now we can just apply the converter for all filters (except My Filters)? There is also |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
In fact, AdGuard filters already use syntax that requires conversion and such filters are not excluded (AdGuard Base, AdGuard Mobile Ads, etc.). At the same time, AdGuard Tracking Protection and AdGuard Social Media, which are excluded, seem to use only simple syntax by the very nature of these filters. Though, if I'm wrong, this can always be corrected later. |
AG no needed, They recently launched (a month ago?) In addition, when it comes to scriptlets, they have already made sure that long names are used instead of abbreviated ones. |
Well, let's just ask the source.. @BlazDT: |
At least not that I am aware of. We rarely use javascript rules in Tracking and Social filter. @ameshkov Or is anything planned I am probably not aware of (at least not found anything in filters chat)? |
Wait-wait-wait, what have I missed, the scriptlets syntax was changed again? Regarding the original question:
I wholeheartedly hate backward-incompatible syntax changes that appear out of the blue. |
|
The change occured 1~2 years ago, so that e.g. Double-checking with my AdGuard for Windows installation, |
But it's not about "uBo-Firefox-legacy", how AG convert the short names in AG-extension / server side to works as an adguard scriplet filter. If your record doesn't work: then report it converted to a long name: or add anchors in the code (alias). |
…cluded Also add an advanced option `assetConvertMyFilters` to make the converter process `My Filters` (disabled by default). Related issue: - #228
Scriptlet for Twitch does not work because filter does not have |
@gwarser, sorry, but I didn't quite understand your question. |
This comment has been minimized.
This comment has been minimized.
One user on Reddit complained about ads on Twitch on Waterfox classic (or even older version). I tried adding custom scriptlet to uBO by advanced |
" |
Twitch scriptlet is not translated internally: uBlock-for-firefox-legacy/src/js/assets.js Lines 293 to 380 in 2a285b8
|
|
That's sad, but thanks for the info, since I don't use twitch myself and don't really follow this topic. |
Rather, the script will not survive in this form anyway. Also, it is unlikely to be supported by parameters so as not to update it "every 2 days" at extension code level. |
Well, I've been considering adding |
|
Currently, filter syntax converter applies only to an explicitly specified limited set of filters, and also does not apply to "My filters".
There was a request that this behavior needs to be adjusted.
The text was updated successfully, but these errors were encountered: