| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-11-19 | std.Io.net: disable `listen on a unix socket, send bytes, receive bytes` on ↵ | Alex Rønne Petersen | |
| Windows https://github.com/ziglang/zig/issues/25983 | |||
| 2025-11-13 | std.Io.net: fix off-by-one in HostName.expand | 0x4a61636f62 | |
| `HostName.expand` was including the null terminator in the slice passed to `HostName.init`, which caused `HostName.validate` to fail. | |||
| 2025-10-29 | std.Io: fix Group.wait unsoundness | Andrew Kelley | |
| Previously if a Group.wait was canceled, then a subsequent call to wait() or cancel() would trip an assertion in the synchronization code. | |||
| 2025-10-29 | std.Io.net.HostName: fix missing group cancel | Andrew Kelley | |
| 2025-10-29 | std.Io.net: skip testing netInterfaceNameResolve on Windows | Andrew Kelley | |
| let's handle this in a follow-up change. implementation needs to use ConvertInterfaceNameToLuidW and the additional dependency on Iphlpapi.dll poses some challenges. | |||
| 2025-10-29 | std.Io.Threaded: fix compilation failures on Windows | Andrew Kelley | |
| 2025-10-29 | std: fix compilation errors on Windows | Andrew Kelley | |
| 2025-10-29 | std.Io.net.HostName.ResolvConf: ignore nameservers above max | Andrew Kelley | |
| 2025-10-29 | std.Io.net.HostName: fix connectMany not running DNS async | Andrew Kelley | |
| 2025-10-29 | fix miscellaneous compilation failures | Andrew Kelley | |
| 2025-10-29 | std: move DNS record enum to a better namespace | Andrew Kelley | |
| 2025-10-29 | std.Io.Group: add cancellation support to "wait" | Andrew Kelley | |
| 2025-10-29 | std.Io.net.HostName.connect: fix resource leaks | Andrew Kelley | |
| Must free other succeeded connections that lost the race. | |||
| 2025-10-29 | std.net.HostName.connect: rework to avoid waiting for DNS | Andrew Kelley | |
| The previous implementation would eagerly attempt TCP connection upon receiving a DNS reply, but it would still wait for all the DNS results before returning from the function. This implementation returns immediately upon first successful TCP connection, canceling not only in-flight TCP connection attempts but also unfinished DNS queries. | |||
| 2025-10-29 | std.Io: implement Select | Andrew Kelley | |
| and finish implementation of HostName.connect | |||
| 2025-10-29 | std.Io.net.HostName: move lookup to the interface | Andrew Kelley | |
| Unfortunately this can't be implemented "above the vtable" because various operating systems don't provide low level DNS resolution primitives such as just putting the list of nameservers in a file. Without libc on Linux it works great though! Anyway this also changes the API to be based on Io.Queue. By using a large enough buffer, reusable code can be written that does not require concurrent, yet takes advantage of responding to DNS queries as they come in. I sketched out a new implementation of `HostName.connect` to demonstrate this, but it will require an additional API (`Io.Select`) to be implemented in a future commit. This commit also introduces "uncancelable" variants for mutex locking, waiting on a condition, and putting items into a queue. | |||
| 2025-10-29 | std.Io.Threaded: implement netListenUnix | Andrew Kelley | |
| 2025-10-29 | std.net: IPv6 parsing fixes | Andrew Kelley | |
| 2025-10-29 | std.Io.net.HostName: fix DNS resolution | Andrew Kelley | |
| * merge conflict with changing behavior of takeDelimiterExclusive * check bounds before adding to result array | |||
| 2025-10-29 | std.Io.net: fix parsing IPv4-mapped IPv6 addresses | Andrew Kelley | |
| 2025-10-29 | std.Io: add unix domain sockets API | Andrew Kelley | |
| note that "reuseaddr" does nothing for these | |||
| 2025-10-29 | std.Io: bring back Timestamp but also keep Clock.Timestamp | Andrew Kelley | |
| this feels better | |||
| 2025-10-29 | std: updating to std.Io interface | Andrew Kelley | |
| got the build runner compiling | |||
| 2025-10-29 | WIP: hack away at std.Io return flight | Andrew Kelley | |
| 2025-10-29 | WIP: hack at std.Io on a plane | Andrew Kelley | |
| 2025-10-29 | WIP land the std.Io interface | Andrew Kelley | |
| fix std lib compilation errors caused by introducing std.Io | |||
| 2025-10-29 | std.Io.net.HostName: implement DNS name expansion | Andrew Kelley | |
| 2025-10-29 | std.Io.net.HostName: implement DNS reply parsing | Andrew Kelley | |
| 2025-10-29 | std.Io.net: implement receiving connectionless messages | Andrew Kelley | |
| 2025-10-29 | std.Io: implement netSend | Andrew Kelley | |
| 2025-10-29 | std.Io.net: make netSend support multiple messages | Andrew Kelley | |
| this lowers to sendmmsg on linux, and means Io.Group is no longer needed, resulting in a more efficient implementation. | |||
| 2025-10-29 | std.Io.net.HostName: finish implementing DNS lookup | Andrew Kelley | |
| 2025-10-29 | std.Io: implement Group API | Andrew Kelley | |
| 2025-10-29 | Io.net: implement more networking | Andrew Kelley | |
| the next task is now implementing Io.Group | |||
| 2025-10-29 | std.Io.net: progress towards DNS resolution | Andrew Kelley | |
| 2025-10-29 | Io.net: finish implementing IPv6 parsing | Andrew Kelley | |
| 2025-10-29 | Io.net: use resolve for IPv6 | Andrew Kelley | |
| /etc/resolv.conf might have IPv6 addresses with scope in it, so this is needed. | |||
| 2025-10-29 | Io.net: rework IPv6 parsing and printing | Andrew Kelley | |
| extract pure functional logic into pure functions and then layer the scope crap on top properly the formatting code incorrectly didn't do the reverse operation (if_indextoname). fix that with some TODO panics | |||
| 2025-10-29 | std.Io: extract Dir to separate file | Andrew Kelley | |
| 2025-10-29 | Io.net: partial implementation of dns lookup | Andrew Kelley | |
