Veröffentlichung der Programmiersprache Rust 2024 (1.85)

Die vom Mozilla-Projekt entwickelte und jetzt unter der Schirmherrschaft der unabhängigen, gemeinnützigen Organisation Rust Foundation entwickelte Allzweck-Programmiersprache Rust 1.85 wurde veröffentlicht. Zusätzlich zur regulären Versionsnummer 1.85 trägt die Veröffentlichung die Bezeichnung Rust 2024, was die Stabilisierung der in den letzten drei Jahren vorgeschlagenen Änderungen markiert. Die Sprachversion „Rust 2024“ wird die Grundlage für Funktionserweiterungen der nächsten drei Jahre sein, ähnlich wie die Version Rust 2021 in den letzten drei Jahren die Grundlage für die Sprachentwicklung war.

Um die Kompatibilität aufrechtzuerhalten, können Entwickler in ihren Programmen die Bezeichnungen „2015“, „2018“, „2021“ und „2024“ verwenden, um ihre Programme an Ausschnitte des Sprachstatus zu binden, die ihren gewählten Rust-Editionen entsprechen. Editionen wurden eingeführt, um inkompatible Änderungen zu trennen und werden in den Metadaten des Cargo-Pakets über das Feld „Edition“ im Abschnitt „[Paket]“ konfiguriert.

Beispielsweise enthält die Ausgabe 2021 die zum Ende des Jahres 2021 stabilisierte Funktionalität und deckt alle weiteren Änderungen ab, die die Kompatibilität nicht beeinträchtigen. Die Version 2024 enthält außerdem inkompatible Funktionen, die in der aktuellen Version 1.85 vorgeschlagen und für die zukünftige Implementierung genehmigt wurden. Neben der Sprache selbst berücksichtigen die Herausgeber auch den Stand der Tools und der Dokumentation. Mit dem Befehl „cargo fix“ kann der Code automatisch an eine neue Sprachrevision angepasst werden.

Die wichtigsten in Rust 2024 behobenen Inkompatibilitäten sind:

  • Geändertes Verhalten beim Erfassen von Parametern in „impl Trait“, sofern nicht die neue Syntax „use<..>“ zum Angeben versteckter Typinformationen verwendet wird. In Rust 2024 werden alle Parameter im Gültigkeitsbereich implizit erfasst, sofern nicht „use<..>“ verwendet wird. Wenn Sie die Erfassung von Parametern einschränken müssen, sollten Sie "use<..>" verwenden, zum Beispiel "impl Trait + use

    Source: opennet.ru

Kommentar hinzufügen