Skip to content

Commit

Permalink
Merge branch 'master' into AG-27492-client-persistent-storage
Browse files Browse the repository at this point in the history
  • Loading branch information
schzhn committed Feb 14, 2024
2 parents b8ea924 + 3773628 commit 6b2f09a
Show file tree
Hide file tree
Showing 123 changed files with 912 additions and 751 deletions.
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,9 @@
the best way. For crashes, please provide a full failure log.
'label': 'Action'
'value': |
Replace the following command with the one you're calling or a
description of the failing action:
```sh
nslookup -debug -type=a 'www.example.com' '$YOUR_AGH_ADDRESS'
```
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'name': 'build'

'env':
'GO_VERSION': '1.20.12'
'GO_VERSION': '1.21.7'
'NODE_VERSION': '16'

'on':
Expand Down Expand Up @@ -101,7 +101,10 @@
- 'name': 'Set up Docker Buildx'
'uses': 'docker/setup-buildx-action@v1'
- 'name': 'Run snapshot build'
'run': 'make SIGN=0 VERBOSE=1 build-release build-docker'
# Set a custom version string, since the checkout@v2 action does not seem
# to know about the master branch, while the version script uses it to
# count the number of commits within the branch.
'run': 'make SIGN=0 VERBOSE=1 VERSION="v0.0.0-github" build-release build-docker'

'notify':
'needs':
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'name': 'lint'

'env':
'GO_VERSION': '1.20.12'
'GO_VERSION': '1.21.7'

'on':
'push':
Expand Down
90 changes: 74 additions & 16 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,76 @@ and this project adheres to
<!--
## [v0.108.0] - TBA
## [v0.107.44] - 2023-12-20 (APPROX.)
## [v0.107.45] - 2024-03-05 (APPROX.)
See also the [v0.107.44 GitHub milestone][ms-v0.107.44].
See also the [v0.107.45 GitHub milestone][ms-v0.107.45].
[ms-v0.107.44]: https://github.com/AdguardTeam/AdGuardHome/milestone/79?closed=1
[ms-v0.107.45]: https://github.com/AdguardTeam/AdGuardHome/milestone/80?closed=1
NOTE: Add new changes BELOW THIS COMMENT.
-->

### Security

- Go version has been updated to prevent the possibility of exploiting the Go
vulnerabilities fixed in Go 1.21.6 and Go 1.21.7.

### Added

- Etc timezones to the timezone list ([#6568]).
- Ability to define custom directories for storage of query log files and
statistics ([#5992]).
- Context menu item in the Query Log to add a Client to the Persistent client
list ([#6679]).

### Changed

- Starting with this release our scripts are using Go's [forward compatibility
mechanism][go-toolchain] for updating the Go version.

**Important note for porters:** This change means that if your `go` version
is 1.21+ but is different from the one required by AdGuard Home, the `go` tool
will automatically download the required version.

If you want to use the version installed on your builder, run:

```sh
go get go@$YOUR_VERSION
go mod tidy
```

and call `make` with `GOTOOLCHAIN=local`.

### Deprecated

- Go 1.21 support. Future versions will require at least Go 1.22 to build.

### Fixed

- Incorrect tracking of the system hosts file's changes ([#6711]).

### Removed

- Go 1.20 support, as it has reached end of life.

[#5992]: https://github.com/AdguardTeam/AdGuardHome/issues/5992
[#6679]: https://github.com/AdguardTeam/AdGuardHome/issues/6679
[#6711]: https://github.com/AdguardTeam/AdGuardHome/issues/6711

[go-toolchain]: https://go.dev/blog/toolchain

<!--
NOTE: Add new changes ABOVE THIS COMMENT.
-->



## [v0.107.44] - 2024-02-06

See also the [v0.107.44 GitHub milestone][ms-v0.107.44].

### Added

- Timezones in the Etc/ area to the timezone list ([#6568]).
- The schema version of the configuration file to the output of running
`AdGuardHome` (or `AdGuardHome.exe`) with `-v --version` command-line options
([#6545]).
Expand All @@ -34,8 +92,8 @@ NOTE: Add new changes BELOW THIS COMMENT.

### Changed

- The bootstrapped upstream addresses now updated according to the TTL of the
bootstrap DNS response ([#6321]).
- The bootstrapped upstream addresses are now updated according to the TTL of
the bootstrap DNS response ([#6321]).
- Logging level of timeout errors is now `error` instead of `debug` ([#6574]).
- The field `"upstream_mode"` in `POST /control/dns_config` and
`GET /control/dns_info` HTTP APIs now accepts `load_balance` value. Check
Expand All @@ -45,8 +103,8 @@ NOTE: Add new changes BELOW THIS COMMENT.

In this release, the schema version has changed from 27 to 28.

- The new property `clients.persistent.*.uid`, which is unique identifier of the
persistent client.
- The new property `clients.persistent.*.uid`, which is a unique identifier of
the persistent client.
- The properties `dns.all_servers` and `dns.fastest_addr` were removed, their
values migrated to newly added field `dns.upstream_mode` that describes the
logic through which upstreams will be used. See also a [Wiki
Expand All @@ -71,6 +129,8 @@ In this release, the schema version has changed from 27 to 28.

### Fixed

- “Invalid AddrPort” in the *Private reverse DNS servers* section on the
*Settings → DNS settings* page.
- Panic on using `--no-etc-hosts` flag ([#6644]).
- Schedule display in the client settings after creating or updating.
- Zero value in `querylog.size_memory` disables logging ([#6570]).
Expand Down Expand Up @@ -98,11 +158,8 @@ In this release, the schema version has changed from 27 to 28.
[#6584]: https://github.com/AdguardTeam/AdGuardHome/issues/6584
[#6644]: https://github.com/AdguardTeam/AdGuardHome/issues/6644

[wiki-config]: https://github.com/AdguardTeam/AdGuardHome/wiki/Configuration

<!--
NOTE: Add new changes ABOVE THIS COMMENT.
-->
[ms-v0.107.44]: https://github.com/AdguardTeam/AdGuardHome/milestone/79?closed=1
[wiki-config]: https://github.com/AdguardTeam/AdGuardHome/wiki/Configuration



Expand Down Expand Up @@ -2750,11 +2807,12 @@ See also the [v0.104.2 GitHub milestone][ms-v0.104.2].


<!--
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.44...HEAD
[v0.107.44]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.43...v0.107.44
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.45...HEAD
[v0.107.45]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.44...v0.107.45
-->

[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.43...HEAD
[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.44...HEAD
[v0.107.44]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.43...v0.107.44
[v0.107.43]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.42...v0.107.43
[v0.107.42]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.41...v0.107.42
[v0.107.41]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.40...v0.107.41
Expand Down
19 changes: 8 additions & 11 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
# Makefile. Bump this number every time a significant change is made to
# this Makefile.
#
# AdGuard-Project-Version: 2
# AdGuard-Project-Version: 4

# Don't name these macros "GO" etc., because GNU Make apparently makes
# them exported environment variables with the literal value of
Expand All @@ -27,6 +27,7 @@ DIST_DIR = dist
GOAMD64 = v1
GOPROXY = https://goproxy.cn|https://proxy.golang.org|direct
GOSUMDB = sum.golang.google.cn
GOTOOLCHAIN = go1.21.7
GPG_KEY = devteam@adguard.com
GPG_KEY_PASSPHRASE = not-a-real-password
NPM = npm
Expand Down Expand Up @@ -56,15 +57,16 @@ BUILD_RELEASE_DEPS_0 = deps js-build
BUILD_RELEASE_DEPS_1 = go-deps

ENV = env\
COMMIT='$(COMMIT)'\
CHANNEL='$(CHANNEL)'\
GPG_KEY='$(GPG_KEY)'\
GPG_KEY_PASSPHRASE='$(GPG_KEY_PASSPHRASE)'\
COMMIT='$(COMMIT)'\
DIST_DIR='$(DIST_DIR)'\
GO="$(GO.MACRO)"\
GOAMD64="$(GOAMD64)"\
GOPROXY='$(GOPROXY)'\
GOSUMDB='$(GOSUMDB)'\
GOTOOLCHAIN='$(GOTOOLCHAIN)'\
GPG_KEY='$(GPG_KEY)'\
GPG_KEY_PASSPHRASE='$(GPG_KEY_PASSPHRASE)'\
PATH="$${PWD}/bin:$$( "$(GO.MACRO)" env GOPATH )/bin:$${PATH}"\
RACE='$(RACE)'\
SIGN='$(SIGN)'\
Expand Down Expand Up @@ -117,6 +119,8 @@ go-tools: ; $(ENV) "$(SHELL)" ./scripts/make/go-tools.sh
# targets.
go-test: ; $(ENV) RACE='1' "$(SHELL)" ./scripts/make/go-test.sh

go-upd-tools: ; $(ENV) "$(SHELL)" ./scripts/make/go-upd-tools.sh

go-check: go-tools go-lint go-test

# A quick check to make sure that all supported operating systems can be
Expand All @@ -132,10 +136,3 @@ openapi-lint: ; cd ./openapi/ && $(YARN) test
openapi-show: ; cd ./openapi/ && $(YARN) start

txt-lint: ; $(ENV) "$(SHELL)" ./scripts/make/txt-lint.sh

# TODO(a.garipov): Consider adding to scripts/ and the common project
# structure.
go-upd-tools:
cd ./internal/tools/ &&\
"$(GO.MACRO)" get -u &&\
"$(GO.MACRO)" mod tidy
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -473,6 +473,9 @@ bug or implementing the feature.
[@kongfl888](https://github.com/kongfl888) (originally by
[@rufengsuixing](https://github.com/rufengsuixing)).

* [AdGuardHome sync](https://github.com/bakito/adguardhome-sync) by
[@bakito](https://github.com/bakito).

* [Terminal-based, real-time traffic monitoring and statistics for your AdGuard Home
instance](https://github.com/Lissy93/AdGuardian-Term) by
[@Lissy93](https://github.com/Lissy93)
Expand Down
6 changes: 3 additions & 3 deletions bamboo-specs/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# Make sure to sync any changes with the branch overrides below.
'variables':
'channel': 'edge'
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'

'stages':
- 'Build frontend':
Expand Down Expand Up @@ -272,7 +272,7 @@
# need to build a few of these.
'variables':
'channel': 'beta'
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'
# release-vX.Y.Z branches are the branches from which the actual final
# release is built.
- '^release-v[0-9]+\.[0-9]+\.[0-9]+':
Expand All @@ -287,4 +287,4 @@
# are the ones that actually get released.
'variables':
'channel': 'release'
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'
6 changes: 3 additions & 3 deletions bamboo-specs/snapcraft.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# Make sure to sync any changes with the branch overrides below.
'variables':
'channel': 'edge'
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'
'snapcraftChannel': 'edge'

'stages':
Expand Down Expand Up @@ -191,7 +191,7 @@
# need to build a few of these.
'variables':
'channel': 'beta'
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'
'snapcraftChannel': 'beta'
# release-vX.Y.Z branches are the branches from which the actual final
# release is built.
Expand All @@ -207,5 +207,5 @@
# are the ones that actually get released.
'variables':
'channel': 'release'
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'
'snapcraftChannel': 'candidate'
2 changes: 1 addition & 1 deletion bamboo-specs/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
'key': 'AHBRTSPECS'
'name': 'AdGuard Home - Build and run tests'
'variables':
'dockerGo': 'adguard/golang-ubuntu:7.6'
'dockerGo': 'adguard/golang-ubuntu:8.0'

'stages':
- 'Tests':
Expand Down
3 changes: 3 additions & 0 deletions client/src/__locales/be.json
Original file line number Diff line number Diff line change
Expand Up @@ -236,13 +236,15 @@
"updated_upstream_dns_toast": "Upstream DNS-серверы абноўлены",
"dns_test_ok_toast": "Паказаныя серверы DNS працуюць карэктна",
"dns_test_not_ok_toast": "Сервер «{{key}}»: немагчыма выкарыстоўваць, праверце слушнасць напісання",
"dns_test_parsing_error_toast": "Раздзел {{section}}: радок {{line}}: немагчыма выкарыстоўваць, праверце слушнасць напісання",
"dns_test_warning_toast": "Upstream «{{key}}» не адказвае на тэставыя запыты і можа не працаваць належным чынам",
"unblock": "Адблакаваць",
"block": "Заблакаваць",
"disallow_this_client": "Забараніць доступ гэтаму кліенту",
"allow_this_client": "Дазволіць доступ гэтаму кліенту",
"block_for_this_client_only": "Заблакаваць толькі для гэтага кліента",
"unblock_for_this_client_only": "Адблакаваць толькі для гэтага кліента",
"add_persistent_client": "Дадаць у захаваныя кліенты",
"time_table_header": "Час",
"date": "Дата",
"domain_name_table_header": "Дамен",
Expand Down Expand Up @@ -462,6 +464,7 @@
"form_add_id": "Дадаць ідэнтыфікатар",
"form_client_name": "Увядзіце імя кліента",
"name": "Назва",
"client_name": "Кліент {{id}}",
"client_global_settings": "Выкарыстаць глабальныя налады",
"client_deleted": "Кліент «{{key}}» паспяхова выдалены",
"client_added": "Кліент «{{key}}» паспяхова дададзены",
Expand Down
3 changes: 3 additions & 0 deletions client/src/__locales/cs.json
Original file line number Diff line number Diff line change
Expand Up @@ -236,13 +236,15 @@
"updated_upstream_dns_toast": "Odchozí servery byly úspěšně uloženy",
"dns_test_ok_toast": "Specifikované DNS servery pracují správně",
"dns_test_not_ok_toast": "Server \"{{key}}\": nemohl být použit, zkontrolujte, zda jste ho správně napsali",
"dns_test_parsing_error_toast": "Sekce {{section}}: řádek {{line}}: nelze použít, zkontrolujte prosím, zda jste ho správně napsali",
"dns_test_warning_toast": "Upstream \"{{key}}\" neodpovídá na testovací požadavky a nemusí fungovat správně",
"unblock": "Odblokovat",
"block": "Blokovat",
"disallow_this_client": "Blokovat tohoto klienta",
"allow_this_client": "Povolit tohoto klienta",
"block_for_this_client_only": "Blokovat pouze pro tohoto klienta",
"unblock_for_this_client_only": "Odblokovat pouze pro tohoto klienta",
"add_persistent_client": "Přidat jako trvalého klienta",
"time_table_header": "Čas",
"date": "Datum",
"domain_name_table_header": "Název domény",
Expand Down Expand Up @@ -465,6 +467,7 @@
"form_add_id": "Přidat identifikátor",
"form_client_name": "Zadejte název klienta",
"name": "Název",
"client_name": "Klient {{id}}",
"client_global_settings": "Použít globální nastavení",
"client_deleted": "Klient \"{{key}}\" byl úspěšně odstraněn",
"client_added": "Klient \"{{key}}\" byl úspěšně přidán",
Expand Down
3 changes: 3 additions & 0 deletions client/src/__locales/da.json
Original file line number Diff line number Diff line change
Expand Up @@ -236,13 +236,15 @@
"updated_upstream_dns_toast": "Upstream-servere er gemt",
"dns_test_ok_toast": "Angivne DNS-servere fungerer korrekt",
"dns_test_not_ok_toast": "Server \"{{key}}\": Kunne ikke bruges. Tjek, at du har angivet den korrekt",
"dns_test_parsing_error_toast": "Sektion {{section}}: linje {{line}}: kunne ikke anvendes. Tjek at den er angivet korrekt",
"dns_test_warning_toast": "Upstream \"{{key}}\" svarer ikke på testforespørgsler og fungerer muligvis ikke korrekt",
"unblock": "Afblokering",
"block": "Blokering",
"disallow_this_client": "Afvis denne klient",
"allow_this_client": "Tillad denne klient",
"block_for_this_client_only": "Blokér kun for denne klient",
"unblock_for_this_client_only": "Afblokér kun for denne klient",
"add_persistent_client": "Tilføj som vedvarende klient",
"time_table_header": "Tid",
"date": "Dato",
"domain_name_table_header": "Domænenavn",
Expand Down Expand Up @@ -465,6 +467,7 @@
"form_add_id": "Tilføj identifikator",
"form_client_name": "Angiv klientnavn",
"name": "Navn",
"client_name": "Klient {{id}}",
"client_global_settings": "Brug globale indstillinger",
"client_deleted": "Klient \"{{key}}\" slettet",
"client_added": "Klient \"{{key}}\" tilføjet",
Expand Down
Loading

0 comments on commit 6b2f09a

Please sign in to comment.