Filters Compiler Changelog
September 15, 2026 · View on GitHub
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.
Unreleased
Added
Changed
Deprecated
Removed
Fixed
Security
3.3.2-beta.0 - 2026-09-15
Added
validateLocalesaccepts an optionallogFormatargument ('text'or'markdown') that controls the format of the returnedlogfield, so the validation report can be embedded into GitHub issues or PR comments as markdown. Translation content and locale names are wrapped in inline-code spans whose backtick delimiters are longer than any backtick run in the content, and line endings are collapsed to spaces, so the report cannot break out of code spans or headings.
3.3.1 - 2026-09-09
Changed
extension/android-content-blockerplatform metadata (filters.json/filters.js) now references optimized filter builds (_optimized.txt) instead of the full builds.
3.3.0 - 2026-08-26
Added
- Support of
$urltransformmodifier tsurlfilter#111.
Changed
- Replaced to
date-fnsfrommomentfor date formatting, sincemomentis in maintenance mode and no longer recommended for new code. - Updated @adguard/agtree to v4.2.1.
- Updated @adguard/extended-css to v2.2.0.
- Updated @adguard/scriptlets to v2.5.1.
- Updated @adguard/tsurlfilter to v6.0.3
Fixed
timeUpdated/timeAddedmetadata fields and the! TimeUpdated:filter header now stay in UTC instead of shifting to the local time zone during local builds.- Conversion of
redirect-rulemodifier rule withgoogletagmanager-gtm#159.
Security
3.3.0-beta.1 - 2026-08-20
Changed
localOptimizationStatistics.download(basePath: string, includedFilterIds, excludedFilterIds): Allow bothincludedFilterIdsandexcludedFilterIdsto be used at once.localOptimizationStatistics.download(basePath): Clear thebasePathdirectory before downloading statistics.
3.2.12 - 2026-08-10
Added
- Ability to compile filters using local optimization statistics (
localOptimizationStatistics).
Changed
compile()type declaration:whitelist/blacklistnow acceptnull/undefined.getOptimizationStatisticsdeduplicates concurrentpercent.jsonfetches via promise singleton.
3.2.11 - 2026-07-24
Changed
- Updated @adguard/agtree to v4.1.2.
Fixed
- Incorrect UBO → AdGuard conversion of
json-prune-fetch-responseandjson-prune-xhr-responsescriptlets with UBO'spropsToMatchandstackToMatchkey/value args syntax #250.
3.2.10 - 2026-07-21
3.2.10-beta.0 - 2026-07-21
Added
- TypeScript toolchain for incremental adoption.
Changed
- Updated @adguard/filters-downloader to v2.4.4.
Fixed
- Corrected the public type declarations for validation function return values.
3.2.9 - 2026-04-21
Changed
- Updated @adguard/agtree to v4.1.0-beta.0, which adds conversion of the
google-ima3scriptlet to its uBO-compatiblegoogle-imacounterpart #274.
3.2.8 - 2026-03-26
Changed
- Updated @adguard/agtree to v4.0.4.
- Updated @adguard/tsurlfilter to v4.0.5.
3.2.7 - 2026-03-25
Fixed
- Skip conversion of
[min-length]/[max-length]HTML filtering rule attribute selectors to:contains(/regex/)to prevent CoreLibs regexp quantifier overflow (PCRE2 limit of 65535).
3.2.6 - 2026-03-24
Changed
- Updated @adguard/agtree to v4.0.3.
- Updated @adguard/scriptlets to v2.3.1.
- Updated @adguard/tsurlfilter to v4.0.4.
3.2.5 - 2026-03-19
Changed
- Updated @adguard/agtree to v4.0.2.
- Updated @adguard/scriptlets to v2.3.0.
- Updated @adguard/tsurlfilter to v4.0.3.
3.2.4 - 2025-12-16
Changed
- Updated @adguard/agtree to v3.4.3.
- Updated @adguard/scriptlets to v2.2.14.
- Updated @adguard/tsurlfilter to v3.5.2.
Fixed
- Conversion of
googlesyndication.com/adsbygoogle.jsredirect.
3.2.3 - 2025-12-12
Fixed
- Exclude
$redirect-ruleinstead of$redirectfrom filters for MV3 extensions #231.
3.2.2 - 2025-11-28
Fixed
- Build on Windows due to incorrect path handling.
3.2.1 - 2025-11-27
Fixed
- Applying of trust-level exclusions.
3.2.0 - 2025-11-27
Added
@adguard/css-tokenizerand@eslint/css-treeas direct dependencies since @adguard/ecss-tree v2 marks them as external.
Changed
- Updated @adguard/agtree to v3.3.1.
- Updated @adguard/ecss-tree to v2.0.1.
- Updated @adguard/scriptlets to v2.2.13.
- Updated @adguard/tsurlfilter to v3.5.1.
Fixed
- Fixed parsing of network rules with regex patterns containing commas in quantifiers.
3.1.4 - 2025-11-12
Changed
- Updated @adguard/agtree to v3.2.5.
- Updated @adguard/scriptlets to v2.2.12.
- Updated @adguard/tsurlfilter to v3.2.8.
3.1.3 - 2025-10-24
Fixed
- Collect invalid rules in the report file during filter conversion.
- HTML filtering rules in AdGuard syntax with pseudo-classes are not converted.
3.1.2 - 2025-10-21
Changed
- Updated @adguard/agtree to v3.2.4.
- Updated @adguard/scriptlets to v2.2.11.
- Updated @adguard/tsurlfilter to v3.2.7.
3.1.1 - 2025-09-04
Fixed
log.txtfile.
3.1.0 - 2025-08-06
Added
- Support of
ext_opera_mv3platform.
3.0.2 - 2025-07-31
Added
- Remove
setLoggerfunction.
3.0.1 - 2025-07-31
Added
- Deploy to
npmjs.
2.0.6 - 2025-07-21
Added
- CJS build for better compatibility.
2.0.5 - 2025-07-09
Added
- @adguard/logger v2.0.0 for logging.
Changed
- Updated @adguard/scriptlets to v2.1.8.
- Updated @adguard/agtree to v3.2.2.
- Updated @adguard/tsurlfilter to v3.2.4.
2.0.4 - 2025-06-26
Added
- @adguard/agtree v3.2.1 for rules conversion and validation.
- @adguard/ecss-tree v1.1.0 for selector lists validation.
Changed
- Updated @adguard/extended-css to v2.1.1.
- Updated @adguard/filters-downloader to v2.4.0.
- Updated @adguard/scriptlets to v2.1.7.
- Updated @adguard/tsurlfilter to v3.2.2.
Fixed
- Issue with invalid selector #242.
- Issue with regex in
$domainmodifier #241. - Issue with regex in
$urlmodifier #237.
1.2.8 - 2025-06-06
Fixed
- Removing obsolete filters from
filters.jsonandfilters_i18n.jsonmetadata formac_v2platform.
1.2.7 - 2025-05-28
Added
- Patterns for
:matches-property()and generic CSS rules.
Changed
- Exclude
$removeheader,:matches-property()and generic CSS rules from uBO filter lists.
Fixed
- Patterns for CSS rules.
1.2.6 - 2025-04-29
Added
- Support of a new
cliplatform for AdGuard for Linux #248.
1.2.5 - 2025-04-23
Added
- Support of
hi,hy,lt,ms,thlocales as required infilters_i18nschema #246.
1.2.4 - 2025-04-22
Added
- Support of a new
mac_v3platform #247.
1.2.3 - 2025-04-21
Changed
- Removed
groupDescriptionsformac_v2platform infilters.jsonmetadata.
1.2.2 - 2025-04-18
Fixed
- Metadata building for old
macplatform.
1.2.1 - 2025-04-17
Added
- Required properties for groups:
groupDescriptioninfiltersschema;descriptioninfilters_i18nschema.
Changed
- Unified list of required locales in
filters_i18nschema for filters, groups, and tags.
1.1.154 - 2025-03-24
Added
- Support for
!+ NOT_VALIDATEhint #245
1.1.153 - 2025-03-14
Changed
- Improved performance of the
@includedirective's/optimizeDomainBlockingRulesoption #243.
1.1.149 - 2024-12-10
Changed
- Print more details when build failed because of invalid directives #213
- Updated @adguard/filters-downloader to v2.2.4
1.1.148 - 2024-10-02
Changed
- Exclude
$redirect-rulefrom filters for MV3 extension #231
1.1.146 - 2024-08-29
Added
deprecatedproperty to the built filters metadata
1.1.144 - 2024-08-14
Fixed
- Removing
Diff-Pathfilter header tag #225
1.1.143 - 2024-08-01
Changed
- Updated @adguard/scriptlets to v1.11.16
- Updated @adguard/tsurlfilter to v2.2.23
1.1.142 - 2024-07-12
Changed
- Used
adguard_ext_chromium_mv3forext_chromium_mv3platform in the platforms configuration instead ofadguard_ext_chromium - Updated @adguard/filters-downloader to v2.2.2
- Updated @adguard/scriptlets to v1.11.6
- Updated @adguard/tsurlfilter to v2.2.21
1.1.141 - 2024-07-02
Changed
- Updated @adguard/scriptlets to v1.11.1
- Updated @adguard/tsurlfilter to v2.2.20
1.1.140 - 2024-07-01
Fixed
- Adding filters i18n metadata due to
platformsIncludedandplatformsExcluded
1.1.139 - 2024-06-21
Added
- Support of
ext_chromium_mv3platform
Fixed
- Do not build filters due to
platformsIncludedandplatformsExcludedif limited list of filters are specified to build
1.1.138 - 2024-06-21
Added
downloadUrlto generated filters metadata
Fixed
- Return the rules in their original order after applying the
@includedirective option/optimizeDomainBlockingRules#217
1.1.136 - 2024-05-22
Changed
- Updated @adguard/filters-downloader to v2.2.1
1.1.135 - 2024-05-20
Added
- New
@includedirective option/optimizeDomainBlockingRules#217
Removed
fs-extrafrom package dependencies
Fixed
- Filtering of duplicates modifiers during the
@includedirective's/addModifiersoption applying #218
1.1.131 - 2024-04-05
Fixes
- Ensure report file is created before writing to it
1.1.130 - 2024-04-04
Changed
- Improved report file logging
1.1.129 - 2024-04-03
Changed
- Updated @adguard/tsurlfilter to v2.2.19:
- validation of
$headermodifier
- validation of
Fixed
- Error during large filter list compiling
1.1.127 - 2024-03-29
Changed
- Updated @adguard/scriptlets to v1.10.25
- Updated @adguard/tsurlfilter to v2.2.17
Fixed
- UBO→ADG conversion of
$remove$scriptlet param #205
1.1.123 - 2024-02-13
Changed
- Updated @adguard/scriptlets to v1.10.1
- Updated @adguard/tsurlfilter to v2.2.13
Fixed
- Issue with excluding CSS rules and rules with the
$removeparammodifier if its value contains part of the other modifier
1.1.121 - 2023-12-15
Added
- New
@includedirective option/ignoreTrustLevel#202
Changed
- Sort filters by filterId in
filters.jsonandfilters.js#195
1.1.119 - 2023-12-06
Added
- FiltersCompiler ignore uBO exception rules with $important modifier #200
Changed
- Updated @adguard/extended-css to v2.0.56
- Updated @adguard/tsurlfilter to v2.2.7
- Updated @adguard/scriptlets to v1.9.101
1.1.115 - 2023-11-21
Added
- Ability to override metadata's expires value for specific platforms #198
- Default expires value "12 hours" for
mac_v2andwindows
Changed
- Exclude
#@%#scripts exceptions from uBO filter lists #199 - Exclude unsupported modifiers for
ext_safari,ios, andext_android_cbplatforms #201
1.1.107 - 2023-11-13
Changed
- Updated @adguard/filters-downloader to v1.1.23
- Updated @adguard/tsurlfilter to v2.2.5
- Updated @adguard/scriptlets to v1.9.91
Fixed
- Filtering of empty lines during the
@includedirective's/addModifiersoption applying
1.1.105 - 2023-11-10
Added
- New
@includedirective option/addModifiers#190
Changed
- Implemented the ability to apply modifiers based on their sequential order in the line.
1.1.104 - 2023-11-08
Changed
- Updated @adguard/tsurlfilter to v2.2.4
1.1.102 - 2023-11-03
Changed
- Updated @adguard/tsurlfilter to v2.2.3
- Updated @adguard/scriptlets to v1.9.83
1.1.101 - 2023-10-20
Changed
- Updated @adguard/filters-downloader to v1.1.21.
1.1.100 - 2023-10-11
Changed
- Updated @adguard/filters-downloader to v1.1.20.
1.1.96 - 2023-08-25
Changed
- Updated @adguard/tsurlfilter to v2.1.11
- Updated @adguard/scriptlets to v1.9.72
1.1.94 - 2023-08-22
Changed
- Updated @adguard/tsurlfilter to v2.1.10
- Updated @adguard/scriptlets to v1.9.70
1.1.93 - 2023-07-27
Changed
- Updated @adguard/scriptlets to v1.9.58
1.1.92 - 2023-07-21
Changed
- Updated @adguard/tsurlfilter to v2.1.5
- Updated @adguard/scriptlets to v1.9.57
1.1.90 - 2023-07-11
Changed
- Throw an error during ADG→UBO conversion of scriptlets rule with
$pathmodifier
1.1.88 - 2023-06-26
Changed
- Updated
platforms.jsonand addedadguard_ext_chromiumintodefinesforEXTENSION_EDGEandEXTENSION_OPERA. - Updated @adguard/tsurlfilter to v2.1.3
1.1.86 - 2023-06-15
Changed
- Updated @adguard/tsurlfilter to v2.1.2
1.1.85 - 2023-06-15
Changed
- Updated @adguard/scriptlets to v1.9.37
- Updated @adguard/tsurlfilter to v2.0.7
1.1.82 - 2023-04-21
Changed
- Updated @adguard/extended-css to v2.0.52
- Updated @adguard/scriptlets to v1.9.7
- Updated @adguard/tsurlfilter to v2.0.3
1.1.79 - 2023-03-09
Added
- Locales validation
filters_i18nschema for filter 23
1.1.77 - 2023-03-01
Added
- Build .js copies of
filters.jsonandfilters_i18n.json
1.1.76 - 2023-02-01
Changed
- Updated @adguard/extended-css to v2.0.45
- Updated @adguard/tsurlfilter to 1.0.73
1.1.75 - 2023-01-19
Changed
- Updated @adguard/scriptlets to v1.8.2
- Updated @adguard/tsurlfilter to 1.0.72
1.1.73 - 2022-12-28
Changed
- Updated @adguard/tsurlfilter to v1.0.68:
- validation of
$hlsmodifier
- validation of
1.1.72 - 2022-12-27
Changed
- Updated @adguard/tsurlfilter to v1.0.67:
- validation of
$jsonprunemodifier
- validation of
1.1.71 - 2022-12-23
Changed
- Updated @adguard/extended-css to v2.0.33:
- Updated @adguard/scriptlets to v1.7.19
- Updated @adguard/tsurlfilter to 1.0.66
Added
- Conversion for
google-ima3redirect #167
Removed
- Support of
$webrtcmodifier
1.1.69 - 2022-12-19
Changed
- Updated @adguard/scriptlets to v1.7.14
- Updated @adguard/tsurlfilter to 1.0.64
1.1.68 - 2022-12-14
Changed
- Updated @adguard/scriptlets to v1.7.13
- Updated @adguard/tsurlfilter to 1.0.63
1.1.67 - 2022-12-06
Changed
- Updated @adguard/extended-css to v2.0.24
- Updated @adguard/scriptlets to v1.7.10
- Updated @adguard/tsurlfilter to 1.0.57
1.1.66 - 2022-12-01
Changed
- Updated @adguard/extended-css to v2.0.18
1.1.65 - 2022-11-29
Changed
- Updated @adguard/extended-css to v2.0.15
1.1.64 - 2022-11-28
Changed
- Updated @adguard/extended-css to v2.0.12
1.1.63 - 2022-11-22
Added
- Support of Trusted scriptlets and their exclusion from list which trust-level is not
full
Changed
- Updated @adguard/tsurlfilter to v1.0.51
- Updated @adguard/scriptlets to v1.7.3