Rust je viacparadigmový, univerzálny, kompilovaný programovací jazyk.
Nová verzia Rust 1.78 už bola vydaná a implementujú sa nové funkcie, ako aj stabilizáciu niektorých API, vylepšenia Cargo a ďalšie.
Pre tých, ktorí tento programovací jazyk nepoznajú, by to mali vedieť sa zameriava na bezpečnosť pamäte a poskytuje prostriedky na dosiahnutie vysokej paralelnosti úloh bez použitia garbage collectora a runtime (beh je zredukovaný na základnú inicializáciu a štandardnú údržbu knižnice).
Hlavné nové funkcie Rustu 1.78
V tejto novej verzii, ktorú predstavil Rust 1.78 zvýšil svoje minimálne požiadavky pre Windows 10, Okrem toho kompilátor bol zmenený tak, aby používal LLVM 18. Pri použití LLVM 18 pre architektúry x86-32 a x86-64 sa zmenilo ABI spojené s typmi u128 a i128.
Čo sa týka zmien, jednou z charakteristických čŕt, ktorá vyniká, je hrdzavosť teraz podporuje priestor názvov atribútov «#[diagnóza]", čo poskytuje prostriedky na ovplyvnenie vytváraných chybových správ kompilátorom. Tieto sú považované za rady, ktoré kompilátor nemusí používať, ani nie je chybou poskytnúť diagnostiku, ktorú kompilátor nepozná. Toto umožňuje zdrojovému kódu poskytovať diagnostiku, aj keď nie je podporovaná všetkými kompilátormi, či už rôzne verzie alebo úplne iné implementácie.
Okrem toho, v Cargu bola stabilizovaná globálna vyrovnávacia pamäť ktorý ukladá informácie o poslednom využití dát. Táto vyrovnávacia pamäť sa nachádza v $CARGO_HOME/.global-cache a na jeho implementáciu používa SQLite. Automaticky sa aktualizuje, aby odrážala najnovšie zmeny v indexe, prepravke, adresári kódu, klonu git a pokladni git, čím sa zlepšuje efektívnosť a rýchlosť operácií správy závislostí vo vývojových projektoch.
Ďalšou novou funkciou Rustu 1.78 je štandardná knižnica Rust Rôzne vyhlásenia pre predpoklady nebezpečných funkcií ktoré teraz možno odložiť až do vygenerovania kódu. To umožňuje vykonávať tieto kontroly historicky boli povolené iba v zostavách «#[cfg(debug_assertions)]» aby sa predišlo ovplyvneniu výkonu vo verzii vydania. Vďaka tejto zmene môžu používatelia teraz zistiť nedefinované správanie vo svojom kóde, hoci podrobnosti o tom, koľko sa kontroluje, nie sú vo všeobecnosti stabilné. Ak chcete povoliť kontroly, teraz stačí povoliť ladiace výrazy pre testovacie alebo ladiace zostavy kódu.
Okrem toho teraz správanie štandardných knižničných funkcií ktoré ovplyvňujú zarovnanie ukazovateľov a sektorov teraz je predvídateľný za behu a závisí od vstupných údajov. Funkcia pointer::align_offset, ktorý vypočíta posun na zarovnanie ukazovateľa, sa teraz vráti použitie::MAX iba ak operácia zlyhá. Funkcie slice::align_to a slice::align_to_mut, ktoré premieňajú rezy na znázornenie so zarovnaným stredným rezom a pôvodnými počiatočnými a koncovými rezmi, teraz vždy vráti najväčšiu strednú časť.
Na druhej strane sa spomína, že Nasledujúce rozhrania API boli presunuté do kategórie „stabilná“.: impl Čítať pre &Stdin, impl Od pre io::Chyba a implementáciu impl čo umožňuje použitie ?Veľkosť.
Z Ďalšie zmeny, ktoré vynikajú tejto novej verzie:
- Bola implementovaná druhá úroveň podpory pre cieľovú platformu Add wasm32-wasip1. Druhá úroveň podpory zahŕňa záruku montáže.
- Platforma wasm32-wasi-preview1-threads bola premenovaná na wasm32-wasip1-threads.
- V správcovi balíkov Cargo bola stabilizovaná verzia 4 súborov zámkov (lockfile v4). Cargo teraz používa túto verziu ako štandard na zabezpečenie konzistentnosti a efektívnej správy závislostí naprieč projektmi.
Ak ste záujem dozvedieť sa o tom viac, môžete skontrolovať podrobnosti v nasledujúci odkaz.
Nakoniec pre tých, ktorí sú Mám záujem o inováciu z predchádzajúcej verzie Rustu nainštalovaný cez rustup, môžete získať novú verziu Rust 1.78 s:
rustup update stable
Ak ešte nemáte nainštalovaný Rust vo svojom systéme, môžete tak urobiť spustením nasledujúceho príkazu v termináli:
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh