You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Actually not, thanks. If it’s because of a memory limit, would it help to clear all entries in the script, except for welt.de and install it as a custom script?
Thanks, I deleted all websites in the script except welt.de. After uploading the script to a webspace and reinstalling it, welt.de is now working again.
I have to revert my answer. It worked yesterday, but today the error message appears again.
I think they changed something from yesterday to today. Now it does not work with the cleared script with only 4 entries. I don’t think this has anything to do with the memory limit anymore.
I’m using this version and the popup still comes up. The site welt.de is not usable anymore: tinyShield.user.js
// ==UserScript==// @name tinyShield (Development)// @encoding utf-8// @namespace https://github.com/FilteringDev/tinyShield// @homepageURL https://github.com/FilteringDev/tinyShield// @supportURL https://github.com/FilteringDev/tinyShield/issues// @updateURL https://cdn.jsdelivr.net/npm/@filteringdev/tinyshield@latest/dist/tinyShield.user.js// @downloadURL https://cdn.jsdelivr.net/npm/@filteringdev/tinyshield@latest/dist/tinyShield.user.js// @license MIT//// @version 0.0.0// @author PiQuark6046 and contributors//// @match *://welt.de/*// @match *://*.welt.de/*//// @description tinyShield allows AdGuard, uBlock Origin, Brave and ABP to resist against Ad-Shield quickly.// @description:ko tinyShield는 AdGuard, uBlock Origin, Brave 와 ABP가 애드쉴드에 빠르게 저항할 수 있도록 합니다.// @description:ja tinyShieldを使うと、AdGuard, uBlock Origin, Brave, およびABPがAd-Shieldに素早く対抗できます。//// @grant unsafeWindow// @run-at document-start// ==/UserScript==(()=>{// sources/src/utils.tsfunctionCountCommonStrings(ArrayA,ArrayB){letSetB=newSet(ArrayB);constCommon=newSet(ArrayA.filter((Item)=>SetB.has(Item)));returnCommon.size;}// sources/src/as-weakmap.tsfunctionCheckDepthInASWeakMap(Args){if(typeofArgs[0]!=="object"){returnfalse;}if(CountCommonStrings(["device","id","imp","regs","site","source"],Object.keys(Args[0]))<5){returnfalse;}letASBannerFrameIdRegExp=/^[0-9]+\/[a-zA-Z0-9]+\/[a-zA-Z0-9]+\/[a-z0-9-\(\)]+\/[a-zA-Z0-9_]+_slot[0-9]+_+/;letASBannerFrameKey=Object.keys(Args[0]).find((Arg)=>typeofArgs[0][Arg]==="object"&&Array.isArray(Args[0][Arg])&&Args[0][Arg].filter((SubArg)=>typeofSubArg==="object"&&Object.keys(SubArg).filter((InnerArg)=>{returntypeofInnerArg==="string"&&OriginalRegExpTest.call(ASBannerFrameIdRegExp,InnerArg);})).length>=1);if(typeofASBannerFrameKey==="undefined"){returnfalse;}returntrue;}// sources/src/index.tsvarWin=typeofunsafeWindow!=="undefined" ? unsafeWindow : window;varOriginalRegExpTest=Win.RegExp.prototype.test;functionRunTinyShieldUserscript(BrowserWindow,UserscriptName="tinyShield"){constOriginalArrayToString=BrowserWindow.Array.prototype.toString;constOriginalRegExpTest2=BrowserWindow.RegExp.prototype.test;constProtectedFunctionStrings=["toString","get","set"];BrowserWindow.Function.prototype.toString=newProxy(BrowserWindow.Function.prototype.toString,{// eslint-disable-next-line @typescript-eslint/no-unsafe-function-typeapply(Target,ThisArg,Args){if(ProtectedFunctionStrings.includes(ThisArg.name)){return`function ${ThisArg.name}() { [native code] }`;}else{returnReflect.apply(Target,ThisArg,Args);}}});constASInitPositiveRegExps=[[/[a-zA-Z0-9]+*=>*{*const*[a-zA-Z0-9]+*=*[a-zA-Z0-9]+*;*if/,/===?*[a-zA-Z0-9]+*\[*[a-zA-Z0-9]+\(*[0-9a-z]+*\)*\]*\)*return*[a-zA-Z0-9]+*\(*{*('|")?inventoryId('|")?*:/,/{*('|")?inventoryId('|")?*:*this*\[[a-zA-Z0-9]+*\(*[0-9a-z]+*\)*\]*,*\.\.\.*[a-zA-Z0-9]+*\[*[a-zA-Z0-9]+*\(*[0-9a-z]+**\)*\]*}*\)/]];BrowserWindow.Map.prototype.get=newProxy(BrowserWindow.Map.prototype.get,{apply(Target,ThisArg,Args){if(Args.length>0&&typeofArgs[0]!=="function"){returnReflect.apply(Target,ThisArg,Args);}letArgText=OriginalArrayToString.call(Args);if(ASInitPositiveRegExps.filter((ASInitPositiveRegExp)=>ASInitPositiveRegExp.filter((Index)=>OriginalRegExpTest2.call(Index,ArgText)).length>=2).length===1){console.debug(`[${UserscriptName}]: Map.prototype.get:`,ThisArg,Args);thrownewError();}returnReflect.apply(Target,ThisArg,Args);}});constASReinsertedAdvInvenPositiveRegExps=[[/inventory_id,[a-zA-Z0-9-]+\/[a-zA-Z0-9]+\/[a-zA-Z0-9]+/,/inventory_id,[a-zA-Z0-9-]+\/[a-zA-Z0-9]+\/[a-zA-Z0-9]+/,/inventory_id,[a-zA-Z0-9-]+\/[a-zA-Z0-9]+\/[a-zA-Z0-9]+/],[/[a-z0-9A-Z]+\.setAttribute\(*('|")onload('|")*,*('|")!*async*function\(*\)*\{*let*/,/confirm\(*[A-Za-z0-9]+*\)*\)*{*const*[A-Za-z0-9]+*=*new*[A-Za-z0-9]+\.URL\(('|")https:\/\/report\.error-report\.com\//,/\.forEach*\(*\(*[A-Za-z0-9]+*=>*[A-Za-z0-9]+\.remove*\(*\)*\)*\)*\)*,*[0-9a-f]+*\)*;*const*[A-Za-z0-9]+*=*await*\(*await*fetch*\(/]];BrowserWindow.Map.prototype.set=newProxy(BrowserWindow.Map.prototype.set,{apply(Target,ThisArg,Args){letArgText="";try{ArgText=OriginalArrayToString.call(Args);}catch{console.warn(`[${UserscriptName}]: Map.prototype.set:`,ThisArg,Args);}if(ASReinsertedAdvInvenPositiveRegExps.filter((ASReinsertedAdvInvenPositiveRegExp)=>ASReinsertedAdvInvenPositiveRegExp.filter((Index)=>OriginalRegExpTest2.call(Index,ArgText)).length>=3).length===1){console.debug(`[${UserscriptName}]: Map.prototype.set:`,ThisArg,Args);thrownewError();}returnReflect.apply(Target,ThisArg,Args);}});BrowserWindow.WeakMap.prototype.set=newProxy(BrowserWindow.WeakMap.prototype.set,{apply(Target,ThisArg,Args){if(CheckDepthInASWeakMap(Args)){console.debug(`[${UserscriptName}]: WeakMap.prototype.set:`,ThisArg,Args);thrownewError();}returnReflect.apply(Target,ThisArg,Args);}});letASTimerRegExps=[[/async*\(*\)*=>*{*const*[A-Za-z0-9]+*=*[A-Za-z0-9]+*;*await*[A-Za-z0-9]+*\(*\)/,/;*await*[A-Za-z0-9]+*\(*\)*,*[A-Za-z0-9]+*\(*!*1*,*new*Error*\(*[A-Za-z0-9]+*\(*[0-9a-f]+*\)*\)*\)*}/,/*\)*\)*\)*}/]];BrowserWindow.setTimeout=newProxy(BrowserWindow.setTimeout,{apply(Target,ThisArg,Args){if(ASTimerRegExps.filter((ASTimerRegExp)=>ASTimerRegExp.filter((Index)=>Index.test(Args[0].toString())).length>=3).length===1){console.debug(`[${UserscriptName}]: setTimeout:`,Args);return;}returnReflect.apply(Target,ThisArg,Args);}});BrowserWindow.setInterval=newProxy(BrowserWindow.setInterval,{apply(Target,ThisArg,Args){if(ASTimerRegExps.filter((ASTimerRegExp)=>ASTimerRegExp.filter((Index)=>Index.test(Args[0].toString())).length>=3).length===1){console.debug(`[${UserscriptName}]: setInterval:`,Args);return;}returnReflect.apply(Target,ThisArg,Args);}});}RunTinyShieldUserscript(Win);})();/*! * @license MPL-2.0 * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. * * Contributors: * - See Git history at https://github.com/FilteringDev/tinyShield for detailed authorship information. */
With AdGuard for iOS (AdGuard Base, AdGuard Mobile Ads, AdGuard Tracking protection and AdGuard German filters list only; no DNS filters lists; AdGuard non-filtering DNS server upstream used).
To reproduce any Ad-Shield issue at the website for me, connecting to AdGuard VPN for iOS is required. Disabling AdGuard VPN makes that Ad-Shield is disabled.
Only I confirmed https://welt.de/ only.
Activity
piquark6046 commentedon Jan 8, 2026
Did you read the pinned issue? #38
mOrbo-git commentedon Jan 8, 2026
Actually not, thanks. If it’s because of a memory limit, would it help to clear all entries in the script, except for welt.de and install it as a custom script?
piquark6046 commentedon Jan 8, 2026
Yes.
mOrbo-git commentedon Jan 8, 2026
Thanks, I deleted all websites in the script except welt.de. After uploading the script to a webspace and reinstalling it, welt.de is now working again.
tinyShield.user.js
mOrbo-git commentedon Jan 9, 2026
I have to revert my answer. It worked yesterday, but today the error message appears again.
I think they changed something from yesterday to today. Now it does not work with the cleared script with only 4 entries. I don’t think this has anything to do with the memory limit anymore.
I’m using this version and the popup still comes up. The site welt.de is not usable anymore:
tinyShield.user.js
piquark6046 commentedon Jan 9, 2026
#39 (comment)
Unable to reproduce with the following config:
tinyShield built with reduced `@match` fields
With AdGuard for iOS (AdGuard Base, AdGuard Mobile Ads, AdGuard Tracking protection and AdGuard German filters list only; no DNS filters lists; AdGuard non-filtering DNS server upstream used).
To reproduce any Ad-Shield issue at the website for me, connecting to AdGuard VPN for iOS is required. Disabling AdGuard VPN makes that Ad-Shield is disabled.
Only I confirmed https://welt.de/ only.