General Community Discussion №3 · DandelionSprout/adfilt · Discussion #779 (original) (raw)

#63 (comment) - I think bad is use jsDelivr there have sometimes (or even often) 24h+ delay.

You must be logged in to vote

1 reply

@MadfutKai

So with how GitHub changed the way the max limit is shown, they also accidentally made it impossible to close an issue that has reached the max limit. smh
image

Looks like I must delete one randomly picked comment in the old thread in order to close it. A dictionary case of poor design.

You must be logged in to vote

3 replies

@DandelionSprout

I ended up picking the comment associated with this notification, which seemed like it'd have little effect on worklife and had been cited in the full in the comment that immediately followed it:
image

@krystian3w

(¿) Don't works these buttons at all (?):

image

also possible test closes #63 / close #63 in random commit.

At end maybe Github Actions if you prefere mark as not planned/won't fix:

pseudocode

          var reason;
          reason = "not_planned"
          github.rest.issues.update({
                  owner: context.repo.owner,
                  repo: context.repo.repo,
                  issue_number: context.issue.number,
                  state: "closed",
                  state_reason: reason
          })

I am not aware of any new words for closing issue as unplanned e.g. unplanned #63.

@DandelionSprout

I was entirely unaware of the "Mark as" dropdown menu. Now I know.

#784

Ok, so this is a reply from a uBlock guy, he provided this filter:

www.ghacks.net##.dont-break-out.user-content:style(background: linear-gradient(0deg, rgb(0, 0, 0) 0px, rgb(0, 0, 0) 25px, rgb(255, 255, 255) 26px) !important;)

But is shows a black bar within the word. He also mentioned the following:

"This is proof of concept - color is not adjusted to exactly match the text. I checked it on few articles, even have it in My filters now, and I'm subscribing GH RSS feed.

There are more tricks like this. You can change text color to color of the background in .dont-break-out.user-content and then reset it back to dark in .dont-break-out.user-content * (which will match the content of all <p> elements).

I believe it's also possible to reduce the height of the parent element to hide the last line behind the bottom edge."

But i have no idea how to approach this :(

You must be logged in to vote

8 replies

@krystian3w

why not simiple visibility: hidden !important; or opacity: 0 !important; pointer-events: none !imporant; user-select: none !important

@Nojuuu

Those would hide the whole article.

@krystian3w

visibility can be used on childs with visibility: visible !important.

@Nojuuu

Oh you mean like:

ghacks.net##.user-content.dont-break-out:style(visibility: hidden !important;) ghacks.net##.user-content.dont-break-out > *:style(visibility: visible !important;)

Yeah, it seems to work too. I had always thought that if the parent element was hidden you wouldn't see the child elements no matter what, so I had never tried that.

I think I got the old filters I had from someone on Reddit in 2021.

@54m4d

It's an improved one indeed

@DandelionSprout:

As you know, itavisen.no needs site-specific blocking rules, due to $generichide (in AdGuard Base filter and uBlock filters).

In this case, one of your rules needs to be modified: https://itavisen.no/2023/02/24/google-slettet-bevis-i-nesten-fire-ar/ (scroll down)

itavisen.no##.adsbygoogle doesn't work. It needs itavisen.no##[class="adsbygoogle"]

--

EDIT:
OK, forget it..
uBlock filters – Quick fixes contains #@#.adsbygoogle now?!
WTF?
I need to uncheck that filter! :)

You must be logged in to vote

5 replies

@krystian3w

No needed = EasyList added more safe: easylist/easylist@c09ae08

Similar recommend @Yuki2718 on FiltersRegistry for AdGuard mirror of lists: AdguardTeam/FiltersRegistry#729

E.g. to disable few obviously anti-adblocks. But such anti-adblocks will come back when the script is updated and someone doesn't host it on their domain but uses the "creator" CDN.

@krystian3w

As own risk hack to cover all html elements with enable few anti-adblock baits will be one of:

##.adsbygoogle.adsbygoogle
##.adsbygoogle, badfilter
##[class*=adsbygoogle]
(And many others - we are only limited by our imagination)

CSS can't detect duplicates (2 spaces is enough to overwhelm CSS4) without use XPath.

Badfilter used in cosmetics filter means hide element <badfilter> due possible generate non HTML5 elements in code of page.

Only these can't be reverted:

wp.pl#@#+js() without mirroring filters*.txt or quick fixes.

@THEtomaso

Since cosmetic whitelistings needs to be specific, this avoids them:
##.adsbygoogle, .adsbygoogle

@DandelionSprout

If we get into technicalities, I presume (but haven't tested) that ##*.adsbygoogle would work too.

@krystian3w

This works, we are only limited by our imagination.

As for me, restoring the generic (working on any HTML/XML/SVG element insead on only <ins>) includes "fake" ads that have nothing to do with Google, cases where the webmaster so weirdly generates "a placeholder" (.adbygoogle inside .adbygoogle parent) and bait.

I updated uBlock filters – Quick fixes, and #@#.adsbygoogle has been removed now.
Nevertheless, I think I'll keep that filter unchecked!

You must be logged in to vote

2 replies

@krystian3w

@Yuki2718

I suggested EL maintainer to replace .adsbygoogle with ins.adsbygoogle as 99% of div.adsbygoogle are just bait.

Then you close yourself off from..

Nope, they all seems to work just fine.
Except for rjno1.com, which rather appears to belong in a blocklist anyway.

You must be logged in to vote

2 replies

@krystian3w

Why you can't use that area:

obraz

@DandelionSprout

I agree with krystian3w on that. I would strongly recommend the "Write a reply" thread function for ongoing topics.

Because I'm not a fan of how they've implemented this stuff.
It appears messy to me.
After very few posts, the discussion collapses, and I have to press a button to expand it again!

Also, I was wondering about the purpose of that upvote button..
At first I thought it would move the post to the top of the thread or something, only to find out that it basically has the same function as a thumbs up emoji!?
I decided to get rid of the extra clutter, and blocked it!

You must be logged in to vote

3 replies

@Nojuuu

IMO some context can be lost if ever needed to link to someone's comment and not everything related was discussed under it?

Also, I was wondering about the purpose of that upvote button.. At first I thought it would move the post to the top of the thread or something,

It does if you sort by "Top"

@THEtomaso

OK, so it has a function which separates it from a basic emoji then.
I think I'll keep blocking it regardlessly though.

Anyway..
I'll post my replies in the subsections from now on, but only as a courtesy to you guys. :)

@krystian3w

:not(:matches-path(/DandelionSprout/adfilt/discussions/779)) but no compatible with PaleMoon/Basilisk - these need pure CSS or more complicated procedural:

##[data-timeline-item-src]:not([data-timeline-item-src="/DandelionSprout/adfilt/discussions/779/timeline_anchor"]) .review-thread-reply

Override color for new/beta search:

github.com##.header-search-button.placeholder:style(color: #555 !important; background: #22272e !important;) ! border: 1px solid #444c56 !important;) ! github.com##.search-with-dialog:style(border: 0 !important;)

Also no longer works in dark theme attribute "[data-color-mode="light"]" - It looks like only the old search box is forced in a light color scheme.

Older filters are still required under gist., where they did not run the test.

You must be logged in to vote

0 replies

You must be logged in to vote

0 replies

@DandelionSprout:

@https://www.gamer.no/ (on the front page):

gamer.no##.popup-card
gamer.no#?#body.site > div:-abp-has([class*="-gamer-toppbanner"])

and

gamer.no##a[href*="gamer.no/annonser/"] (at the bottom):

--

@https://www.gamer.no/artikler/nordavind-regjerer-fremdeles-pa-topp-etter-seier-i-finalen/503854/ (scroll down to "Siste fra forsiden"):

gamer.no#?#div[class*="col-"]:-abp-has(.feed--betting)

--

@https://www.gamer.no/artikler/kan-eit-av-tidenes-beste-spel-bli-betre/515984/ (scroll half way down):

gamer.no#?#div[class^="mb-"]:-abp-has([class*="gamer-netboard"])
gamer.no#?#div[class^="mb-"]:-abp-has([class*="gamer_netboard"])

(the last class alters between using a hypen and a underscore, whenever you refresh the page)

--

Note:

gamer.no##.tight-gutter also seems to be highly preferable.

--

EDIT:

@https://canariavisen.no/ (scroll down a bit on the front page):

canariavisen.no##.fullscreen-ad-space

(you might have to refresh a few times)

--

@https://canariavisen.no/flyplass-transport-paa-gran-canaria-hvilken-bor-du-velge/ (deblurrer):

canariavisen.no##.article-text-preview:style(-webkit-text-fill-color: black !important;)

You must be logged in to vote

1 reply

@DandelionSprout

gamer.no##.tight-gutter would've also blocked the "Les også" section, but the rest looks good. I've hopefully added entries for all of the above URLs now.

What's the purpose of the number in some redirect filters, e.g. $redirect=noopjs:10?

You must be logged in to vote

3 replies

@Yuki2718

@Nojuuu

Thanks, I couldn't find anything about it on the wiki or maybe I'm just blind.

@krystian3w

What variable is used in specificity since it supports negative values?

Came across these parameters at GettyImages:
?adpopup=true
?adppopup=true

Should probably be added to Actually Legitimate URL Shortener Tool

--

EDIT:
#163 (comment)

You must be logged in to vote

1 reply

@krystian3w

#163 - maybe should be unlocked if you use filters like:

github.com###discussions-list + ul > li:not(:has([href*="779"])) ##a[href$="/discussions"] ###repo-content-turbo-frame[src$="/discussions"]

You must be logged in to vote

0 replies

The scrollbar is hidden @ https://www.tv2.no/sport/
I tried to mess around with some CSS rules, to make it reappear, but I was unable to come up with a proper solution.
Any ideas?

You must be logged in to vote

13 replies

@krystian3w

@DandelionSprout

@fix-broken-english:
• Joined 6min ago.
• Probably a bot.
• Enters discussion threads instead of e.g. code fixes or something.
• smh
image

@MasterKia

@DandelionSprout

I guess it's okay to put it in uBlock Filters Annoyances for now.

@MasterKia

Some more mobile-optimized CSS annoyances that I'm trying to fix..

Below the various product descriptions @platekompaniet.no, there are some additional boxes, which are collapsed by default.

Example:
https://www.platekompaniet.no/blu-ray/p.u.l.s.e2.---restored--re-edited---limited-edition-with-led-light/
How do I force ###facts ("Produktfakta") into being expanded by default?

You must be logged in to vote

15 replies

@krystian3w

I am not woman - that user lies. "He" speculates based on a modified song quote or avatar from a music video.

Also "he" forgot rule about writing languages and nationality with a capital letter.

@DandelionSprout

In that case it looks like the burden is on fix-broken-english to explain how they think the two of you know each other (if at all), or for them to introduce themselves a bit more.

@54m4d

@fix-broken-english Your marginal corrections of the grammar don't contribute any value to the discussion, you are just making the discussions longer.
Could someone post a uBlock rule to hide this user's comments in these discussions?

@DandelionSprout

That user is on thin ice anyway unless they provide explanations for many things, but you can try out github.com#?#.js-nested-comment-container:has(.author[href$="/fix-broken-english"]) in the meantime.

@54m4d

In light of constant ridiculous treatment by THEtomaso of me as if I was a mule, the 2nd-most ridiculous treatment I've got behind that one guy from Adaway who claimed that lists that weren't for ads should not exist, that I got so extremely weary this spring that I began moving some of my lists elsewhere and had to manually close comment sections on my commits one at a time and still haven't been treated well after that, that I got scared of reporting cookie issues to AdGuard Cookie Filters out of fear of coming across like I had begun talking about cookies again… It's time I set some records straight in public.

Always claiming "[Screenshot] Not needed, as the problem is obvious", and then still not adding screenshots on e.g. uAssets when people can't reproduce the supposedly "obvious" problems, is not okay.

Trying to sneak around even the tiniest sorts of public scrutiny for Nordic Filters by trying to "submit" problems in commit notes or E-mails due to being allergic to any sort of posting screenshots?

And in the case of commit notes trying to "submit" more problems by simply editing previous comments, which due to how GitHub works like does not bring attention to the edits?

And then have the nerves to think I must reply to your @'s even in light of all of that?

This is not okay. Read the general cues of people, and stop trying to treat me and many others in the adblocking communities as if we were omnipresent psychics.

You must be logged in to vote

1 reply

@bitsper2nd

These are your filter lists done with effort on free time. Don't worry about taking time off or not updating as much. You are not Brave or AdGuard. They have employees that get paid for that. This is not a Sprint. Its a marathon. Take it on your own time.

Some new infection of Wordpress installation (CMS/plugins/templates vulnerabilities):

https://www.google.com/search?q=update%2Fwindows-10-pro-iso-only-25h2-without-requirements%2F

obraz

Unfortunately I don't have time to write to every webmaster, from one ("btl.stomatologia") there was even feedback like “thanks for the info, we cleaned up the hosting and DNS records”.

Draft regex:

/(/?|&)(ql|zb|sf|sp|mw|rv)=\d{10}$/$doc,frame

You must be logged in to vote

7 replies

@Yuki2718

I meant Google search results vary by IP or geolocation. Looks it's risky to block solely by regex.

@krystian3w

Maybe:

##body > .container:not([id]):only-child:has(> h1:first-child ~ table:not([id]):not([class]):only-of-type ~ div.dconts:not([id]):last-child)

@Yuki2718

I'm not willing to add such a complex cosmetic filter as generic.

@krystian3w

I doubt that someone will dig up fresh nerdydata or publicwww records for this infection, to a certain pool of domains - the referencing domain can spoof both databases when all the rest of the files have no changes visible in the source before being pressed at the browser level.

@DandelionSprout

Checking now: Although the search results do seem very dubious, I can't decisively determine that it's malware, and instead seems to be some random guy's attempts at sharing a cracked regular W10 version that heavily rely on the USB booter tool Rufus, e.g. the links at https://spiretech•co/?mw=1310150338

Screenshot:

image

If someone out there hoped to make big bank by distributing malware disguised as Windows 10, then hosting it on Internet Archive would presumably not be the best idea of them.

You must be logged in to vote

1 reply

@DandelionSprout

The entry seems to have been added to Badware Risks by now.

I've looked now into whether there were grounds to block 162.255.119.53 as well, but (unfortunately?) it was not an all-malware IP.

You must be logged in to vote

5 replies

@DandelionSprout

That PRC is hell on earth wasn't exactly news to me, so their (PRC) rampantly and morbidly insane hatred of adblockers doesn't surprise me as much as it probably should have.

Downloading the extension file from https://addons•mozilla•org/firefox/downloads/file/4513392/ublock_original-1.64.0.xpi and checking its assets.json file, it seems to be a pretty accurate mirror.

@Yuki2718

Did you report it to Mozilla? I'm worried about the quality of recent reviews on AMO.

@krystian3w

Apparently only the data in the manifest.json file is changed:

diff --git a/manifest.json b/manifest.json index a7d6a06a3..568bf5959 100644 --- a/manifest.json +++ b/manifest.json {

If nothing changes in future, it looks like a mirror against HTTP 451 by Mozilla.

@Yuki2718

The Unlicense => clear violation of GPL.

@krystian3w

Worse if they just ask him to add Gorhill in the author section and correct the licence without providing a link to the public fork repository instead of block publication any update.

I came across https://zenprivacy.net tonight, and it seems to have something going for it, esp. as it is free of charge and at least claims to support AdGuard's list syntax(es).

I have a lifetime licence for AdGuard's desktop versions and thus won't need Zen Privacy, but I figure a number of people without AdGuard licences would be curious about it.

You must be logged in to vote

2 replies

@krystian3w

@DandelionSprout

Around 50% of how I came across was when working on adding tags (and many new programs) to Winget in the past 3 months or so, among them adding the adblock tag to a lot of hosts file tools, DNS tools, and similar.

Ironically https://github.com/microsoft/winget-pkgs/pull/277954 for Zen Privacy is stuck in processing since it relies on EdgeWebView2 in obscure ways that no one have figured out how to automate on fresh Windows installations.

Google seems to have completely abandoned the old video progress mechanism with the div with ID progress element and the status stored in an attribute such as [style*="100%"]. A month ago, he was only doing it for the ‘side’ column.

The new one became a div with a long "ID" in class attribute:

CSS works only for search results (and with bugs on channels) now...:

Details

/* ============ WATCHED BADGE ============ */ ytd-thumbnail-overlay-toggle-button-renderer, ytd-thumbnail-overlay-time-status-renderer[overlay-style=DEFAULT] { z-index: 2; }

ytd-thumbnail-overlay-resume-playback-renderer, #progress.ytd-thumbnail-overlay-resume-playback-renderer { background-color: var(--watched-bg-color); height: 100%; width: 100%; }

#progress { display: flex; }

#progress.ytd-thumbnail-overlay-resume-playback-renderer:before, #progress.ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'WATCHED'; align-items: flex-start; align-content: flex-start; font-size: 1.35rem; letter-spacing: 0.035rem; height: 21px; flex: 0 0 auto; opacity: .8; color: #fff; background: #121212 }

#progress.ytd-thumbnail-overlay-resume-playback-renderer:before { border-radius: 4px 0 0 4px; padding: 5px 2.5px 1px 5px; margin: 4px 0 0 4px }

#progress.ytd-thumbnail-overlay-resume-playback-renderer:after { border-radius: 0 4px 4px 0; padding: 5px 5px 1px 2.5px; margin: 4px 0 0 0 }

ytd-thumbnail:hover ytd-thumbnail-overlay-resume-playback-renderer, #progress.ytd-thumbnail-overlay-resume-playback-renderer { height: 0 }

yt-formatted-string.ytd-thumbnail-overlay-playback-status-renderer { display: none; }

/PL l10n//* text */ #progress.ytd-thumbnail-overlay-resume-playback-renderer:lang(pl):before { content: 'OBEJRZANE' }

yt-lockup-view-model:has(.ytThumbnailOverlayProgressBarHostWatchedProgressBarSegment) :is(img, .yt-lockup-view-model-wiz__metadata) { filter: sepia(70%); opacity: 30% }

/* numbers / #progress[style="100%"].ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w 100%' !important } #progress[style*=": 9"]:not([style*=": 9%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~90%' !important } #progress[style*=": 8"]:not([style*=": 8%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~80%' !important } #progress[style*=": 7"]:not([style*=": 7%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~70%' !important } #progress[style*=": 6"]:not([style*=": 6%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~60%' !important } #progress[style*=": 5"]:not([style*=": 5%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~50%' !important } #progress[style*=": 4"]:not([style*=": 4%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~40%' !important } #progress[style*=": 3"]:not([style*=": 3%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~30%' !important } #progress[style*=": 2"]:not([style*=": 2%;"]).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~20%' !important } #progress:is([style*=": 2%;"], [style*=": 3%;"], [style*=": 4%;"], [style*=": 5%;"], [style*=": 6%;"], [style*=": 7%;"], [style*=": 8%;"], [style*=": 9%;"], [style*=": 10%"], [style*=": 1"]:not([style*="100%"])).ytd-thumbnail-overlay-resume-playback-renderer:after { content: 'w ~10%' !important }

You must be logged in to vote

1 reply

@DandelionSprout

Wouldn't exactly surprise me that YouTube would do that.

You must be logged in to vote

1 reply

@krystian3w

The author is probably busy and afraid to give anyone access to merge PR or further development without a fork and their own domain.

You must be logged in to vote

0 replies

What lists should be used? There are too many list to choose from and I am confused which to use.

You must be logged in to vote

6 replies

@chirag127

Which lists are generally the best and is there a single link to Use all the lists.

@DandelionSprout

@chirag127

Thanks for your detailed comment that helps a lot I use adguard Chrome extension and nextdns for the DNS blocking with nextdns adblock and tracking list adguard list and oisd list.

@Yuki2718

If using AdGuard: Add "uBlock Filters - Ads" as a custom list.

I'm certainly against this.

@chirag127

If using AdGuard: Add "uBlock Filters - Ads" as a custom list.

I'm certainly against this.

Yes I was also surprised by this adguard filter lists are prettily maintained and don't need additional list for ad blocking.

You must be logged in to vote

0 replies

Does anyone have experience hiding this type of modal in AdGuard on Windows/macOS/CLI:

[data-gr="popup-container"]

data-gr='popup-container'

Latest Polish sample: https://sklep.prymat.pl/marki/prymat.html other legacy: bezokularow.pl,scentre.pl,wiadomoscispozywcze.pl

Because I'm wondering if the usual AdGuard hiding rule works, or if the version with #?# makes sense, because it's not this div that's causing the problem, but the content in the closed root with :hosts { all: initial !important; }.

If it doesn't take too long to load, it may work, for example:

##+js(set-attr, [data-gr="popup-container"], hidden, '')

And when it takes too long, I guess the only option is { remove: true }, when I don't want to use the remove-in-shadow-dom / inject-css-in-shadow-dom / hide-in-shadow-dom scriptlets.

You must be logged in to vote

0 replies

You must be logged in to vote

7 replies

@iam-py-test

@iam-py-test

@krystian3w

@DandelionSprout

Whatever is going on, seems to be rolling out fast now from what little I can tell.

The apparent factor is the page element with class="js-pull-header-details", which on my end has got both the "hidden" attribute server-side and has no subelements all of a sudden.

@iam-py-test

Non-committers (AFAICT) no longer see an "Edit" button in the top corner of the PR page next to "Code". As such it's no longer possible for non-committers to edit the PR title and base branch on the web interface.

That explains why I see it here since I have commit access.

I am not sure if the list removing cursor embellishments is still being developed, but you can add the following there:

beardrust.pl##.theme-custom-cursor

This is an object rendered over the cursor on my side.

You must be logged in to vote

1 reply

@DandelionSprout

The recentmost entries in that list are from 09/01/2026, so it has not been abandoned. That much I can say.

I'll see when I can look into that entry.

Apparently, it’s time to start thinking about migrating CSS filters to the main file:

https://gitlab.com/eyeo/browser-extensions-and-premium/extensions/extensions/-/work_items/8#note_3343993452

Versions are apparently available in the Mozilla, Chrome and Edge add-on stores, but unfortunately Opera is lagging behind.

On the downside, there is a slight chance that the list may to do not load incorrectly in older versions of AdBlock and ABP without manually forcing { display: none !important } on the lines.
To a lesser extent, the AdGuard converter as if still does not recognise this syntax, and ultimately their CB engine (the plugin mechanism in the Play Store for e.g. Samsung Internet and the ad-blocking level in AdGuard on iOS without a licence).

You must be logged in to vote

2 replies

@DandelionSprout

I plan to retain support for ABP 3.x in my ABP list versions (for the sake of Chromium) pretty much forever, so at least I doubt I'd move them to my main file(s).

@krystian3w

It turns out that the only problem will be lists that obediently skip !important (the filter will be too weak in uBo and AdGuard) and learning to use CSS display: none like the one in AdGuard so that the older engine skips filters correctly.

outdated

I would still have to test whether the lines with !important are read correctly, because ABP recommends skipping them (that their engine will always append them); additionally, they could have blocked the compression of the last ;, that's how it is in their case so that they don't do that.

If it turns out that the parser cuts out lines with important even ending with ;, the current uBo and AdGuard translators would have to undergo further improvements or ABP would have to stop skipping lines with the !important; added.