Disclaimer AdGuard for Windows is not an open-source project. We use Github as an open bug tracker for users to see what developers are working on.
“To infinity and beyond” could be the motto of our hard-working AdGuard team. This time, we are pleased to introduce the fresh new version of AdGuard for Windows.
New HTTP/3 filtering
One of the major updates in this version is the support for HTTP/3 filtering, powered by our CoreLibs v1.12. HTTP/3 (HTTP-over-QUIC) is the latest version of the HTTP protocol that uses QUIC instead of TCP. The QUIC network protocol offers many advantages over the TCP transport layer protocol, such as improved privacy and security, faster internet connection, and the ability to handle data packets in any order. Enabling HTTP/3 filtering also means more efficient ad blocking. You’re welcome!
Currently, HTTP/3 filtering only works in Edge and Firefox browsers. This is because Chrome has different logic for verifying QUIC and TCP certificates, which does not accept AdGuard certificates. However, this feature is available in Advanced settings for testing and debugging purposes to ensure seamless operation.
Annoying bugs belong in the past
We’ve addressed a minor problem in context menus — the dark theme now appears flawless. Additionally, upon installation, you will now have five recommended ad-blocking filters readily accessible instead of just one. This upgrade will make life easier and protect you from annoying ads.
Along with other fixes, we have made several improvements to boost the overall performance of AdGuard for Windows. Previously, the application would sometimes crash due to high memory usage. However, we have addressed this issue. Also, when the internet connection was unstable or very slow, the application could behave unpredictably or even crash. Now, everything works more smoothly.
To top it all off, we have updated the WFP and TDI drivers, and as per our tradition, we have also updated CoreLibs, DnsLibs, and scriptlets to ensure even more stable operation.
Changelog
Features
- Added support for HTTP/3 (IETF QUIC) #487
- Improved the notification informing users about the necessary reboot #4817
- Added the ability to press the buttons in the dialog boxes using the Space bar #4677
- Enhanced settings icon in the Filtering log when filtering criteria are set #4656
- Added more information on the TLS properties to the Filtering log #1171
- Added
$referrerpolicy
modifier #135
Fixes
- Adapted the context menu of the app to the dark theme #4587
- Cannot add a new rule in a specific case in the Filter editor #4684
- Chinese Traditional words in the Chinese Simplified description of Web of Trust #4739
- The app is installed with one non-recommended Annoyances filter instead of five recommended ones #4764
- Scroll left/right doesn’t work in the Filtering log for preview via touchpad #4638
- No element is selected when double-clicking the radio buttons in the Filtering log #4672
- Minor dark theme UI issue on the
Remove filter
dialog inFilter Editor
#4664 - Allowed
$stealth
rules with empty pattern #1762 - uBO media queries are not supported #1707
- A few seconds delay when visiting ipTIME home routers #1756
- AdGuard slows down WebPage loading time #1522
- Hide referer with “Hide your search queries” option is enabled if request is made by click #1766
- System DNS is a loopback when running Cloudflare WARP #4692
- Consider
:has()
,:not()
,:is()
as a standard pseudo-class if ExtendedCss usage is not forced by#?#
rule marker #1683 - When the
network.https.ech.enabled
setting is enabled, ECH GREASE is enabled for sites that do not support ECH #1781 - Error when processing script
text decryption key not found
#1750 - Sometimes DNS fallbacks helper returns 127.0.0.1 instead of provider’s servers #1687
- TCP/IP: Added new reject mode — ICMP administratively prohibited #1774
SaveFrom
gives error when loading video fromok.ru
site #1776- Cosmetic rules don’t work at
mypikpak.com
#1767
Important for filter maintainers
Features
Fixes
$jsonprune
,$replace
,$hls
do not work with non-GET-POST HTTP methods #1743- Made
$app
modifier case insensitive for AdGuard for Windows #1755 $path
modifier does not work on the pathmarket.yandex.ru/?
#1726- Exception rules interfere with each other #1749
- Wrong location of the text cursor in the Filter Editor #4702
- Setting the focus adequately after certain actions in DNS Filter Editor, like deleting a rule (for use of the up/down arrow keys) #4362
$jsonprune
modifier should be able to handle quotes forjsonp
#1734
DnsLibs
- DnsLibs updated to v2.2.24 #4826
CoreLibs
- CoreLibs updated to v1.12.78 #4832
Scriptlets
Scriptlets updated to v1.9.58
Features
- Added new scriptlet
evaldata-prune
#322 - Improved
trusted-replace-fetch-response
/trusted-replace-xhr-response
— added ability to replace all matched content #303 - Added new scriptlet
remove-node-text
#318 - Added new scriptlet
trusted-replace-node-text
#319
Fixes
- Mock
getResponseHeader()
andgetAllResponseHeaders()
methods forprevent-xhr
andtrusted-replace-xhr-response
#295 cannot apply rule
message removed for logging scriptlets #313- Added new way for returning supported values of
set-constant
scriptlet #316 - The version that declares support for scriptlets or redirect is specified #273
- Fixed issue with pruning when
addEventListener
was used before callingsend()
method inm3u-prune
andxml-prune
scriptlets #315 - Added ability for
prevent-element-src-loading
scriptlet to prevent inlineonerror
and matchlink
tag #276 trusted-set-cookie-reload
— website is not reloaded if$now$
value is used #291- Cookie setting scriptlets — name and value encoding problem #311
- Instance properties of
Response
issue in scriptlet and redirect #297 - Value encoding problem with
trusted-set-cookie
andtrusted-set-cookie-reload
scriptlets #320 log-addEventListener
— a lot of errors are printed to console #335- Scriptlets
prevent-fetch
,prevent-xhr
do not help if a request/domain is blocked by DNS filtering #334 - Fixed
googletagservices-gpt
— updateTargetingFromMap() #293 - Scriptlets don’t handle escaped quotes correctly #286
- Added
Accept
andReject
values forset-cookie
#336 - Made case-insensitive values for
set-cookie
#342 - Improved
google-ima3
to avoid conflict with the DAI SDK #331 - Improved storage item scriptlets — added ability to remove item by key #338
- AdGuard takes commas into account when converting rules to uBO rules #343
UserscriptsWrapper updated to v1.2.20
Fixes
- Userscript for
imdb.com
doesn’t work #1729
AdGuard for Windows direct download links: