What's Changed (Docker Specific)
- Add pihole-FTL bash completion by @yubiuser in #1880
- Use FTL's build-in wait-for command for checking the logs by @yubiuser in #1898
Full Changelog: 2025.08.0...2025.10.0
Release notes for other components
FTL v6.3
What's Changed
- Tests - fix PTR test by @rrobgill in pi-hole/FTL#2516
- Reply to address queries in .localhost domain (RFC6171) by @rrobgill in pi-hole/FTL#2517
- dhcp-discover: Fix string processing by @rrobgill in pi-hole/FTL#2519
- [RFC] Prevent .internal queries from being upstreamed. Draft draft-davies-internal-tld-03 by @Tooa in pi-hole/FTL#2474
- Add dns.localise by @Manakuremati in pi-hole/FTL#2524
- Webserver: Allow webhome to be root by @rrobgill in pi-hole/FTL#2521
- api/network Avoid NULL string comparison logspam by @rrobgill in pi-hole/FTL#2526
- request_info.is_authenticated needs to be initialized explicitly with… by @DL6ER in pi-hole/FTL#2533
- Allow forcing color in CLI output by @DL6ER in pi-hole/FTL#2538
- Simplify CI build by removing the composite action by @yubiuser in pi-hole/FTL#2511
- Rename flushing arp > flushing network by @yubiuser in pi-hole/FTL#2541
- Update embedded SQLite3 engine to 3.50.2 by @DL6ER in pi-hole/FTL#2544
- Add
pihole-FTL create-default-configoption and use it to uploadpihole.tomltoftl.pi-hole.netby @yubiuser in pi-hole/FTL#2540 - Allow low-level header manipulation from Lua pages by @DL6ER in pi-hole/FTL#2535
- Fix foreign fork PRs by @DL6ER in pi-hole/FTL#2543
- Update package-lock.json to fix npm vuln by @XhmikosR in pi-hole/FTL#2555
- Update rapidoc to v9.3.8 by @XhmikosR in pi-hole/FTL#2556
- Add missing 'took' fields to API spec response examples by @tsutsu3 in pi-hole/FTL#2466
- Remove domain type from domainNeeded help text by @yubiuser in pi-hole/FTL#2564
- Update embedded dnsmasq to v2.92test16 by @DL6ER in pi-hole/FTL#2570
- Config typo correction by @rrobgill in pi-hole/FTL#2572
- Support IPv6 in the DHCP API by @DL6ER in pi-hole/FTL#2554
- Add sigrtmin option by @jacklul in pi-hole/FTL#2574
- NTP ipv6 crash fix - ntp reply & logging by @rrobgill in pi-hole/FTL#2569
- Add 'never-stale' to stale issue exempt lable list by @yubiuser in pi-hole/FTL#2578
- Upgrade TOML library to tomlc17 by @DL6ER in pi-hole/FTL#2579
- Add warning to the config markdown by @yubiuser in pi-hole/FTL#2580
- Automatically detect DNS interface when empty in pihole.toml by @DL6ER in pi-hole/FTL#2456
- Make type a required parameter for PUT and DELETE /lists by @DL6ER in pi-hole/FTL#2530
- Update embedded SQLite3 to 3.50.3 by @DL6ER in pi-hole/FTL#2576
- Remove remaining traces of ARP flush by @yubiuser in pi-hole/FTL#2545
- Improve CNAME behavior of pi.hole by @DL6ER in pi-hole/FTL#2585
- Add colors to the --config output by @DL6ER in pi-hole/FTL#2584
- fix: change type of disk parameter for GET /queries by @ninjack-dev in pi-hole/FTL#2589
- Improve default CSP headers by @DL6ER in pi-hole/FTL#2575
- Improve already running detection by @DL6ER in pi-hole/FTL#2591
- Update embedded SQLite3 to 3.50.4 by @DL6ER in pi-hole/FTL#2592
- Fix debug output association by @DL6ER in pi-hole/FTL#2594
- Fix FTL running behing reverse-proxy with prefix by @DL6ER in pi-hole/FTL#2595
- Update embedded dnsmasq by @DL6ER in pi-hole/FTL#2587
- Implement netlink ARP cache handling by @DL6ER in pi-hole/FTL#2600
- Add autocomplete feature by @DL6ER in pi-hole/FTL#2593
- Update embedded dnsmasq to v2.92test19 by @DL6ER in pi-hole/FTL#2603
- Fix
dns.interfacecomment by @rdwebdesign in pi-hole/FTL#2597 - Fix logic in automatic interface determination (when dns.interface = "") by @DL6ER in pi-hole/FTL#2607
- Fix default value autocomplete suggestions by @DL6ER in pi-hole/FTL#2609
- Update dnsmasq to v2.92test21 by @DL6ER in pi-hole/FTL#2614
- Fix cache-optimizer queries in Query Log by @DL6ER in pi-hole/FTL#2619
- Update embedded CivetWeb by @DL6ER in pi-hole/FTL#2621
- Do not set domainname when the kernel replies with "(none)" by @DL6ER in pi-hole/FTL#2620
- Fix
dns.hostshelp text to show multiple hostnames per IP are allowed by @rdwebdesign in pi-hole/FTL#2623 - Improve memory handling by @DL6ER in pi-hole/FTL#2617
- Pin github actions to SHA by @yubiuser in pi-hole/FTL#2615
- Bump the github_action-dependencies group across 1 directory with 6 updates by @dependabot[bot] in pi-hole/FTL#2628
- Be more gracefully when validating dns_hosts by @yubiuser in pi-hole/FTL#2624
- Implement automatic TLS/SSL certificate renewals by @DL6ER in pi-hole/FTL#2463
- Fix HOSTS file rotation test which was hiding in fast runners by @yubiuser in pi-hole/FTL#2630
- Suggest IP addresses instead of names for upstream by @DL6ER in pi-hole/FTL#2444
- Make restarting optional in API config endpoints by @DL6ER in pi-hole/FTL#2632
- Ensure queries with ID 0 are stored to the long-term queries database by @DL6ER in pi-hole/FTL#2633
- Ensure we can log until the very end by @DL6ER in pi-hole/FTL#2634
- Bump github/codeql-action from 3.30.3 to 3.30.5 in the github_action-dependencies group across 1 directory by @dependabot[bot] in pi-hole/FTL#2636
- Fix long-term database insertion by @DL6ER in pi-hole/FTL#2583
- Add webserver.advancedOpts by @DL6ER in pi-hole/FTL#2635
- Add new dns.domain.local and rename dns.domain -> dns.domain.name by @DL6ER in pi-hole/FTL#2531
- Bump the github_action-dependencies group across 1 directory with 3 updates by @dependabot[bot] in pi-hole/FTL#2641
- Allow escaping special single-character wildcard "_" when doing partial matching by @DL6ER in pi-hole/FTL#2550
- Expose both total and enabled for gravity tables by @DL6ER in pi-hole/FTL#2177
- Improve gravity database resilience by @DL6ER in pi-hole/FTL#2605
- Add custom SQLite busy callback by @DL6ER in pi-hole/FTL#2602
- Add %MEM and %CPU of FTL to GET info/system by @DL6ER in pi-hole/FTL#2645
- Try to load system load averages from /proc/loadavg first by @tpjanssen in pi-hole/FTL#2644
- Fix database busy handler initialization by @DL6ER in pi-hole/FTL#2646
- Fix POST /lists example by @DL6ER in pi-hole/FTL#2649
- Improve CPU utilization reporting by @DL6ER in pi-hole/FTL#2647
New Contributors
- @Tooa made their first contribution in pi-hole/FTL#2474
- @Manakuremati made their first contribution in pi-hole/FTL#2524
- @ninjack-dev made their first contribution in pi-hole/FTL#2589
- @tpjanssen made their first contribution in pi-hole/FTL#2644
Full Changelog: pi-hole/FTL@v6.2.3...v6.3
Core v6.2
What's Changed
- Remove
readonlyfrom list.sh to avoid errors by @rdwebdesign in pi-hole/pi-hole#6349 - Remove netcat from the list of dependencies by @darkexplosiveqwx in pi-hole/pi-hole#6343
- Re-order authentication errors in verbose mode by @yubiuser in pi-hole/pi-hole#6338
- Speed up pihole --query by @rrobgill in pi-hole/pi-hole#6334
- Use RTMIN value provided by FTL when possible by @jacklul in pi-hole/pi-hole#6358
- Speed up
pihole apiby @rrobgill in pi-hole/pi-hole#6336 - Update man page - remove "reconfigure" option by @rdwebdesign in pi-hole/pi-hole#6361
- Tweak ARP flushing function by @yubiuser in pi-hole/pi-hole#6319
- Fix gravity and error on pihole-FTL --config failures by @yubiuser in pi-hole/pi-hole#6352
- Use 'true'/'false' strings instead of 0/1 integers for boolean root user check in pihole command by @yubiuser in pi-hole/pi-hole#6351
- Do not call pihole-FTL --config interactively by @DL6ER in pi-hole/pi-hole#6368
- Explicitly check for the existence of FTL binary before attempting to stop it. Prevents warning message on fresh installs by @PromoFaux in pi-hole/pi-hole#6364
- Add "setpassword" to pihole Bash completion by @deHakkelaar in pi-hole/pi-hole#6369
- Add FTL bash autocomplete by @yubiuser in pi-hole/pi-hole#6376
- Alpine Linux Support and Tests by @mgziminsky in pi-hole/pi-hole#6275
- uninstall refactor and improvement by @rrobgill in pi-hole/pi-hole#6339
- Fix typo found during install by @jbirddog in pi-hole/pi-hole#6406
- Add Debian 13 Trixie to the test suite by @yubiuser in pi-hole/pi-hole#6382
- Adjust .shellcheckrc to 0.11 and enable some optional checks by @yubiuser in pi-hole/pi-hole#6374
- Use SHA to pin github actions by @yubiuser in pi-hole/pi-hole#6392
- Rename views, upgrade gravity database and bump gravity database version by @DL6ER in pi-hole/pi-hole#6386
New Contributors
- @mgziminsky made their first contribution in pi-hole/pi-hole#6275
- @jbirddog made their first contribution in pi-hole/pi-hole#6406
Full Changelog: pi-hole/pi-hole@v6.1.4...v6.2
Web v6.3
What's Changed
- Clarify client description priorities on the groups/client interface by @DL6ER in pi-hole/web#3521
- Remove superfluous settings-level-expert class by @yubiuser in pi-hole/web#3503
- Remove link to rate limit documentation which does not add further etails by @yubiuser in pi-hole/web#3526
- Add some color to gravity output by @yubiuser in pi-hole/web#3530
- settings-system : Avoid division by zero in DNS metrics by @rrobgill in pi-hole/web#3533
- Make the "Add to denied/allowed domains" buttons red and green by @darkexplosiveqwx in pi-hole/web#3551
- Remove query type from domainNeeded option by @yubiuser in pi-hole/web#3557
- Handle pie chart item style conditionally by @yubiuser in pi-hole/web#3532
- Use label-primary for number of enabled list icon on sidebar by @yubiuser in pi-hole/web#3563
- Use innerHTML instead of append to fix gravity color output by @yubiuser in pi-hole/web#3566
- Trim whitespaces before adding custom DNS record by @yubiuser in pi-hole/web#3569
- Bind address to new element instead of raw HTML construction by @DL6ER in pi-hole/web#3567
- Use /flush/network instead of /flush/arp by @yubiuser in pi-hole/web#3553
- Prevents getting stuck loading unlimited query log results by @ablankenship10 in pi-hole/web#3592
- Fix 2FA icon styles #3431 by @idotj in pi-hole/web#3585
- Fix header.lp closing head tag formatting by @h3xcat in pi-hole/web#3607
- Fix the link on the upstream chart legend by @rdwebdesign in pi-hole/web#3606
- Rename config key dns.domain > dns.domain.name by @yubiuser in pi-hole/web#3611
- Improve line graph tooltip by @yubiuser in pi-hole/web#3601
- Make DNSSEC icon conditional in Queries Log (redo of pi-hole/web#3399) by @yubiuser in pi-hole/web#3535
- Query Log: The underscore is special by @DL6ER in pi-hole/web#3578
- Fix addList function to include type in API request URL by @PromoFaux in pi-hole/web#3620
- Pin github action to SHA by @yubiuser in pi-hole/web#3593
- Adjust domain count according to pi-hole/FTL#2177 by @yubiuser in pi-hole/web#3619
- Also pin editorconfigchecker by sha by @yubiuser in pi-hole/web#3621
- Update FTL %cpu and %mem everytime total CPU stats are updated by @yubiuser in pi-hole/web#3622
New Contributors
- @darkexplosiveqwx made their first contribution in pi-hole/web#3551
- @ablankenship10 made their first contribution in pi-hole/web#3592
- @idotj made their first contribution in pi-hole/web#3585
- @h3xcat made their first contribution in pi-hole/web#3607
Full Changelog: pi-hole/web@v6.2.1...v6.3