All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- API
settings.debugScriptlets
property andsetDebugScriptlets()
method for its setting #2584.
MessageHandlerMV2
type is exported now.
- Fix cosmetic apply logging.
- Support for
POST
requests to$removeparam
modifier #99.
- Fix 'storage not initialized' error on extension install.
- Allowlist wildcard support #2020.
- Updated
@adguard/tsurlfilter
tov2.2.6
. - Updated
@adguard/scriptlets
tov1.9.96
.
- Updated
@adguard/tsurlfilter
tov2.2.5
. - Updated
@adguard/scriptlets
tov1.9.91
.
- Ads displayed on the first visit on 'pikabu.ru' #2571.
- Memory leaks associated with storing refs to old filter lists in context of frames.
- Added new
ExtensionStorage
,PersistentValueContainer
,createExtensionStorageDecorator
interfaces and for restoring data in event-driven background scripts #2286.
- Removed grouping rules with
\r\n
for extended css rules which cause its error in MV3.
- Updated
@adguard/tsurlfilter
tov2.2.1
. - Updated
@adguard/scriptlets
tov1.9.83
.
- Support for $badfilter rules to Declarative Converter.
- AdGuard v4.2.168 is not working in the Firefox after update #2501
- Incorrect logging and applying of
$removeheader
allowlist rules. - Proceed anyway is not working for more than two level domains #2497.
- CSP
trusted-types
directive modifying for response headers #2068.
$csp
,$removeparam
and$removeheader
allowlist rules not being published as filtering log events.- Cosmetic rule injection in cached subdocument #2420, #2190, #2328.
- Do not block a tab loading by
$popup
modifier rule on direct url navigation #2449.
- New
requestUrl
,frameUrl
andrequestType
fields inApplyBasicRuleEvent
.
- Tab title is now correctly updated on url change when the document does not provide it itself #2428.
- Filter id for StealthApi to display Stealth Mode cookie events in Filtering Log properly #2487.
- Do not apply cosmetic rules to extension pages while fallback processing #2459.
- Redirects are not included into tab's blocked requests count #2443.
- Domains from the allowlist are not properly escaped before being passed into the regular expression rules #2461.
- Cosmetic rule false positive applying when tab context changed while injection retry #2459.
- Updated
@adguard/tsurlfilter
tov2.1.11
. - Updated
@adguard/scriptlets
tov1.9.72
.
- Incorrect order of
onBeforeRequest
handlers. - Blocked csp reports do not increment the blocked requests counter.
- Updated
@adguard/tsurlfilter
tov2.1.10
. - Updated
@adguard/scriptlets
tov1.9.70
.
- Applying $cookie rules on the content-script side.
- Blocking third-party requests with
csp_report
content-type. - Handling discarded tabs replacement on wake up.
- Do not expose JS rules in global page scope.
- Updated
@adguard/tsurlfilter
tov2.1.7
.
- Updated
@adguard/tsurlfilter
tov2.1.6
. - Updated
@adguard/scriptlets
tov1.9.62
.
- Updated
@adguard/tsurlfilter
tov2.1.5
. - Updated
@adguard/scriptlets
tov1.9.57
.
- Duplicate
eventId
of filtering events.
- Rules with the
$popup
modifier were ignored and showed an incorrect dummy page instead of closing the tab. - In some cases, rules with the
$document
modifier did not show the dummy page.
- Cosmetic rule logging
- Support of $elemhide, $specifichide and $generichide modifiers.
- Cosmetic rule matching for frames loaded from the service worker cache.
- Updated
@adguard/tsurlfilter
tov2.1.2
.
- Updated
@adguard/tsurlfilter
tov2.1.1
.
- new
DocumentApi
class, with frame-matching taking into account the state of theAllowlist
.
AllowlistApi
renamed toAllowlist
.matchFrame
method moved toDocumentApi
class.
- Extra headers handling in chromium browsers.
- Filtering log update on cached pages reload.
- Updated
@adguard/tsurlfilter
tov2.1.0
.
logLevel
configuration property type tostring
.RequestContextStorage
to extend fromMap
.
record
,find
methods andonUpdate
,onCreate
events fromRequestContextStorage
.
- Updated
@adguard/scriptlets
tov1.9.37
.
- Tab context matching for pages with cached document page.
hideRequestInitiatorElement
function return more accurate css selector src attribute value for first party requests.ElementCollapser
inject styles via isolated style tag.
- Script rules injection.
- New
logLevel
optional property for MV2 configuration to control logging levels.
verbose
MV2 configuration property is now optional.
- New MV2 API methods for configuration updating without engine restart:
setFilteringEnabled
,setCollectHitStats
,setStealthModeEnabled
,setSelfDestructFirstPartyCookies
,setSelfDestructThirdPartyCookies
,setSelfDestructThirdPartyCookies
,setSelfDestructFirstPartyCookiesTime
,setSelfDestructThirdPartyCookiesTime
,setHideReferrer
,setHideSearchQueries
,setBlockChromeClientData
,setSendDoNotTrack
,setBlockWebRTC
.
- Updated
getMessageHandler
API method return type. start
,update
andsetFilteringEnabled
API methods flush browser in-memory cache. This change improve filtering on pages with service workers and inactive tabs.
- Stealth module correctly sets browser privacy network settings based on
blockWebRTC
,stealthModeEnabled
andfilteringEnabled
options - unique
eventId
forFilteringEventType.JsInject
events
- The cookies lifetime in Stealth Mode does not apply after the engine is started, only after restarting.
- Incorrect work of $cookie rules: incorrect parsing of
domain
andpath
fields leads to errors when using browser.cookies and creating multiple "child" cookies for each sub-request with a more specific path, e.g. request to '/assets/script.js' from '/' will create a new cookie for '/assets/'. - Wrong expirationDate for cookies.
- Applying $cookie rules to the requests before sending them to a server in the onBeforeSendHeaders hook.
- Updated
@adguard/extended-css
tov2.0.52
- Updated
@adguard/scriptlets
tov1.9.7
- Separated export of CssHitsCounter to better tree shaking on external applications.
- Improved injection algorithm for cosmetic rules (js and css). logic using the Finite State Machine to avoid double injections with the previous boolean flag scheme.
- Set injectScript and injectCss error to debug level.
- Updated tsurlfilter to v2.0.
- Described event flow scheme for webRequestModule.
- Changed enums according to our guideline.
- Order of injecting scripts with setDomSignal.
- Executing of html and replace rules for Firefox
- Executing of scriptlets rules for Firefox
- Stricter checking for non local JS rules for Firefox AMO
- Updated
@adguard/scriptlets
tov1.9.1
- Cosmetic rules applying if CssHitsCounter is disabled
- Mark requests from navigation from address bar as first-party requests.
- Updated
@adguard/extended-css
tov2.0.51
- Added cosmetic rules injection in tabs opened before API initialization
- Fix js rule injections via WebRequest API.
- Fix extended css rule injections via content-script on API initialization. Content-script wait for engine start before processing.
- Fix css hit counter enabling.
Now, it is initialized only if
collectHitStats
configuration prop is true.
- Support for browser.windows.onWindowFocusChanged to make browser.tabs.onActivated event calls work better when focus changes between windows.
- Updated
@adguard/extended-css
tov2.0.49
- Updated
@adguard/extended-css
tov2.0.45
- When opens phishing or malware site, extension will open new tab in the standard window with information about blocked domain and possible actions.
- The order of imports to avoid side effects on tree shaking.
- Made load of AdGuard Assistant lazy to decrease size of content-script bundle.
- Fixed allowlist api rule generation and matching
- Fixed simultaneous increase of package numbers for packages tsurlfilter and tswebextension in the branch epic
- Fixed working with DNT-headers and GPC from stealth mode
- Fixed js and css injection error handling
- Fixed request events initialization
- Fixed memory leaks in the tests
- Previous url from tab's metadata
- Merged changed from master branch
- Allowlist rule priority
- Simple support of
$jsonprune
- Unused injectExtCss method in the CosmeticAPI
- Recovered work of the blocking scriptlets
click2load.html
- Updated
@adguard/scriptlets
tov1.7.20
- Merged changed from master branch
- Support of $webrtc rules
- JS and CSS injection error handling
- Request events initialization