Replace use of the libc crate with the rustix crate #521
Labels
accepting contributions
Issues that are suitable to be worked on by anybody, not just maintainers
feature
New things to add to Inko, such as a new standard library module
runtime
Changes related to the Rust-based runtime library
Milestone
Description
#508 introduces a native code compiler uses LLVM, replacing the bytecode interpreter. As part of this work we've dropped Windows support, as it's simply not sustainable for us to support.
For network IO we use the polling crate. Currently this crate uses libc on Unix platforms, but is switching to using rustix (see smol-rs/polling#108).
In the interest of reducing third-party dependencies and maintaining control over our code, I would not only like to restore our old polling code in favour of the "polling" crate (#344), but also switch to using rustix. The benefit of using rustix is that at least on Linux we can avoid libc calls. While this may result in a performance improvement, it's really more about slowly reducing our dependencies on third-party libraries, including libc. The API might also be a bit more pleasant to use compared to using the libc crate directly.
Related work
smol-rs/polling#108
The text was updated successfully, but these errors were encountered: