github pi-hole/FTL v6.0

latest releases: v6.0.2, v6.0.1
3 days ago

What's Changed

  • New logging style by @yubiuser in #1141
  • Fix spelling in v6 by @yubiuser in #1571
  • The new checkOnly argument should be false when parsing lists by @rdwebdesign in #1577
  • Add mg.request_info.is_authenticated to check if a user is authenticated by @DL6ER in #1578
  • Change generated elliptic curve from secp521r1 to secp384r1 by @DL6ER in #1583
  • Fix SQL used to update existing adlists via the API by @DL6ER in #1581
  • Chown config file after writing (if root) by @DL6ER in #1582
  • Remove left-over debug output by @DL6ER in #1585
  • Add OpenAPI Authentication and Authorization details for the API by @DL6ER in #1588
  • Update embedded dnsmasq by @DL6ER in #1580
  • Fix OpenAPI documentation login by @DL6ER in #1594
  • Add support for TRUNCATED DNSSEC status by @DL6ER in #1595
  • Tweaks to devcontainer config by @PromoFaux in #1600
  • Fix total number in Query Log by @DL6ER in #1599
  • Add support for TRUNCATED DNSSEC status (2) by @DL6ER in #1603
  • Fix API parameter parsing on 32bit architectures by @DL6ER in #1604
  • Fix Query Log total number without filtering by @DL6ER in #1605
  • Slash the slash by @DL6ER in #1601
  • Remove reboot and poweroff actions from the API by @DL6ER in #1606
  • Fix upgrade of the password hash by @DL6ER in #1610
  • Tweaks for the webserver port by @DL6ER in #1609
  • Copy missing information from man pihole-FTL to pihole-FTL -h by @yubiuser in #1570
  • Fix API config value interpretation warning by @DL6ER in #1613
  • Embed missing file API specs file specs/action.yaml by @DL6ER in #1612
  • Ensure (at least try to!) detach disk database on SQL issues by @DL6ER in #1615
  • Fix 404 for GET /api/info/sensors when hwmon isn't available by @DL6ER in #1616
  • Always get max query ID from disk by @DL6ER in #1618
  • Hard limit for searching the adlists is 10,000 by @yubiuser in #1622
  • Add config option to enable packet dumping to PCAP file by @DL6ER in #1627
  • Update embedded dnsmasq to latest master by @DL6ER in #1628
  • Update embedded SQLite to 3.43.0 by @DL6ER in #1631
  • Update embedded SQLite to 3.43.1 by @DL6ER in #1637
  • Clear web session on external password change by @DL6ER in #1630
  • Provide regex ID for API by @DL6ER in #1607
  • Allow build/deploy workflow to be triggered by workflow_dispatch by @yubiuser in #1639
  • Add antigravity (subscribed allowlists with wildcard support) by @DL6ER in #1579
  • Improve web theme handling by @DL6ER in #1647
  • Update ftl-build container version by @DL6ER in #1650
  • Add performance tests and prevent online-brute forcing by @DL6ER in #1646
  • Add ABP-support for /api/search by @DL6ER in #1649
  • Simplify/fix redirection rules by @DL6ER in #1651
  • Allow generating X.509 TLS certificates for arbitrary domain names by @DL6ER in #1654
  • Add /api/info/login by @DL6ER in #1653
  • Update SQLite3 to 3.43.2 by @DL6ER in #1655
  • Fix wording of info message concerning self-generated TLS certificate by @DL6ER in #1657
  • Add new option dns.listeningMode = NONE by @DL6ER in #1656
  • Fix domain type and kind not being added for certain /api/domains calls by @DL6ER in #1659
  • Implement Query Log sorting (server-side pagination) by @DL6ER in #1660
  • Add error reporting during webserver initialization by @DL6ER in #1663
  • Add new config option webserver.api.searchAPIauth by @DL6ER in #1662
  • Add error pages support and extended webserver debugging option by @DL6ER in #1664
  • Run gravity parseList without regex by @DL6ER in #1667
  • Skip empty elements in config arrays both when reading and writing by @DL6ER in #1669
  • Initialize mbedtls with default instead of SuiteB presets by @DL6ER in #1670
  • Add /admin -> /admin/ redirect handler by @DL6ER in #1668
  • Add number of matches into /api/search/{domain} results by @DL6ER in #1665
  • Add support for sorting Query Log by reply time by @DL6ER in #1671
  • Update ftl-build containers by @DL6ER in #1673
  • Minor integrated docs changes by @DL6ER in #1666
  • Fix a few API config issues by @DL6ER in #1672
  • Update embedded dnsmasq by @DL6ER in #1675
  • Add wildcard support for the server-side Query Log by @DL6ER in #1678
  • Add SAN field into self-generated certificates by @DL6ER in #1674
  • Add environmental variables support by @DL6ER in #1679
  • Fix regression of #1667 by @DL6ER in #1680
  • Remove tests/builds on Debian builders by @yubiuser in #1681
  • Fix possible heap overflow by @DL6ER in #1683
  • Ensure database upgrades use transactions by @DL6ER in #1682
  • Restart FTL when reducing the privacy level by @DL6ER in #1677
  • Include number of active clients in summary by @DL6ER in #1688
  • Allow both commas and semicolons for separating array env var entries by @DL6ER in #1690
  • Minor speedup for parseList (pedal to the metal) by @DL6ER in #1687
  • Explicitly chown all rotated files by @DL6ER in #1691
  • Retry failed FTL builds by @DL6ER in #1696
  • Use UPSERT instead of special REPLACE INTO statements to update exist… by @DL6ER in #1695
  • Add ability to specify domains, lists, clients and group names as arrays by @DL6ER in #1629
  • Config items set via environment variables are read-only by @DL6ER in #1693
  • PUT/DELETE /api/config fixes by @DL6ER in #1698
  • Fix API GET /api/auth documentation by @DL6ER in #1700
  • Backup and restore API sessions to/from database by @DL6ER in #1689
  • Fix setting empty password by @DL6ER in #1702
  • Env var arrays are ;-delimited by @DL6ER in #1707
  • PUT and DELETE on forced config items are errors by @DL6ER in #1706
  • Clarify comment on setupVars.conf file by @DL6ER in #1708
  • Add app password support by @DL6ER in #1705
  • Improve query table parsing warnings by @DL6ER in #1711
  • Update embedded tre-regex engine by @DL6ER in #1714
  • API tests: Implement deep-recursion of arrays by @DL6ER in #1713
  • Ensure %used is 0.0 if no swap is used by @DL6ER in #1717
  • Remove left-over debug output by @DL6ER in #1720
  • /api/search/{domain}: Add IDN compatibility by @DL6ER in #1715
  • Update embedded SQLite3 engine to version 3.44.0 by @DL6ER in #1721
  • Update Error Message Referring to "Adlist" by @NittanySeaLion in #1716
  • Remove traces of reboot and poweroff by @yubiuser in #1722
  • Only use IPv6 in the webserver when available by @DL6ER in #1725
  • API tests: Use /api/endpoints by @DL6ER in #1724
  • Use webserver.domain as "account" in the TOTP QR code by @DL6ER in #1730
  • Suggest sudo for pihole-FTL --config changes by @DL6ER in #1740
  • Fix free() being used in the wrong page by @DL6ER in #1742
  • NULL after free() by @DL6ER in #1743
  • Changing dns.hosts does not need a restart by @DL6ER in #1732
  • Always return full overTime data by @DL6ER in #1736
  • Run codespell on push by @DL6ER in #1745
  • Add X.509 parsing capabilities by @DL6ER in #1744
  • Make number of maximum concurrent API sessions adjustable by @DL6ER in #1733
  • Create dynamic validity period when generating X.509 certificate by @DL6ER in #1747
  • Fix domain modification by @DL6ER in #1735
  • Make inclusion of /etc/dnsmasq.d/*.conf files configurable by @DL6ER in #1734
  • Add "requires restart" for config items where it is missing by @DL6ER in #1749
  • Fix hint of dns.cnameRecords by @DL6ER in #1750
  • Improve readability of dnsmasq.conf by adding blank lines to group similar settings by @yubiuser in #1751
  • Move dhcp.domain -> dns.domain by @DL6ER in #1739
  • Remove additonal spaces in dnsmasq.conf by @yubiuser in #1755
  • Use hostsdir for custom.list to avoid cache flushing on changes by @DL6ER in #1754
  • (Re-)Allow TLD blocking using ABP style by @DL6ER in #1756
  • Declare pihole.toml as UTF-8 document by @DL6ER in #1727
  • Prevent unconditional free on error reporting by @DL6ER in #1759
  • Improve DHCP handling by @DL6ER in #1731
  • Do not rewrite config files if unchanged by @DL6ER in #1746
  • Fix group comments by @DL6ER in #1763
  • Set CivetWeb authentication_domain by @DL6ER in #1764
  • Validate domains before adding them to the database via /api/list by @DL6ER in #1761
  • Switch from libidn to libidn2 to get IDNA2008 support by @DL6ER in #1765
  • Only log how many sessions have been restored by @yubiuser in #1770
  • Fix possible crash when importing legacy DHCP config by @DL6ER in #1767
  • /api/client: Include hostnames of clients specified by MAC by @DL6ER in #1771
  • Only log number of stored sessions not total number by @yubiuser in #1774
  • Update embedded SQLite3 engine to version 3.44.1 by @DL6ER in #1776
  • Inotify: Watch for config file MOVED_TO by @DL6ER in #1775
  • Log successful processing of pihole.toml on startup by @yubiuser in #1772
  • Try to restore broken pihole.toml from rotated files by @DL6ER in #1738
  • Include PID in /api/logs by @DL6ER in #1780
  • Only reload pihole.toml if changed by @DL6ER in #1778
  • API: Clients without queries should not be included by @DL6ER in #1781
  • Increase default value of webserver.session.timeout to 30 min by @DL6ER in #1789
  • Minor config comment fix by @DL6ER in #1791
  • Remove deprecated dhcp.domain setting by @DL6ER in #1790
  • Implement wildcard X.509 SAN/CN (subject) domain checking by @DL6ER in #1782
  • Update embedded SQLite3 engine to version 3.44.2 by @DL6ER in #1787
  • Fix link from message table to list table by @yubiuser in #1792
  • Disable cache optimizer for any negative TTL by @DL6ER in #1788
  • Recycle memory to reduce footprint by @DL6ER in #1694
  • Add missing bits to the .gitignore file by @DL6ER in #1794
  • Add CHAOS TXT api.ftl records by @DL6ER in #1793
  • Escape invalid domains possibly containing control characters by @DL6ER in #1784
  • Remove CH TXT privacylevel.pihole entry by @DL6ER in #1795
  • Improve FTL's file comparsion algorithm by @DL6ER in #1785
  • Never recycle alias-clients by @DL6ER in #1799
  • Add new config option misc.extraLogging by @DL6ER in #1798
  • Add priority string in logs (if applicable) by @DL6ER in #1800
  • Fix extra logging feature by @DL6ER in #1801
  • Do not start webserver if webserver.port is empty by @DL6ER in #1805
  • Fix CPU utilization calculation on 32 bit systems by @DL6ER in #1804
  • Add config option files.gravity_tmp by @DL6ER in #1796
  • Use regex_id instead of regex.id for query log sorting by @yubiuser in #1811
  • Update node version to 20 by @yubiuser in #1816
  • Add pihole-FTL sqlite3 -ni ... by @DL6ER in #1819
  • A few (actually many) small changes by @DL6ER in #1821
  • Add soc_thermal as CPU temperature sensor by @DL6ER in #1823
  • Implement special domains allowing by @DL6ER in #1807
  • Do not pin SID to a specific IP address by @DL6ER in #1786
  • Implement special POST :batchDelete callbacks by @DL6ER in #1810
  • Update cJSON by @DL6ER in #1843
  • Do not overwrite errors on ROLLBACK by @DL6ER in #1842
  • Simplify artifacts download by @yubiuser in #1848
  • Implement DNS cache recycling by @DL6ER in #1840
  • Fix POST \dns\blocking request documentation by @akordowski in #1846
  • Use WAL, remove (and strip) SQLite3 shared-cache support and improve attached database handling by @DL6ER in #1806
  • Add support for legacy Teleporter archives by @DL6ER in #1766
  • Fix one-of definition in clients, domains, groups, and lists POST by @DL6ER in #1835
  • Only include as many domains as we have in the sorted array by @DL6ER in #1813
  • Add Location header for newly created groups/clients/domains/lists by @DL6ER in #1851
  • Add authentication via query string by @DL6ER in #1728
  • Don't print double newlines after invalid domains by @yubiuser in #1854
  • Fix DELETE API endpoints return codes by @DL6ER in #1836
  • If someone terminates FTL, try to obtain who is the murderer and log it by @DL6ER in #1839
  • Managing DHCP leases is only possible when the DHCP server is enabled by @DL6ER in #1703
  • Update ftl-build container to v2.5 by @DL6ER in #1831
  • Remove obsolet local.list by @yubiuser in #1752
  • Update embedded SQLite3 to 3.45.0 by @DL6ER in #1858
  • Return null as version in /api/info/version if not available by @DL6ER in #1859
  • Limit number of clients returned by /api/history/clients by @DL6ER in #1832
  • Add regex filtering support for domains on the Query Log by @DL6ER in #1611
  • X.509: Create and export CA certificate by @DL6ER in #1860
  • Amend description of expiration field in GET /dhcp/leases by @DL6ER in #1864
  • Improve and fix host name resolution by @DL6ER in #1826
  • Fix failure to build from source by @mbooth101 in #1871
  • Update embedded SQLite3 to 3.45.1 by @DL6ER in #1869
  • Make adlist ID available, rename queries.regex_id -> queries.list_id by @DL6ER in #1841
  • Fix failed auto-merge in #1841 by @DL6ER in #1876
  • DNSSEC validation should not be enabled by default in v6 by @DL6ER in #1877
  • Check all env vars and suggest alternatives for misspelled keys by @DL6ER in #1719
  • Fix debug.api config options description. by @DL6ER in #1878
  • Add support for multiple reverse servers by @DL6ER in #1797
  • Update embedded dnsmasq to v2.90 by @DL6ER in #1875
  • Improve description of GET /auth/app endpoint by @DL6ER in #1887
  • Fix spurious "resource limit exceeded" messages by @DL6ER in #1892
  • Allow adlist duplicates by @DL6ER in #1886
  • Make WAL mode for pihole-FTL.db optional by @DL6ER in #1868
  • Improve config migration logging by @DL6ER in #1891
  • Update config.c fix typo 5335 instead of 5353 by @bungh0l10 in #1899
  • Fix revServer importing from former setupVars.conf by @DL6ER in #1901
  • Add additional config validation by @DL6ER in #1773
  • Add missing validator for database.useWAL by @DL6ER in #1907
  • Add searching for domains and clients in the Query Log by @DL6ER in #1908
  • Demote hwmon warning log to debug by @PromoFaux in #1909
  • Allow upper case letters in domains/hosts by @PromoFaux in #1910
  • Ensure env vars survive restart by @DL6ER in #1911
  • Tweak API history endpoint and fix cached counting by @DL6ER in #1884
  • Remove config option database.DBexport by @DL6ER in #1872
  • Add new dhcp.logging option by @DL6ER in #1918
  • Report the hex-code of the found invalid character by @DL6ER in #1917
  • Update embedded SQLite3 to 3.45.2 by @DL6ER in #1916
  • Fix a left-over "whitelisted" instead of "allowed" message in debug mode by @DL6ER in #1921
  • Slightly simplify the CI tests by @DL6ER in #1924
  • Fix antigravity not preventing further checks on queries by @DL6ER in #1923
  • Allow one-character TLDs in hostname validation by @DL6ER in #1922
  • Ensure thread-safety for cJSON engine by @DL6ER in #1919
  • Implement selective Teleporter restoring by @DL6ER in #1874
  • Be more verbose in which tables are imported during teleporter importing by @DL6ER in #1931
  • Fix disk space checking on macOS hosts by @DL6ER in #1928
  • Update embedded SQLite3 to 3.45.3 by @DL6ER in #1934
  • Add extra logging around network issues (EDE: network error) by @DL6ER in #1930
  • Fix a crash resulting from a bad interaction between PRs #1928 and #1930 by @DL6ER in #1936
  • Provide human-readable message for session status by @DL6ER in #1939
  • Improve error logging when TCP connections are prematurely closed by remote server by @DL6ER in #1945
  • Improve API /clients documentation by @DL6ER in #1944
  • Merge latest v5 development into v6 by @DL6ER in #1953
  • Change database permissions to -rw-r----- (640) by @DL6ER in #1955
  • Update bundled cJSON by @DL6ER in #1959
  • Fix spilled queries in database by @DL6ER in #1960
  • Fix error message mentioning wrong file by @jacklul in #1961
  • Readline detection by @oliv3r in #1956
  • Add artifact attestation by @DL6ER in #1964
  • Update DNS records after pruning DHCP leases by @DL6ER in #1965
  • Fix compiling without mbedTLS by @DL6ER in #1969
  • Ensure we also change ownership of the WAL database files by @DL6ER in #1970
  • Fix chown of aux. database files by @DL6ER in #1973
  • Update embedded SQLite3 to 3.46.0 by @DL6ER in #1974
  • Add Clang compiler support and update project to C17 standard by @DL6ER in #1962
  • Reset config values after env forcing by @DL6ER in #1979
  • Improve internal DNS resolver by @DL6ER in #1976
  • Read config files from new location by @DL6ER in #1737
  • Fix macvendor script by @DL6ER in #1983
  • Add option to ignore unknown DHCP clients by @DL6ER in #1980
  • Print human-readable timezone information by @DL6ER in #1981
  • Internal name resolution over UDP with fallback to TCP by @DL6ER in #1986
  • Fix incorrect unification of regex warnings by @DL6ER in #1989
  • Fix possible heap-corruption bug by @DL6ER in #1990
  • Skip certificate domain check when TLS is not actually used by @DL6ER in #1987
  • Remove (undocumented) advanced flag in details config output by @DL6ER in #1883
  • Fix non-existing gravity.db issue by @DL6ER in #1992
  • (Re-)Add support for Pogoplug by @DL6ER in #1993
  • Check if the newly set password is the same as the old one by @DL6ER in #1994
  • Fix API hint by @yubiuser in #1998
  • Fix DNS-SD query analysis by @DL6ER in #2000
  • Add read-only config option by @DL6ER in #1988
  • Update embedded LUA engine to 5.4.7 by @DL6ER in #2003
  • Add NTP-server/client implementation by @DL6ER in #1977
  • Limit app password permissions by @DL6ER in #1995
  • Add CLI password generation by @DL6ER in #1999
  • Fix compile problem with Pogoplug by @DL6ER in #2006
  • Show Unauthorized warnings only in debug mode by @DL6ER in #2005
  • Fix crash in arp-scan and dhcp-discover by @DL6ER in #2008
  • Fix rev-server crash by @DL6ER in #2010
  • Fix CI DNSSEC tests by @DL6ER in #2012
  • Improve NTP implementation by @DL6ER in #2004
  • Fix blocking timer by @DL6ER in #2011
  • Improve Query Log suggestions by @DL6ER in #2001
  • Self-contained DNSSEC CI tests by @DL6ER in #2014
  • Fix local domain and non-FQDN configuration by @DL6ER in #1900
  • Add netlink implementation by @DL6ER in #2009
  • memcheck improvements by @DL6ER in #2015
  • Fix termination in dnsmasq failure mode by @DL6ER in #2017
  • Add new 2024 DNS root trust anchor by @DL6ER in #2018
  • Improve reverse proxy handling by @DL6ER in #2016
  • Improve automatic PTR handling code by @DL6ER in #2019
  • Fix port 65535 for virtual cache and blocklist upstreams by @DL6ER in #2024
  • Improve network table code by @DL6ER in #2022
  • Improve pihole-FTL process concurrency by @DL6ER in #2025
  • Add new GET /api/padd endpoint by @yubiuser in #2026
  • Fix NTP synchronization on devices not knowing the NTP service type by @DL6ER in #2027
  • Update embedded SQLite3 engine to 3.46.1 by @DL6ER in #2031
  • Fix Top Clients table by @DL6ER in #2032
  • Update embedded CivetWeb server by @DL6ER in #2033
  • Improve incomplete installations support by @DL6ER in #2036
  • Allow other FTL process inside docker by @DL6ER in #2037
  • Fix possible double-free and avoid memory leaking by @DL6ER in #2043
  • Implement DNS caching for queries blocked upstream by @DL6ER in #2030
  • Use ftl-build:v2.7 builder for Actions by @DL6ER in #2046
  • Restart FTL on change of webserver.api.cli_pw by @DL6ER in #2041
  • Add GET /api/stats/summary -> .gravity.last_update by @DL6ER in #2048
  • Fix CPU % calculation by @DL6ER in #2047
  • Remove appending ?target=... when redirecting to login page by @DL6ER in #2049
  • Make v5 -> v6 migration verbose by @DL6ER in #2042
  • Migrate legacy files into /etc/pihole/migration_backup_v6 by @DL6ER in #2055
  • Add queries per second (QPS) metric by @DL6ER in #2054
  • Fix possible crash due to incorrect setupVars.conf import by @DL6ER in #2059
  • Ensure v6 imports CNAME records when reading v5 archives by @DL6ER in #2057
  • Check and create v6 migration directory if not exists by @DL6ER in #2061
  • Improve EDNS handling by @DL6ER in #2062
  • Fix gzip help text by @DL6ER in #2060
  • Move debug message behind debug flag by @DL6ER in #2064
  • Add CodeQL by @yubiuser in #2063
  • Fix various CodeQL complaints by @DL6ER in #2065
  • Prettify BATS output by @yubiuser in #2044
  • Fix Civetweb Lua error reporting issue by @DL6ER in #2070
  • Tweak DB counter update by @DL6ER in #2067
  • Disentangle info/ftl database domain numbers by @DL6ER in #2071
  • Fix incorrect page count on some Query Log shortcuts by @DL6ER in #2074
  • Restart FTL to enforce flushing the cache when dns.piholePTR is changed by @DL6ER in #2073
  • Verify FTL binary integrity by @DL6ER in #2072
  • Improve QPS calculation by @DL6ER in #2076
  • Print size of database / count of removed rows only in debug mode by @DL6ER in #2080
  • Do not try to access vector items if (re)allocation failed by @DL6ER in #2081
  • Fix compilation support on Ubuntu 24.04.1 LTS by @DL6ER in #2082
  • Update rapidoc and highlight by @yubiuser in #2075
  • Amend help text to database.maxDBdays by @yubiuser in #2083
  • Fix external block detection on NXDOMAIN replies from authoritative upstreams by @kaechele in #2087
  • Fix Github Actions if statement by @DL6ER in #2088
  • Do not run deployment steps if a PR is coming from a fork (from fork) by @DL6ER in #2089
  • Don't set RTC time by default by @DL6ER in #2090
  • Use new ftl-build:v2.9 by @DL6ER in #2091
  • Lookup tables (binary search) by @DL6ER in #2084
  • Update embedded SQLite to 3.47.0 by @DL6ER in #2094
  • Update --gen-x509 help text by @DL6ER in #2096
  • Improve insertion of clients, domains and DNS cache records by @DL6ER in #2095
  • Add new sqlite3_rsync tool by @DL6ER in #2099
  • Improve network table error handling by @DL6ER in #2097
  • API /client/_suggestions should only return unconfigured clients by @DL6ER in #2100
  • Amend the help text of the TLS certificate by @yubiuser in #2098
  • Fix binary verification with modern cmake by @DL6ER in #2102
  • Slightly optimize the binary search algorithm by @DL6ER in #2105
  • Improve build.sh script by @DL6ER in #2104
  • Upstream lookups should always check for the magic byte while searching by @DL6ER in #2109
  • Fix netlink message length by @DL6ER in #2108
  • Improve error messages logged within internal name resolver by @DL6ER in #2110
  • Changes the dns.domain validation to accept an empty string as value by @rdwebdesign in #2113
  • Make optional in dns.revServer by @DL6ER in #2116
  • Ensure we close netlink sockets by @DL6ER in #2117
  • Fix fork shared memory access by @DL6ER in #2121
  • Enable debug mode when debugger is detected by @DL6ER in #2120
  • Update embedded SQLite3 to 3.47.1 by @DL6ER in #2123
  • Dynamically lower the GC interval by @DL6ER in #2127
  • Remove duplicated code and silence a harmless warning by @DL6ER in #2131
  • Update embedded SQLite3 to 3.47.2 by @DL6ER in #2132
  • GCC 14.2.0 support by @DL6ER in #2133
  • Update embedded dnsmasq to latest tag v2.91test2 by @DL6ER in #2136
  • Add 'o' webserver port documentation by @DL6ER in #2137
  • Expose EDE information via API if available by @DL6ER in #2135
  • Fix crash on multiple replies by @DL6ER in #2141
  • Get latest dnsmasq patches by @DL6ER in #2142
  • Allow spaces also in PUT /api/groups by @DL6ER in #2143
  • Fix leap year check by @catch-error in #2144
  • Sync dnsmasq with upstream by @DL6ER in #2146
  • Make maximum number of threads used by web server configurable by @DL6ER in #2147
  • CI: Remove NTP test by @DL6ER in #2148
  • Harden dnsmasq syntax checking against signals by @DL6ER in #2151
  • Allow .ssh directory to be mounted on MacOS host by @PromoFaux in #2152
  • Prevent calling strcmp with NULL pointer by @catch-error in #2150
  • Fix file ownership after pihole-FTL --config as root by @catch-error in #2145
  • Update dnsmasq to v2.91test6 by @DL6ER in #2155
  • Add new explicit migration command by @DL6ER in #2139
  • Delay IPv6 client name lookups by @DL6ER in #2130
  • Use different tag for self-hosted runners by @DL6ER in #2159
  • Make webserver ports optional by default by @DL6ER in #2138
  • Fix possible turnaround overflow by @DL6ER in #2158
  • Tweak NTP error reporting by @DL6ER in #2125
  • Update embedded CivetWeb by @DL6ER in #2160
  • Update dnsmasq to latest v2.91test7 by @DL6ER in #2161
  • Avoid endless spinning in UDP->TCP path by @DL6ER in #2157
  • Update SQLite3 to 3.48.0 released earlier today by @DL6ER in #2162
  • Remove surplus SHM unlocking in IPv6 name resolution deceleration code by @DL6ER in #2163
  • Use arm64 machines provided by GHA by @DL6ER in #2164
  • Update embedded dnsmasq to v2.91test8 by @DL6ER in #2165
  • Update dnsmasq to v2.91test9 by @DL6ER in #2166
  • Add new GRAVITY_RESTORED_MESSAGE message type by @DL6ER in #2122
  • Netlink tweaks by @DL6ER in #2168
  • Add DHCPv6 probing to dhcp-discover tool by @DL6ER in #2128
  • Fix incorrect reply classification by @DL6ER in #2171
  • Improve FTL connection error logging by @DL6ER in #2170
  • Restore static DHCP leases from v5 tar.gz Teleporter archives by @DL6ER in #2174
  • Update dnsmasq to 2.91test10 by @DL6ER in #2173
  • Fix blocked upstream (IP) handling by @DL6ER in #2176
  • Change date_updated only when content changed by @DL6ER in #2172
  • Update dnsmasq to 2.91rc2 by @DL6ER in #2179
  • Update embedded SQLite3 to 3.49.0 by @DL6ER in #2181
  • Update dnsmasq to 2.91rc3 by @DL6ER in #2182
  • Update dnsmasq to 2.91rc4 by @DL6ER in #2185
  • Fix duplicate process detection by @DL6ER in #2184
  • Add proper timeout handling to dhcp-dicsover feature by @DL6ER in #2186
  • Update embedded dnsmasq by @DL6ER in #2187
  • Update embedded SQLite3 to 3.49.1 by @DL6ER in #2188
  • Pi-hole FTL v6.0 by @PromoFaux in #2153

New Contributors

Full Changelog: v5.25.2...v6.0

Don't miss a new FTL release

NewReleases is sending notifications on new releases.