Skip to content
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

General filter chit-chat №2 #63

Closed
DandelionSprout opened this issue Feb 25, 2020 · 2,500 comments
Closed

General filter chit-chat №2 #63

DandelionSprout opened this issue Feb 25, 2020 · 2,500 comments

Comments

@DandelionSprout
Copy link
Owner

DandelionSprout commented Feb 25, 2020

Note, 13th of February 2023: Next de facto discussion place until further notice is at #779.

————————————

So today I learned that GitHub threads max out at 2,500 comments, despite nothing and no one ever telling me about that previously, let alone GitHub's help pages. So here's thread number 2!

This thread is a megathread about adblock discussions in general. Here one can request syntax help, reproduction confirmations, info about differences between adblockers, assistance with making new lists, and so on. They'll be answered or considered by the biggest Adfilt contributors, and occasionally by members of the uBlock Origin development team (although in an unofficial fashion). (This header section was last updated on the 24th of April 2019 by DandelionSprout.)

Same non-obligatory rules apply as in the previous thread (Rules can be amended by Dandelion Sprout on very short notice, but this happens pretty rarely):

  • Anything ad-, adblocker-, and adblocking-related of any sort goes.
  • (Modified 04/08/2020) Temporary derails and jokes/puns derived from adblock topics are permitted. Bringing up random stuff apropos of nothing is not recommended.
  • Political discussions are only permitted if they are directly related to something adblock-related.
  • Disclosing personal opinions about everyday topics (e.g. family life, non-tech worklife, strong political stances, pizza toppings) is normally discouraged, on the assumption that it could lead to thread participants losing some of their respect for one another.
  • When mentioning websites that are (not) affected by adblocking, it is customary to wrap website names and adblocker entries into ` (Grave accents). This will allegedly make it harder for the websites to find this thread in search engines.
  • Swearing is normally permitted, but is considered bad form. Swearing as a part of an insultment is even more of a bad form.
  • While the following has not been a problem in this thread, they have been sporadic problems among uBO enthusiasts: It is advised to not be hyper-excited when writing comments, whereas reporting thread participants or this repo to GitHub (unless you have a very good reason) is probable grounds for insta-removal from the thread and for the humiliation and pariah-ism of you from the uBlock Origin community.
  • If you wish to emote-react to your own comment: Why not use 'Windows key'+. to insert the emote into the end of the actual comment instead? It'll save some vertical space as well. (This rule is sleeping for W8 users until further notice.)
  • (Added 15/04/2020) Threatening to beat up other thread users out of anger, is usually a very bad idea.
  • (Added 14/07/2020) When discussing GitHub users who are known to be very agitating, all mentions of and linkings to them are to be wrapped in grave accents.
  • (Added 18/11/2021) Ban evasion clones of Kulfoon will be permablocked on sight.
  • (Added 10/02/2022) Excessive use of deleting and making new accounts, even they aren't for evasion, can lead to becoming persona non grata in the thread, and in the worst of cases being blocked.
  • (Added 20/09/2022) Emote reactions on-average over a period of time, must be determined to have at least some sort of plausible reason or pattern. Serial offenders can get a pretty stern talk. Further repeated offences afterwards that also cause wide confusion, can lead to bans.
  • (Added 20/09/2022) Comments whose English is so broken as to be impossible to decipher, can be deleted at my discretion.
@THEtomaso
Copy link

THEtomaso commented Feb 25, 2020

today I learned that GitHub threads max out at 2,500 comments

How are we expected to resolve any issues, with such a low limit!? :)

@krystian3w
Copy link
Contributor

krystian3w commented Feb 25, 2020

Github crash, I have many errors 500 on update files in online editor or send comments:

"You can't comment at this time. ".

obraz
obraz

@THEtomaso
Copy link

@DandelionSprout:

Ad labels between feed entries:
https://sol.no/studio/sol-livestudio/388/

Possible fix:
sol.no##[class^="AdPrefix"]

DandelionSprout added a commit that referenced this issue Feb 25, 2020
@Yuki2718
Copy link
Contributor

@THEtomaso Just a personal opinion about the matter you noted in the previous thread. Using social filter does not necessarily mean you wanna block anything social. I don't use Facebook and I subscribe AdGuard Social, but hope any of my filters never ever interfere with news article about Facebook which may or may not include links to FB, which unfortunately for me was the case for Fanboy Social - I don't report such one-time false positives but still they're annoying. I rather wonder why so many filters, not limited to social ones, prefer generic rules and don't make specific rules one-by-one - this way you can avoid most of false positives, and I believe it's more efficient in terms of performance unless the number of rules goes too many. I don't expect any filter to be perfect on blocking and kinda accept some false negatives, but single false positive is annoying enough despite I can fix them. I maintain my own private filters which currently include about 2,000 rules each for PC & mobile, most of them are specific rules and I make a rule generic only after I confirmed the pattern is found on many sites (usually 3-5+ sites). AdGuard also tends to use more specific rules compared to EasyList/Fanboy and even replaced some generic rules in EL with specific rules, which I think makes sense given most AG users are noobs. Well, one thing I'm not so happy is AG filters tend to rely too much on cosmetic filters which I don't see much value.

@THEtomaso
Copy link

I maintain my own private filters which currently include about 2,000 rules each

Getting close to 19.000 rules in my own filter, and particularly the social media entries (site-specific ones) has gotten way out of hand!

@THEtomaso
Copy link

THEtomaso commented Feb 26, 2020

@DandelionSprout:

chilimobil.no and prisjakt.no ads + empty ad boxes with labels:

https://www.tek.no/
https://www.tek.no/nyheter/nyhet/i/OpJ7nw/

Possible fix:

tek.no#?#.lp_article_content > div:-abp-contains(annonse)
tek.no#?#section > div > div:-abp-contains(annonse)
tek.no#?##application > div > main > div > div:-abp-contains(annonse)

DandelionSprout added a commit that referenced this issue Feb 26, 2020
@THEtomaso
Copy link

894b915

The crap remains!:

filterissue-tek-1

filterissue-tek-2

filterissue-tek-3

@DandelionSprout
Copy link
Owner Author

I missed out on the Prisjakt ad the first time around. I don't consider the phone subscription comparison to be an ad at the time of writing, although I feel they could've shared more info about the comparison. The bottom ad placeholder will be fixed in Pale Moon once the :nth-ancestor fix goes live.

DandelionSprout added a commit that referenced this issue Feb 26, 2020
@THEtomaso
Copy link

THEtomaso commented Feb 26, 2020

Also, you missed the ad label in my last screenshot!

EDIT:
..and there's more Prisjakt stuff here!:
https://www.tek.no/produkter/19266/

@krystian3w
Copy link
Contributor

||i.imgur.com/eQ15Dp8.png$domain=bindingofisaac.fandom.com

@DandelionSprout
Copy link
Owner Author

DandelionSprout commented Feb 26, 2020

(To THEtomaso) The ad label is removed by tek.no##div[id$=_body_ad]:nth-ancestor(1). I have a personal policy of not adding legacy-version-only fixes to my lists, so if you're unable to wait for uBO1.16.4.19, you can add tek.no##div[id$=_body_ad]:xpath(..) in the meantime.

I'll add an entry for the Prisjakt carousel in that link. The price tag of the page's main keyboard won't be removed, as it's convenient to know how much a product costs in Norway.

(To krystian3w) Presuming this was meant for the Anti-'Custom cursors' List, I thank you greatly for that tip. I'll add an entry for it pretty soon.

DandelionSprout added a commit that referenced this issue Feb 26, 2020
DandelionSprout added a commit that referenced this issue Feb 26, 2020
@THEtomaso
Copy link

if you're unable to wait for uBO1.16.4.19, you can add tek.no##div[id$=_body_ad]:xpath(..) in the meantime.

No need.
The rules in my initial report takes care of everyting.

@DandelionSprout
Copy link
Owner Author

I suppose it does, now that I tested them out... Give me some seconds.

DandelionSprout added a commit that referenced this issue Feb 26, 2020
@Yuki2718
Copy link
Contributor

Yuki2718 commented Feb 27, 2020

I maintain my own private filters which currently include about 2,000 rules each

Getting close to 19.000 rules in my own filter, and particularly the social media entries (site-specific ones) has gotten way out of hand!

It may be time for you to build your empire ;) I'm speaking on users' side, particularly when it comes to social staff false negatives are not big deal. I basically ignore those social buttons unless either I can block them all by 1 or 2 blocking rules alone (no cosmetic rule), or they're annoying enough (e.g. floating buttons), but one FP is worse than 20 FNs at least for me - maybe it's only me. Having looked various filters, I see one tendency that newer filter maintainers tend to use more specific rules. I guess that's reasonable from the current user base perspective. Also If one generic rule replaced 5 specific rules but required 4 exception rules to be added, it doesn't make much sense.

@DandelionSprout
Copy link
Owner Author

I for one felt I had to create my own social list that solely removed sharing buttons, as I felt that both AdGuard's and Fanboy's social lists were far too broadly blocking.

And sadly, social media stuff is very difficult to handle with adblock lists. Even though I use very broad hiding rules in that list, around ¼ of all websites I come across still slip through it.

@THEtomaso
Copy link

THEtomaso commented Feb 27, 2020

@DandelionSprout:

Deblurrer for elbil24.no:
elbil24.no##.CTA-body-faded

Example:
https://www.elbil24.no/71205244/

DandelionSprout added a commit that referenced this issue Feb 27, 2020
@DandelionSprout
Copy link
Owner Author

PSA (although not a critical one): If you ever see any filterlists use $reload, it's probably a pretty fraudulent list, especially considering it's only believed to be supported by extremely questionable PR-Chinese browser extensions.

From what I could understand from https://translate.google.com/translate?sl=auto&tl=en&u=https%3A%2F%2Fwww.huorong.cn%2Finfo%2F1582284212427.html, the ChinaList 2.0 list was caught red-handed trying to earn affiliation rewards from extension users, and has now been emptied as a result of sheer shame.

@Yuki2718
Copy link
Contributor

PSA (although not a critical one): If you ever see any filterlists use $reload, it's probably a pretty fraudulent list, especially considering it's only believed to be supported by extremely questionable PR-Chinese browser extensions.

From what I could understand from https://translate.google.com/translate?sl=auto&tl=en&u=https%3A%2F%2Fwww.huorong.cn%2Finfo%2F1582284212427.html, the ChinaList 2.0 list was caught red-handed trying to earn affiliation rewards from extension users, and has now been emptied as a result of sheer shame.

Are you aware of any list that actually uses that strange modifier?

@DandelionSprout
Copy link
Owner Author

DandelionSprout commented Feb 29, 2020

My personal but unclear understanding is that ChinaList 2.0 (Here's a Wayback Machine entry that includes the entries) was the only list to ever have used it, thankfully.

But although I look through many lists frequently as a hobby, who knows if there's something else out there that has or will manage to slide by behind our backs.

@krystian3w
Copy link
Contributor

Only modified uBO / AG / AdBlock (or ABP)?

@throwaway-d
Copy link

throwaway-d commented Feb 10, 2023

The extension component of Redundant Rule Checker has been broken since circa 2019, sadly. There is https://github.com/funilrys/PyFunceble, if you're able to install it on your PC.

I think I will use Dead-Hosts so other people do it for me since I'm not a developer to use docker and any highly technical stuff.
Here is my submitted request: dead-hosts/dev-center#28

@krystian3w
Copy link
Contributor

https://github.com/FiltersHeroes/ScriptsPlayground/blob/master/scripts/ECODFF.sh

But I can't help much on the errors that GNU/Linux or WSL 2 will spit out.

@iam-py-test
Copy link
Collaborator

iam-py-test commented Feb 10, 2023

I think I will use Dead-Hosts so other people do it for me since I'm not a developer to use docker and any highly technical stuff.

PyFunceble shouldn't require docker (at least on Windows, I haven't tried it on Linux but it should work). It should just install via pip if you have Python installed.

https://github.com/FiltersHeroes/ScriptsPlayground/blob/master/scripts/ECODFF.sh

Cool script, thanks.

@throwaway-d
Copy link

PyFunceble shouldn't require docker (at least on Windows, I haven't tried it on Linux but it should work). It should just install via pip if you have Python installed.

I am not a developer, so I don't have Python installed either.

@krystian3w
Copy link
Contributor

If you are not on Windows 7 or legacy GNU/Linux distro then installation is "easy".

On Windows 7 needed is use Python embeded into LibreOffice/Gimp or unofficial installers like: https://github.com/adang1345/PythonWin7
to have latest release than last supported officially.

Or you use account with limitation on corporation/company PC?

@throwaway-d
Copy link

throwaway-d commented Feb 10, 2023

https://github.com/FiltersHeroes/ScriptsPlayground/blob/master/scripts/ECODFF.sh

How do I use that?

WSL 2 will spit out.

What does WSL 2 mean? Just looked up: "Windows Subsystem for Linux 2"

If you are not on Windows 7 or legacy GNU/Linux distro then installation is "easy".

I am on Windows 10 Pro version 22H2.

Or you use account with limitation on corporation/company PC?

No. I'm using my home PC.

@garry-ut99
Copy link

garry-ut99 commented Feb 10, 2023

And what about this: https://github.com/uBlockOrigin/uAssets/tree/master/tools/validate.
Despite of it's existence, still PyFunceble was used recently: uBlockOrigin/uAssets#16462.

@DandelionSprout
Copy link
Owner Author

DandelionSprout commented Feb 11, 2023

Is #?# supposed to be used for :has rules now?

Remarkably enough yes. ABP removed the need to use :-abp- in v3.13-ish, but didn't remove the need for #?#. I'll look into ITavisen and the feasibility of turning https://github.com/DandelionSprout/adfilt/discussions into a de facto №3 later today.

PyFunceble shouldn't require docker (at least on Windows, I haven't tried it on Linux but it should work). It should just install via pip if you have Python installed.

I know that while PyFunceble is designed for Linux, I've got it to run natively in both Cygwin and PowerShell (albeit with a performance hit in the latter).

I am not a developer, so I don't have Python installed either.

I know of at least a few end-user tools that require Python and some knowledge of command lines (e.g. the cd command to switch folder). https://pypi.org/search/ covers a (difficult-to-filter) list of some, and there's also this nice thingie I helped make: https://github.com/DandelionSprout/NyxForWindows

If you are not on Windows 7 or legacy GNU/Linux distro then installation is "easy".

Indeed I've experienced that W10 onwards handle command line stuff much better than earlier versions, e.g. stuff like SSH connections.

And what about this: https://github.com/uBlockOrigin/uAssets/tree/master/tools/validate.

Seems like it's in need of installation instructions for end-users.

@krystian3w
Copy link
Contributor

krystian3w commented Feb 11, 2023

but didn't remove the need for #?#. I'll look into ITavisen and the feasibility

With Chromium 105+ simple filters with :has( is forced with "CSS4" (no longer found style="display: none !important;" on html tag), so in projects where Firefox and Chromium ⩾ 104 are ignored, possible is delete most of ? usage where isn't exist :has-text combination in lines:

FiltersHeroes/PolishAnnoyanceFilters@0f251f2 - example where CSS4 works fine on ABP with Chromium 105+ but -abp-has can still bad.

@garry-ut99
Copy link

And what about this: uBlockOrigin/uAssets@master/tools/validate.

Seems like it's in need of installation instructions for end-users.

But there are instructions already:

@THEtomaso
Copy link

THEtomaso commented Feb 11, 2023

Regarding :before / :after rules:
I see that they need to have two colons now (::before / ::after)..
Does this include rules where they are followed by :style()?
..so that :before:style() should be ::before:style()?

@Yuki2718
Copy link
Contributor

I know that while PyFunceble is designed for Linux

The first time I heard that, have been using on Windows with conda.

@krystian3w
Copy link
Contributor

krystian3w commented Feb 11, 2023

#63 (comment) - also needed add colon after list of pseudo-classes in uBo was limited to documented at mdn list.

! for ≈ uBo 1.46.1rc0+
mdn.mozilla.org##a::before:style(color: red !important; content: 🧷 !important;)

Only IE6 - IE8 users on XP/Vista are affected (as anything JS based page will open there) [and sleeping projects].

AdGuard has now also started removing the old [-ext-has="element"].

@THEtomaso
Copy link

I'm not certain if I understood you right..
Is that a yes or a no to my question?

@DandelionSprout
Copy link
Owner Author

But there are instructions already:

Good to know, though this would technically make it feasible to add a "Click on the button to see the installation steps" note on the repo page.

Does this include rules where they are followed by :style()?

As far as I can determine from discussions about it: Yes.

@krystian3w
Copy link
Contributor

krystian3w commented Feb 12, 2023

yes or a no to my question?

also needed add colon

In short invalid with 1 colon even have :style (e.g. ungoogledChromium due uBo legacy don't use CSSTree - downloaded from official repository instead from fan fork).

@THEtomaso
Copy link

Although still somewhat cryptic to me, I'll take that as a yes.

@krystian3w
Copy link
Contributor

krystian3w commented Feb 12, 2023

Then someone will attach why these are only monosyllables and not Shakespearean sentences (phrases/paragraphs).

@MasterKia
Copy link
Contributor

MasterKia commented Feb 13, 2023

@krystian3w Could you try writing in Polish then use translate.google.com and send the result?
I tried it on a few of your Polish messages and it seems to work relatively well, some examples (translated Polish to English):

FiltersHeroes/PolishAnnoyanceFilters#1723 (comment):

Another page similar to #1622, I can't see in the code what activates the newsletter, and the CSS alone doesn't really fix the scrolling.
Maybe here you can block the file and the page doesn't crash...

FiltersHeroes/PolishAnnoyanceFilters#3023 (comment):

Well, a bit too small for a pop-up, no background.
Note to the submitter: please check the entity to which the pop-up redirects.

FiltersHeroes/PolishAnnoyanceFilters#1614 (comment):

OK, now it's best to wait until stable uBO 1.19.8+ with better conditions support and for users from the premiere about 6-9 months.
And all in all, editing directly on the file will probably look nicer than merging PR with 5 changes as 4 outdated.

@krystian3w
Copy link
Contributor

In the first case it was about a modal with a strange number in the "timeout" (##+js(nostif, i(), X)) - you can log them to the console and check one by one which will block the pop-up (I used simple network filtering only in "Polish Anti Annoying Special Supplement"). I don't rule out that sites no longer use the "NKS-subscription" plugin.

The second item turned out to be third-party advertising (not self-promo).
For ", no background." better will be "without background" (under a small modal e.g. to disable click action).
How I classify pop-ups is to try to look at what area of the page they cover, whether they have a click-blocking background underneath them and what edge they are aligned to (Those what are aligned to the bottom corner and are quite small go only to the list of mixed elements).
Those willing can block a better push method than the forged scriptlet jsPenguin2017 ("grant fake notification"), sometimes I forget that nothing else worked there (Rather, it was blocked while cutting out something else).

In the third comment, I meant to ensure the time that uBo will be widely distributed in an improved version (so that the list gives the most benefits and spoils pages as little as possible).

Powered by deepl instead Google - I am so sorry.

@MasterKia
Copy link
Contributor

IMO that's a lot more fluent and understandable.

@throwaway-d
Copy link

DeepL is so much better than Google Translate! Sadly, DeepL supports a really low number of languages.

@garry-ut99
Copy link

garry-ut99 commented Feb 13, 2023

I use the both, and I agree, most of time time DeepL is better, however occasionally Google Translator is better in some cases and supports more languages, also I sometimes use another one: Reverso, but not so often thus I'm not sure about it translation skills compared to DeepL and GoogleTR, I must begin to use it more frequently, also - a future translator: Universal Tanslator & Universal Translator

@DandelionSprout
Copy link
Owner Author

DandelionSprout commented Feb 13, 2023

I have now after all decided to create #779 as a №3 on experimental basis after all. It may or may not receive major changes and overly loose/strict moderation in the future with little or no advance notice.

I've also noticed that raw.githubusercontent.com doesn't like Adfilt anymore, with the time before list-changes go live there having increased from 1~12min to more than 5 hours. I therefore recommend that those who subscribe to my lists as custom lists, replace the list URLs with ones from JSDelivr or GitLab until further notice.

Though I was in fact able to understand #63 (comment), I did find #63 (comment) to have a nice flow to it, especially more consistent use of "a"/"the" which I know that even very language-skilled eastern Europeans have struggled with.

#63 (comment)

Despite what DeepL's company claims, they're fairly slow to add new languages. They added Norwegian a mere 3 weeks ago, and likely can't do Nynorsk→English the way Google unofficially can.

@MasterKia
Copy link
Contributor

MasterKia commented Feb 13, 2023

with the time before list-changes go live there having increased from 1~12min to more than 5 hours.

It's a known issue and it's being fixed.

https://github.com/orgs/community/discussions/46691#discussioncomment-4953226


NEW General filter chit-chat: #779

@iam-py-test iam-py-test unpinned this issue Feb 13, 2023
Repository owner deleted a comment from gemoshi07 Feb 15, 2023
@DandelionSprout
Copy link
Owner Author

DandelionSprout commented Feb 15, 2023

(The option to close a thread simply didn't show up if the comment number was exactly 2,500, so I had to delete 1 comment at near-random: see #779 (comment) for details.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests