seri.tools

Rust9x update: Rust 1.93.0-beta

You know the drill by now: Another year and 8-9 Rust versions later, it's time for a new Rust9x update!

Rust9x provides Windows downlevel support for the Rust standard library, bringing it to Windows 95, 98, ME, and most NT-based Windows versions. See the project wiki on Github: rust9x/rust.

What's new? #

  • Rebased and partially reimplemented all fallback code on-top of Rust 1.93-beta.
  • target_vendor is on the way to being deprecated. Rust9x now uses target_family = "rust9x", instead.
  • std::net::hostname has a fallback now
  • Process stdio piping has gained a second fallback implementation, now that the upstream version only works on Vista and later.
  • The compiler build configuration now sets lld = true, so rust-lld.exe is available. rust-lld doesn't prevent us from setting the subsystem and OS version to legacy values like modern link.exe versions do, so we can get rid of the post-build step that executed editbin.exe on built binaries. Check out the updated rust9x-sample for the new configuration.
  • (Back in 1.84 after the last blog post) Reimplemented the fileextd.lib fallbacks in Rust, giving us a near-complete std::fs implementation on Windows XP (and improved coverage for earlier NT-based systems).

Feel free to hit me up on Discord if you'd like to help out or just chat about Rust9x!