Andrew Kelley
47aa5a70a5
std: updating to std.Io interface
...
got the build runner compiling
2025-10-29 06:20:48 -07:00
Andrew Kelley
066864a0bf
std.zig.system: upgrade to std.Io.Reader
2025-10-29 06:20:48 -07:00
Andrew Kelley
b428612a20
WIP: hack away at std.Io return flight
2025-10-29 06:20:48 -07:00
Andrew Kelley
774df26835
WIP: hack at std.Io on a plane
2025-10-29 06:20:48 -07:00
Andrew Kelley
62d0dd0d36
std.Io.Threaded.netReceive: recvmsg first, then poll
...
Calling recvmsg first means no poll syscall needed when messages are
already in the operating system queue. Empirically, this happens when
repeating a DNS query that has been already been made recently. In such
case, poll() is never called!
2025-10-29 06:20:48 -07:00
Andrew Kelley
a6347a68a9
std.Io.net: implement receiving connectionless messages
2025-10-29 06:20:48 -07:00
Andrew Kelley
95dee2af9c
std.Io: implement netSend
2025-10-29 06:20:48 -07:00
Andrew Kelley
cde5a51d0c
std.Io.net: make netSend support multiple messages
...
this lowers to sendmmsg on linux, and means Io.Group is no longer
needed, resulting in a more efficient implementation.
2025-10-29 06:20:48 -07:00
Andrew Kelley
b22400271f
std.Io.net.HostName: finish implementing DNS lookup
2025-10-29 06:20:48 -07:00
Andrew Kelley
2e1ab5d3f7
std.Io.Threaded: implement Group.cancel
2025-10-29 06:20:48 -07:00
Andrew Kelley
8e1da66ba1
std.Io: implement Group API
2025-10-29 06:20:48 -07:00
Andrew Kelley
f9d976a4e1
std.Io: rename asyncConcurrent to concurrent
2025-10-29 06:20:48 -07:00
Andrew Kelley
60c4bdb14c
Io.net: implement more networking
...
the next task is now implementing Io.Group
2025-10-29 06:20:48 -07:00
Andrew Kelley
e7c9df9fb0
Io.net: use resolve for IPv6
...
/etc/resolv.conf might have IPv6 addresses with scope in it, so this is
needed.
2025-10-29 06:20:48 -07:00
Andrew Kelley
d776a6bbbe
Io.net: rework IPv6 parsing and printing
...
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 06:20:48 -07:00
Andrew Kelley
5089352b86
std.Io: rename ThreadPool to Threaded
2025-10-29 06:20:48 -07:00