github AdguardTeam/AdGuardHome v0.108.0-b.31
AdGuard Home v0.108.0-b.31

latest releases: v0.107.52, v0.108.0-b.57, v0.107.51...
pre-release18 months ago

Changes compared to the previous beta, v0.108.0-b.30. See CHANGELOG.md for all changes.

A special thanks to our open-source contributor, @Gobd, as well as to everyone who filed and inspected issues, added translations, and helped us test this release!

Full changelog

Added

  • Docker container's healthcheck (#3290).

  • The new HTTP API POST /control/protection, that updates protection state and adds an optional pause duration (#1333). The format of request body is described in openapi/openapi.yaml. The duration of this pause could also be set with the config field protection_disabled_until in dns section of the YAML configuration file.

  • The ability to create a static DHCP lease from a dynamic one more easily (#3459).

  • Two new HTTP APIs, PUT /control/stats/config/update and GET control/stats/config, which can be used to set and receive the query log configuration. See openapi/openapi.yaml for the full description.

  • Two new HTTP APIs, PUT /control/querylog/config/update and GET control/querylog/config, which can be used to set and receive the statistics configuration. See openapi/openapi.yaml for the full description.

  • The ability to set custom IP for EDNS Client Subnet by using the DNS-server configuration section on the DNS settings page in the UI (#1472).

  • The ability to manage safesearch for each service by using the new safe_search field (#1163).

Changed

  • ARPA domain names containing a subnet within private networks now also considered private, behaving closer to RFC 6761 (#5567).

Configuration Changes

In this release, the schema version has changed from 17 to 20.

  • Property statistics.interval, which in schema versions 19 and earlier used to be an integer number of days, is now a string with a human-readable duration:

    # BEFORE:
    'statistics':
      #
      'interval': 1
    
    # AFTER:
    'statistics':
      #
      'interval': '24h'

    To rollback this change, convert the property back into days and change the schema_version back to 19.

  • The dns.safesearch_enabled field has been replaced with safe_search object containing per-service settings.

  • The clients.persistent.safesearch_enabled field has been replaced with safe_search object containing per-service settings.

      # BEFORE:
      'safesearch_enabled': true
    
      # AFTER:
      'safe_search':
        'enabled': true
        'bing': true
        'duckduckgo': true
        'google': true
        'pixabay': true
        'yandex': true
        'youtube': true

    To rollback this change, move the value of dns.safe_search.enabled into the dns.safesearch_enabled, then remove dns.safe_search field. Do the same client's specific clients.persistent.safesearch and then change the schema_version back to 17.

Deprecated

  • The POST /control/safesearch/enable HTTP API is deprecated. Use the new PUT /control/safesearch/settings API.

  • The POST /control/safesearch/disable HTTP API is deprecated. Use the new PUT /control/safesearch/settings API

  • The safesearch_enabled field is deprecated in the following HTTP APIs:

    • GET /control/clients;
    • POST /control/clients/add;
    • POST /control/clients/update;
    • GET /control/clients/find?ip0=...&ip1=...&ip2=....

    Check openapi/openapi.yaml for more details.

  • The GET /control/stats_info HTTP API; use the new GET /control/stats/config API instead.

    NOTE: If interval is custom then it will be equal to 90 days for compatibility reasons. See openapi/openapi.yaml and openapi/CHANGELOG.md.

  • The POST /control/stats_config HTTP API; use the new PUT /control/stats/config/update API instead.

  • The GET /control/querylog_info HTTP API; use the new GET /control/querylog/config API instead.

    NOTE: If interval is custom then it will be equal to 90 days for compatibility reasons. See openapi/openapi.yaml and openapi/CHANGELOG.md.

  • The POST /control/querylog_config HTTP API; use the new PUT /control/querylog/config/update API instead.

Fixed

  • Query log not showing all filtered queries when the “Filtered” log filter is selected (#5639).

  • Panic in empty hostname in the filter's URL (#5631).

  • Panic caused by empty top-level domain name label in /etc/hosts files (#5584).

Don't miss a new AdGuardHome release

NewReleases is sending notifications on new releases.