Rust je multiparadigmatický, univerzální, kompilovaný programovací jazyk.
Nová verze Rust 1.78 již byla vydána a jsou implementovány nové funkce, stejně jako stabilizace některých API, vylepšení Cargo a další.
Pro ty, kteří neznají tento programovací jazyk, by to měli vědět se zaměřuje na bezpečnost paměti a poskytuje prostředky k dosažení vysokého paralelismu úloh a zároveň se vyhnete použití garbage collectoru a runtime (runtime je redukováno na základní inicializaci a standardní údržbu knihovny).
Hlavní nové funkce Rust 1.78
V této nové verzi představil Rust 1.78 zvýšil minimální požadavky na Windows 10, Kromě toho kompilátor byl změněn tak, aby používal LLVM 18. Při použití LLVM 18 pro architektury x86-32 a x86-64 bylo ABI spojené s typy u128 a i128 změněno.
Pokud jde o změny, jednou z charakteristik, která vyniká, je Rust nyní podporuje jmenný prostor atributů «#[diagnóza]", co poskytuje prostředky k ovlivnění vytvářených chybových zpráv kompilátorem. Tyto jsou považovány za rady, které kompilátor nemusí používat, ani není chybou poskytnout diagnostiku, kterou kompilátor nerozpozná. Tento umožňuje zdrojovému kódu poskytovat diagnostiku, i když není podporován všemi kompilátory, ať už různé verze nebo zcela odlišné implementace.
Navíc, v Cargu byla stabilizována globální mezipaměť který ukládá informace o nejnovějším využití dat. Tato keš se nachází v $CARGO_HOME/.global-cache a pro jeho implementaci používá SQLite. Automaticky se aktualizuje tak, aby odrážela nejnovější změny v indexu, bedně, adresáři kódu, klonu git a git checkout, čímž zlepšuje efektivitu a rychlost operací správy závislostí ve vývojových projektech.
Další novou funkcí Rust 1.78 je standardní knihovna Rust Různé příkazy pro předpoklady nebezpečných funkcí které lze nyní odložit až do vygenerování kódu. To umožňuje provádět tyto kontroly historicky byly povoleny pouze v sestaveních «#[cfg(debug_assertions)]» aby nedošlo k ovlivnění výkonu ve vydané verzi. Díky této změně mohou nyní uživatelé detekovat nedefinované chování ve svém kódu, ačkoli podrobnosti o tom, kolik je kontrolováno, nejsou obecně stabilní. Chcete-li povolit kontroly, nyní stačí povolit ladicí výrazy pro testovací nebo ladicí sestavení kódu.
Navíc teď chování standardních funkcí knihovny které ovlivňují zarovnání ukazatelů a sektorů je nyní předvídatelný za běhu a závisí na vstupních datech. Funkce pointer::align_offset, který vypočítá posun pro zarovnání ukazatele, se nyní vrátí použití::MAX pouze v případě, že operace selže. Funkce slice::align_to a slice::align_to_mut, které převádějí řezy na reprezentaci se zarovnaným středním řezem a původními počátečními a koncovými řezy, nyní vždy vrátí největší střední část.
Na druhou stranu je to zmíněno Následující rozhraní API byla přesunuta do kategorie „stabilní“.: impl Přečíst pro &Stdin, impl Od for io::Error a provádění impl který umožňuje použití ?Velikost.
Z Další změny, které vynikají této nové verze:
- Byla implementována druhá úroveň podpory pro cílovou platformu Add wasm32-wasip1. Druhý stupeň podpory zahrnuje záruku montáže.
- Platforma wasm32-wasi-preview1-threads byla přejmenována na wasm32-wasip1-threads.
- Ve správci balíčků Cargo byla stabilizována verze 4 souborů zámku (lockfile v4). Cargo nyní používá tuto verzi jako standard k zajištění konzistence a efektivní správy závislostí napříč projekty.
Pokud zájem se o tom dozvědět více, můžete zkontrolovat podrobnosti v následující odkaz.
Konečně pro ty, kteří jsou Mám zájem o upgrade z předchozí verze Rust nainstalován přes rustup, můžete získat novou verzi Rust 1.78 s:
rustup update stable
Pokud ještě nemáte na svém systému nainstalovaný Rust, můžete tak učinit spuštěním následujícího příkazu v terminálu:
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh