27 Oct 2026
A # anywhere on a hosts file line now starts a comment
- What was broken
- In the hosts file, a comment written right after a name with no space turned into part of the name, so that name stopped working.
- What I changed
- Each line is now cut at its first #, as the hosts file rules say.
- Why it matters
- Names in hosts files with tight comments resolve the way they do in the rest of the system.
see the code, #861 ↗ (opens in a new tab)
27 Oct 2026
Time lengths are read the same way Go reads them
- What was broken
- The library says it reads time lengths like Go, but it refused forms Go accepts, like 0, .5s, +1s and the µs microsecond sign Go itself prints.
- What I changed
- These forms are now accepted, and everything that worked before gives the same result.
- Why it matters
- Settings written for Go programs, or printed by them, can be read without errors.
see the code, #860 ↗ (opens in a new tab)
23 Oct 2026
IP addresses are now read strictly, including IPv4 inside IPv6
- What was broken
- The address reader accepted broken addresses, like one with nine groups, and quietly turned them into something else. It also refused addresses like ::ffff:1.2.3.4, which the library itself prints for IPv4 connections on a dual-stack socket.
- What I changed
- I rewrote it to follow the IPv6 address standard and the usual rules for IPv4, so bad input is rejected and IPv4 inside IPv6 is read correctly.
- Why it matters
- Programs get an error for a bad address instead of connecting somewhere unexpected, and an address the library printed can always be read back.
see the code, #851 ↗ (opens in a new tab)
← every project