github.com/dtolnay/cxx

CXX — safe FFI between C++ and

This is great news for anyone needing to write bindings to call C++ libraries from Rust, and vice versa.

I'm now releasing an async crate which serves to enable copying and validating bytes from a single reader, to multiple writers concurrently. This will be used in the upcoming async rewrite of the Popsicle application.

github.com/pop-os/srmw

I finally got tired of having process exit status error handling boilerplate in all of our projects, so here's a crate that provides an `AsResult<T, E>` and `IntoResult<T, E>` trait, with a default impl for `ExitStatus` and `Output`.

github.com/pop-os/as-result

To all programmers on that want to use the kernel's new pidfd feature to asynchronously await on many child processes from the same thread -- reliably -- I've released the [pidfd] crate, which achieves precisely that.

Note, however, that Linux 5.3 is the minimum requirement to use this crate. Linux 5.4 is required to get the exit status from terminated processes (use the `waitid` feature).

Testing would be highly welcome!

[pidfd]: github.com/pop-os/pidfd

With the new async / await syntax in , working with futures is easier than ever.

This weekend, I've spent some time rewriting my `async-fetcher` crate with the new syntax. The result is more features, and better performance, at a fraction of the original amount of code.

The new rewrite now supports execution on current-thread runtimes, with optional support for speeding up downloads by using multiple connections to download the same file from multiple URLs.

Ex: github.com/pop-os/async-fetche

Fosstodon

Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.