(Wirklich) kurz notiert: Rust 1.39, die Sprache für alle, die "C++ schon durchgespielt haben", ist letzte Woche erschienen.
async und await
Die wohl interessante Änderung ist, dass das async-System langsam zur "Marktreife" gelangt. async und await sind insbesondere für die nebenläufige Programmierung interessant und werden für die Netzwerkprogrammierung intensiv eingesetzt. Konkret ist es nun möglich, Funktionen mit
async fn foo() {
}
zu definieren und diese dann mit .await
aufzurufen. Python-Entwickler sollten dieses Verhalten ebenfalls kennen.
Weitere Änderungen
Des Weiteren wurde das Verhalten beim Borrowing und Moving innerhalb von match-Blöcken geändert und (mein persönliches "Highlight") Parameter lassen sich mit Präprozessordirektiven-ähnlichen Attributen für konditionelle Programmierung so definieren, dass bestimmte Parameter einer Funktion z.B. nur auf Windows verfügbar sind.
Wie immer wurden darüber hinaus APIs "stabilisiert", d.h. Pinning und const fn (ähnl. zu constexpr in C++), welche in den letzten Rust-Versionen eingeführt wurden, halten weiter Einzug in die Standardbibliothek.
Happy programming!