Das Rust-Team hat Version 1.78.0 der Programmiersprache angekündigt. Die neue stabile Ausgabe bringt neue Attribute und Verbesserungen mit.
Rust unterstützt jetzt laut der Ankündigung einen #[diagnostic] Attribut-Namensraum für Compiler-Fehlermeldungen. Diese werden als Hinweise behandelt, die der Compiler nicht verwenden müsse, und es sei auch kein Fehler, eine Diagnose anzugeben, die der Compiler nicht erkenne. Der Vorteil dieser Flexibilität sei, dass der Quellcode auch dann Diagnosen bereitstellen könne, wenn sie nicht von allen Compilern unterstützt werden, unabhängig davon, ob es sich um unterschiedliche Versionen oder völlig unterschiedliche Implementierungen handle, heißt es weiter. Die Referenzen zum Diagnose-Attribut nennen alle Details.
Die Rust-Standardbibliothek hat eine Reihe von Assertions für die Vorbedingungen von Funktionen für unsafe. Die seien aber historisch gesehen nur in #[cfg(debug_assertions)] Builds der Standardbibliothek aktiviert, um die Release-Performance nicht zu beeinflussen. Da die Standardbibliothek jedoch normalerweise im Release-Mode kompiliert und verteilt werde, hätten die meisten Rust-Entwickler diese Überprüfungen überhaupt nicht durchgeführt. Jetzt verzögere man die Bedingung für diese Assertions bis zur Codegenerierung, so dass sie abhängig von der eigenen Einstellung des Benutzers für Debug-Assertions geprüft werde. Diese Änderung helfe Benutzern, undefiniertes Verhalten in ihrem Code zu erkennen, teilen die Entwickler mit.
In den Release Notes sind die Neuerungen und Änderungen ausführlich dokumentiert.



