You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- EAGAIN => unreachable, // This function is for blocking writes.+ EAGAIN => if (std.event.Loop.instance) |loop| {+ loop.waitUntilFdWritable(fd);+ continue;+ } else {+ return error.WouldBlock;+ },
And then fix everything that breaks. This involves changes to std.io.OutStream, and unfortunately std.fmt.format. I was going to do this change as part of the std.net branch (#3538) but it got tricky, so I'm opening a separate issue for it.
The text was updated successfully, but these errors were encountered:
* delete the std/event/net directory
* `std.event.Loop.waitUntilFdReadable` and related functions
no longer have possibility of failure. On Linux, they fall
back to poll() and then fall back to sleep().
* add some missing `noasync` decorations in `std.event.Loop`
* redo the `std.net.Server` API. it's quite nice now, but
shutdown does not work cleanly. There is a race condition with
close() that I am actively working on.
* move `std.io.OutStream` to its own file to match `std.io.InStream`.
I started working on making `write` integrated with evented I/O,
but it got tricky so I backed off and filed #3557. However
I did integrate `std.os.writev` and `std.os.pwritev` with evented I/O.
* add `std.Target.stack_align`
* move networking tests to `lib/std/net/test.zig`
* add `std.net.tcpConnectToHost` and `std.net.tcpConnectToAddress`.
* rename `error.UnknownName` to `error.UnknownHostName` within the
context of DNS resolution.
* add `std.os.readv`, which is integrated with evented I/O.
* `std.os.preadv`, is now integrated with evented I/O.
* `std.os.accept4` now asserts that ENOTSOCK and EOPNOTSUPP never
occur (misuse of API), instead of returning errors.
* `std.os.connect` is now integrated with evented I/O.
`std.os.connect_async` is gone. Just use `std.os.connect`.
* fix false positive dependency loop regarding async function frames
* add more compile notes to help when dependency loops occur
in determining whether a function is async.
* ir: change an assert to ir_assert to make it easier to find
workarounds for when such an assert is triggered. In this case
it was trying to parse an IPv4 address at comptime.
Well this opens a can of worms. I went down the rabbit hole attempting this by converting out_stream and std.fmt and hit #3157 where the thread's startFn async but can't be because it's an extern.
The main change to do is:
And then fix everything that breaks. This involves changes to
std.io.OutStream
, and unfortunatelystd.fmt.format
. I was going to do this change as part of the std.net branch (#3538) but it got tricky, so I'm opening a separate issue for it.The text was updated successfully, but these errors were encountered: