Skip to content

Commit 510e3b6

Browse files
committed
Merge branch 'master' into 7678-correct-schema
2 parents a5be25e + 5f591bd commit 510e3b6

282 files changed

Lines changed: 13006 additions & 7286 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
'name': 'build'
22

33
'env':
4-
'GO_VERSION': '1.24.1'
5-
'NODE_VERSION': '18'
4+
'GO_VERSION': '1.24.6'
5+
'NODE_VERSION': '20'
66

77
'on':
88
'push':

.github/workflows/lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
'name': 'lint'
22

33
'env':
4-
'GO_VERSION': '1.24.1'
4+
'GO_VERSION': '1.24.6'
55

66
'on':
77
'push':

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,7 @@ AdGuardHome.exe
3737
AdGuardHome.yaml*
3838
coverage.txt
3939
node_modules/
40+
test-reports/
41+
tmp/
4042

4143
!/build/gitkeep

CHANGELOG.md

Lines changed: 212 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,223 @@ The format is based on [*Keep a Changelog*](https://keepachangelog.com/en/1.0.0/
99
<!--
1010
## [v0.108.0] – TBA
1111
12-
## [v0.107.58] - 2025-03-11 (APPROX.)
12+
## [v0.107.66] - 2025-09-03 (APPROX.)
1313
14-
See also the [v0.107.58 GitHub milestone][ms-v0.107.58].
14+
See also the [v0.107.66 GitHub milestone][ms-v0.107.66].
1515
16-
[ms-v0.107.58]: https://github.com/AdguardTeam/AdGuardHome/milestone/93?closed=1
16+
[ms-v0.107.66]: https://github.com/AdguardTeam/AdGuardHome/milestone/101?closed=1
1717
1818
NOTE: Add new changes BELOW THIS COMMENT.
1919
-->
20+
<!--
21+
NOTE: Add new changes ABOVE THIS COMMENT.
22+
-->
23+
24+
## [v0.107.65] - 2025-08-20
25+
26+
See also the [v0.107.65 GitHub milestone][ms-v0.107.65].
27+
28+
### Security
29+
30+
- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.6][go-1.24.6].
31+
32+
### Added
33+
34+
- A separate checkbox in the Web UI to enable or disable the global DNS response cache without losing the configured cache size.
35+
36+
- A new `"cache_enabled"` field to the HTTP API (`GET /control/dns_info` and `POST /control/dns_config`). See `openapi/openapi.yaml` for the full description.
37+
38+
### Changed
39+
40+
#### Configuration changes
41+
42+
In this release, the schema version has changed from 29 to 30.
43+
44+
- Added a new boolean field `dns.cache_enabled` to the configuration. This field explicitly controls whether DNS caching is enabled, replacing the previous implicit logic based on `dns.cache_size`.
45+
46+
```yaml
47+
# BEFORE:
48+
'dns':
49+
#
50+
'cache_size': 123456
51+
52+
# AFTER:
53+
'dns':
54+
#
55+
'cache_enabled': true
56+
'cache_size': 123456
57+
```
58+
59+
To roll back this change, set the schema_version back to `29`.
60+
61+
### Fixed
62+
63+
- Disabled state of *Top clients* action button in web UI ([#7923]).
64+
65+
[#7923]: https://github.com/AdguardTeam/AdGuardHome/issues/7923
66+
67+
[go-1.24.6]: https://groups.google.com/g/golang-announce/c/x5MKroML2yM
68+
[ms-v0.107.65]: https://github.com/AdguardTeam/AdGuardHome/milestone/100?closed=1
69+
70+
## [v0.107.64] - 2025-07-28
71+
72+
See also the [v0.107.64 GitHub milestone][ms-v0.107.64].
73+
74+
### Security
75+
76+
- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.5][go-1.24.5].
77+
78+
### Fixed
79+
80+
- TTL override calculation ([#7903]).
81+
- Validation process for DNSCrypt settings ([#7856]).
82+
83+
[#7856]: https://github.com/AdguardTeam/AdGuardHome/issues/7856
84+
[#7903]: https://github.com/AdguardTeam/AdGuardHome/issues/7903
85+
86+
[go-1.24.5]: https://groups.google.com/g/golang-announce/c/gTNJnDXmn34
87+
[ms-v0.107.64]: https://github.com/AdguardTeam/AdGuardHome/milestone/99?closed=1
88+
89+
## [v0.107.63] - 2025-06-26
90+
91+
See also the [v0.107.63 GitHub milestone][ms-v0.107.63].
92+
93+
### Security
94+
95+
- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.4][go-1.24.4].
96+
97+
### Fixed
98+
99+
- The hostnames of DHCP clients with multiple labels not being recognized.
100+
101+
- Status reported by the systemd service implementation in cases of auto-restart after a failed start.
102+
103+
[go-1.24.4]: https://groups.google.com/g/golang-announce/c/ufZ8WpEsA3A
104+
[ms-v0.107.63]: https://github.com/AdguardTeam/AdGuardHome/milestone/98?closed=1
105+
106+
## [v0.107.62] - 2025-05-27
107+
108+
See also the [v0.107.62 GitHub milestone][ms-v0.107.62].
109+
110+
### Security
111+
112+
- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.3][go-1.24.3].
113+
114+
### Fixed
115+
116+
- Clients with CIDR identifiers showing zero requests on the *Settings → Client settings* page ([#2945]).
117+
118+
- Command line option `--update` when the `dns.serve_plain_dns` configuration property was disabled ([#7801]).
119+
120+
- DNS cache not working for custom upstream configurations.
121+
122+
- Validation process for the DNS-over-TLS, DNS-over-QUIC, and HTTPS ports on the *Encryption Settings* page.
123+
124+
- Searching for persistent clients using an exact match for CIDR in the `POST /clients/search` HTTP API.
125+
126+
[#2945]: https://github.com/AdguardTeam/AdGuardHome/issues/2945
127+
[#7801]: https://github.com/AdguardTeam/AdGuardHome/issues/7801
128+
129+
[go-1.24.3]: https://groups.google.com/g/golang-announce/c/UZoIkUT367A
130+
[ms-v0.107.62]: https://github.com/AdguardTeam/AdGuardHome/milestone/97?closed=1
131+
132+
## [v0.107.61] - 2025-04-22
133+
134+
See also the [v0.107.61 GitHub milestone][ms-v0.107.61].
135+
136+
### Security
137+
138+
- Any simultaneous requests that are considered duplicates will now only result in a single request to upstreams, reducing the chance of a cache poisoning attack succeeding. This is controlled by the new configuration object `pending_requests`, which has a single `enabled` property, set to `true` by default.
139+
140+
**NOTE:** We thank [Xiang Li][mr-xiang-li] for reporting this security issue. It's strongly recommended to leave it enabled, otherwise AdGuard Home will be vulnerable to untrusted clients.
141+
142+
[mr-xiang-li]: https://lixiang521.com/
143+
[ms-v0.107.61]: https://github.com/AdguardTeam/AdGuardHome/milestone/96?closed=1
144+
145+
## [v0.107.60] - 2025-04-14
146+
147+
See also the [v0.107.60 GitHub milestone][ms-v0.107.60].
148+
149+
### Security
150+
151+
- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.2][go-1.24.2].
152+
153+
### Changed
154+
155+
- Alpine Linux version in `Dockerfile` has been updated to 3.21 ([#7588]).
156+
157+
### Deprecated
158+
159+
- Node 20 support, Node 22 will be required in future releases.
160+
161+
**NOTE:** `npm` may be replaced with a different tool, such as `pnpm` or `yarn`, in a future release.
162+
163+
### Fixed
164+
165+
- Filtering for DHCP clients ([#7734]).
166+
167+
- Incorrect label on login page ([#7729]).
168+
169+
- Validation process for the HTTPS port on the *Encryption Settings* page.
170+
171+
### Removed
172+
173+
- Node 18 support.
174+
175+
[#7588]: https://github.com/AdguardTeam/AdGuardHome/issues/7588
176+
[#7729]: https://github.com/AdguardTeam/AdGuardHome/issues/7729
177+
[#7734]: https://github.com/AdguardTeam/AdGuardHome/issues/7734
178+
179+
[go-1.24.2]: https://groups.google.com/g/golang-announce/c/Y2uBTVKjBQk
180+
[ms-v0.107.60]: https://github.com/AdguardTeam/AdGuardHome/milestone/95?closed=1
181+
182+
## [v0.107.59] - 2025-03-21
183+
184+
See also the [v0.107.59 GitHub milestone][ms-v0.107.59].
185+
186+
- Rules with the `client` modifier not working ([#7708]).
187+
188+
- The search form not working in the query log ([#7704]).
189+
190+
[#7704]: https://github.com/AdguardTeam/AdGuardHome/issues/7704
191+
[#7708]: https://github.com/AdguardTeam/AdGuardHome/issues/7708
192+
193+
[ms-v0.107.59]: https://github.com/AdguardTeam/AdGuardHome/milestone/94?closed=1
194+
195+
## [v0.107.58] - 2025-03-19
196+
197+
See also the [v0.107.58 GitHub milestone][ms-v0.107.58].
20198

21199
### Security
22200

23201
- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.1][go-1.24.1].
24202

203+
### Added
204+
205+
- The ability to check filtering rules for host names using an optional query type and optional ClientID or client IP address ([#4036]).
206+
207+
- Optional `client` and `qtype` URL query parameters to the `GET /control/check_host` HTTP API.
208+
25209
### Fixed
26210

211+
- Clearing the DNS cache on the *DNS settings* page now includes both global cache and custom client cache.
212+
213+
- Invalid ICMPv6 Router Advertisement messages ([#7547]).
214+
215+
- Disabled button for autofilled login form.
216+
27217
- Formatting of elapsed times less than one millisecond.
218+
28219
- Changes to global upstream DNS settings not applying to custom client upstream configurations.
220+
29221
- The formatting of large numbers in the clients tables on the *Client settings* page ([#7583]).
30222

223+
[#4036]: https://github.com/AdguardTeam/AdGuardHome/issues/4036
224+
[#7547]: https://github.com/AdguardTeam/AdGuardHome/issues/7547
31225
[#7583]: https://github.com/AdguardTeam/AdGuardHome/issues/7583
32226

33227
[go-1.24.1]: https://groups.google.com/g/golang-announce/c/4t3lzH3I0eI
34-
35-
<!--
36-
NOTE: Add new changes ABOVE THIS COMMENT.
37-
-->
228+
[ms-v0.107.58]: https://github.com/AdguardTeam/AdGuardHome/milestone/93?closed=1
38229

39230
## [v0.107.57] - 2025-02-20
40231

@@ -55,6 +246,7 @@ See also the [v0.107.57 GitHub milestone][ms-v0.107.57].
55246
### Fixed
56247

57248
- The hostnames of DHCP clients not being shown in the *Top clients* table on the dashboard ([#7627]).
249+
58250
- The formatting of large numbers in the upstream table and query log ([#7590]).
59251

60252
[#7590]: https://github.com/AdguardTeam/AdGuardHome/issues/7590
@@ -2717,7 +2909,7 @@ See also the [v0.106.0 GitHub milestone][ms-v0.106.0].
27172909

27182910
- Quality of logging ([#2954]).
27192911

2720-
- Normalization of hostnames sent by DHCP clients ([#2945], [#2952]).
2912+
- Normalization of hostnames sent by DHCP clients ([#2946], [#2952]).
27212913

27222914
- The access to the private hosts is now forbidden for users from external networks ([#2889]).
27232915

@@ -2777,7 +2969,7 @@ See also the [v0.106.0 GitHub milestone][ms-v0.106.0].
27772969
[#2923]: https://github.com/AdguardTeam/AdGuardHome/issues/2923
27782970
[#2927]: https://github.com/AdguardTeam/AdGuardHome/issues/2927
27792971
[#2934]: https://github.com/AdguardTeam/AdGuardHome/issues/2934
2780-
[#2945]: https://github.com/AdguardTeam/AdGuardHome/issues/2945
2972+
[#2946]: https://github.com/AdguardTeam/AdGuardHome/issues/2946
27812973
[#2947]: https://github.com/AdguardTeam/AdGuardHome/issues/2947
27822974
[#2952]: https://github.com/AdguardTeam/AdGuardHome/issues/2952
27832975
[#2954]: https://github.com/AdguardTeam/AdGuardHome/issues/2954
@@ -3031,11 +3223,19 @@ See also the [v0.104.2 GitHub milestone][ms-v0.104.2].
30313223
[ms-v0.104.2]: https://github.com/AdguardTeam/AdGuardHome/milestone/28?closed=1
30323224

30333225
<!--
3034-
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.58...HEAD
3035-
[v0.107.58]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.57...v0.107.58
3226+
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.66...HEAD
3227+
[v0.107.66]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.65...v0.107.66
30363228
-->
30373229

3038-
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.57...HEAD
3230+
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.65...HEAD
3231+
[v0.107.65]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.64...v0.107.65
3232+
[v0.107.64]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.63...v0.107.64
3233+
[v0.107.63]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.62...v0.107.63
3234+
[v0.107.62]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.61...v0.107.62
3235+
[v0.107.61]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.60...v0.107.61
3236+
[v0.107.60]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.59...v0.107.60
3237+
[v0.107.59]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.58...v0.107.59
3238+
[v0.107.58]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.57...v0.107.58
30393239
[v0.107.57]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.56...v0.107.57
30403240
[v0.107.56]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.55...v0.107.56
30413241
[v0.107.55]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.54...v0.107.55

Makefile

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ DIST_DIR = dist
2727
GOAMD64 = v1
2828
GOPROXY = https://proxy.golang.org|direct
2929
GOTELEMETRY = off
30-
GOTOOLCHAIN = go1.24.1
30+
GOTOOLCHAIN = go1.24.6
3131
GPG_KEY = devteam@adguard.com
3232
GPG_KEY_PASSPHRASE = not-a-real-password
3333
NPM = npm
@@ -38,7 +38,6 @@ REVISION = $${REVISION:-$$(git rev-parse --short HEAD)}
3838
SIGN = 1
3939
SIGNER_API_KEY = not-a-real-key
4040
VERSION = v0.0.0
41-
YARN = yarn
4241

4342
NEXTAPI = 0
4443

@@ -139,5 +138,4 @@ txt-lint: ; $(ENV) "$(SHELL)" ./scripts/make/txt-lint.sh
139138
md-lint: ; $(ENV_MISC) "$(SHELL)" ./scripts/make/md-lint.sh
140139
sh-lint: ; $(ENV_MISC) "$(SHELL)" ./scripts/make/sh-lint.sh
141140

142-
openapi-lint: ; cd ./openapi/ && $(YARN) test
143-
openapi-show: ; cd ./openapi/ && $(YARN) start
141+
# TODO(a.garipov): Re-add openapi-lint.

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,9 +205,9 @@ Run `make init` to prepare the development environment.
205205

206206
You will need this to build AdGuard Home:
207207

208-
- [Go](https://golang.org/dl/) v1.23 or later;
209-
- [Node.js](https://nodejs.org/en/download/) v18.18 or later;
210-
- [npm](https://www.npmjs.com/) v8 or later;
208+
- [Go](https://golang.org/dl/) v1.24 or later;
209+
- [Node.js](https://nodejs.org/en/download/) v20.19 or later;
210+
- [npm](https://www.npmjs.com/) v10.8 or later;
211211

212212
### <a href="#building" id="building" name="building">Building</a>
213213

bamboo-specs/release.yaml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
# Make sure to sync any changes with the branch overrides below.
88
'variables':
99
'channel': 'edge'
10-
'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye'
11-
'dockerGo': 'adguard/go-builder:1.24.1--1'
10+
'dockerFrontend': 'adguard/home-js-builder:3.1'
11+
'dockerGo': 'adguard/go-builder:1.24.6--1'
1212

1313
'stages':
1414
- 'Build frontend':
@@ -50,7 +50,7 @@
5050
'docker':
5151
'image': '${bamboo.dockerFrontend}'
5252
'volumes':
53-
'${system.YARN_DIR}': '${bamboo.cacheYarn}'
53+
'${system.NPM_DIR}': '${bamboo.cacheNpm}'
5454
'key': 'BF'
5555
'other':
5656
'clean-working-dir': true
@@ -157,6 +157,7 @@
157157
158158
# Print Docker info.
159159
docker info
160+
docker buildx version
160161
161162
# Prepare and push the build.
162163
env \
@@ -277,8 +278,8 @@
277278
# need to build a few of these.
278279
'variables':
279280
'channel': 'beta'
280-
'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye'
281-
'dockerGo': 'adguard/go-builder:1.24.1--1'
281+
'dockerFrontend': 'adguard/home-js-builder:3.1'
282+
'dockerGo': 'adguard/go-builder:1.24.6--1'
282283
# release-vX.Y.Z branches are the branches from which the actual final
283284
# release is built.
284285
- '^release-v[0-9]+\.[0-9]+\.[0-9]+':
@@ -293,5 +294,5 @@
293294
# are the ones that actually get released.
294295
'variables':
295296
'channel': 'release'
296-
'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye'
297-
'dockerGo': 'adguard/go-builder:1.24.1--1'
297+
'dockerFrontend': 'adguard/home-js-builder:3.1'
298+
'dockerGo': 'adguard/go-builder:1.24.6--1'

0 commit comments

Comments
 (0)