opublikowany wydanie języka programowania systemu Rdza 1.43, założona przez projekt Mozilla. Język koncentruje się na bezpieczeństwie pamięci, zapewnia automatyczne zarządzanie pamięcią i zapewnia narzędzia umożliwiające osiągnięcie dużej równoległości zadań bez użycia modułu zbierającego elementy bezużyteczne Czas.
Automatyczne zarządzanie pamięcią Rusta uwalnia programistę od manipulacji wskaźnikami i chroni przed problemami wynikającymi z manipulacji pamięcią na niskim poziomie, takimi jak dostęp do pamięci po zwolnieniu, wyłuskiwanie wskaźników zerowych, przepełnienie bufora i tym podobne. Trwają prace nad menedżerem pakietów, który umożliwi dystrybucję bibliotek, zapewnienie montażu i zarządzanie zależnościami w ramach projektu. Ładunek, co pozwala jednym kliknięciem pobrać biblioteki potrzebne do programu. Repozytorium jest obsługiwane w celu hostowania bibliotek skrzynie.io.
Makra umożliwiają wykorzystanie fragmentów elementów w celu przekształcenia ich w kod cech (cecha), implementacji (impl) lub bloków zewnętrznych. Na przykład:
Ulepszone wykrywanie typu prymitywów, odniesień i operacji binarnych.
Na przykład następujący kod, który wcześniej powodował błąd, będzie teraz mógł się skompilować (Rust teraz poprawnie określa, że 0.0 i &0.0 muszą być typu f32):
niech n: f32 = 0.0 + &0.0;
Do Cargo została dodana nowa zmienna środowiskowa CARGO_BIN_EXE_{name}, która jest ustawiana podczas budowania testów integracyjnych i pozwala na określenie pełnej ścieżki do pliku wykonywalnego zdefiniowanego w sekcji „[[bin]]” pakietu.
Jeśli instrukcje mogą używać atrybutów takich jak „#[cfg()]”.
Biblioteka zapewnia możliwość użycia powiązanych stałych bezpośrednio dla typów całkowitych i ułamkowych, bez konieczności importowania modułu. Na przykład możesz natychmiast zapisać u32::MAX lub f32::NAN bez uprzedniego określenia „use std::u32” i „use std::f32”.
Dodano nowy moduł prymitywny, który ponownie eksportuje typy pierwotne Rusta, na przykład gdy trzeba napisać makro i upewnić się, że typy nie są ukryte.
Nowa porcja API została przeniesiona do kategorii stabilnej, w tym stabilizowanej
Raz::jest_ukończony,
f32::LOG10_2,
f32::LOG2_10,
f64::LOG10_2,
f64::LOG2_10 i
iter::raz_z.