A Rust egy többparadigmájú, általános célú, lefordított programozási nyelv.
A Rust 1.78 új verziója már megjelent és új funkciók valósulnak meg, valamint egyes API-k stabilizálása, a Cargo fejlesztései és még sok más.
Azoknak, akik nem ismerik ezt a programozási nyelvet, tudniuk kell a memória biztonságára összpontosít, és biztosítja a magas párhuzamosság eléréséhez szükséges eszközöket feladatokat, miközben elkerüli a szemétgyűjtő és a futásidő használatát (a futási idő az alapvető inicializálásra és a szabványos könyvtár-karbantartásra csökken).
A Rust 1.78 főbb újdonságai
Ebben az új verzióban, amelyet a A Rust 1.78 megnövelte a Windows 10 minimális követelményeit, Amellett, hogy a fordító LLVM 18-ra változott. Ha az LLVM 18-at x86-32 és x86-64 architektúrákhoz használja, az u128 és i128 típusokhoz társított ABI módosult.
A változásokkal kapcsolatban az egyik jellemző, hogy Rust most már támogatja az attribútum névterét «#[diagnózis]", mit lehetőséget biztosít a megjelenő hibaüzenetek befolyásolására a fordító által. Ezeket olyan tippeknek tekintjük, amelyeket a fordítónak nem kell használnia, és nem hiba olyan diagnosztikát adni, amelyet a fordító nem ismer fel. Ez lehetővé teszi, hogy a forráskód diagnosztikát biztosítson még akkor is, ha azokat nem minden fordító támogatja, akár különböző verziók, akár teljesen eltérő megvalósítások.
Ezen túlmenően, globális gyorsítótárat stabilizáltak a Cargo-ban amely információkat tárol a legutóbbi adathasználatról. Ez a gyorsítótár itt található $CARGO_HOME/.global-cache és az SQLite-ot használja a megvalósításához. Automatikusan frissül, hogy tükrözze az index, a láda, a kódkönyvtár, a git klón és a git checkout legújabb változásait, javítva a fejlesztési projektekben a függőségkezelési műveletek hatékonyságát és sebességét.
A Rust 1.78 másik újdonsága, hogy a Rust szabványkönyvtár rendelkezik Különféle állítások a nem biztonságos funkciók előfeltételeire vonatkozóan amely most elhalasztható a kódgenerálásig. Ez lehetővé teszi ezen ellenőrzések elvégzését történelmileg csak a buildekben voltak engedélyezve «#[cfg(debug_assertions)]» hogy ne befolyásolja a teljesítményt a kiadási verzióban. Ezzel a változtatással a felhasználók most már nem definiált viselkedést észlelhetnek a kódjukban, bár az ellenőrzött mennyiség részletei általában nem stabilak. Az ellenőrzések engedélyezéséhez most már elegendő engedélyezni a hibakeresési állításokat a kód teszt- vagy hibakeresési buildjeihez.
Ezen kívül most szabványos könyvtári függvények viselkedése amelyek befolyásolják a mutatók és szektorok igazítását most már előre jelezhető futás közben, és a bemeneti adatoktól függ. A funkció pointer::align_offset, amely kiszámítja az eltolást a mutató igazításához, most visszatér felhasználás::MAX csak akkor, ha a művelet sikertelen. A funkciókat slice::align_to és slice::align_to_mut, amelyek a szeleteket egy igazított középső szelettel és az eredeti kezdő és záró szeletekkel reprezentációvá alakítják, most mindig a legnagyobb középső részt adják vissza.
Másrészt megemlítik, hogy A következő API-k a „stabil” kategóriába kerültek: impl Olvassa el &Stdin, impl From io::Error esetén és a megvalósítás impl amely lehetővé teszi a használatát ?Méretes.
A Egyéb változások, amelyek kiemelkednek ennek az új verziónak:
- Az Add wasm32-wasip1 célplatform második támogatási szintje megvalósult. A támogatás második szintje összeszerelési garanciával jár.
- A wasm32-wasi-preview1-threads platform átnevezve wasm32-wasip1-threadsre.
- A Cargo csomagkezelőben a zárfájlok 4-es verziója (lockfile v4) stabilizálva lett. A Cargo most ezt a verziót használja szabványként, hogy biztosítsa a konzisztenciát és a függőségek hatékony kezelését a projektek között.
Ha szeretne többet megtudni róla, ben ellenőrizheti a részleteket a következő link.
Végül azoknak, akik Érdekelne a Rust korábbi verziójának frissítése rustup-on keresztül telepítve szerezheti be a Rust 1.78 új verzióját a következőkkel:
rustup update stable
Ha még nincs telepítve a Rust a rendszerére, akkor ezt a következő parancs futtatásával teheti meg egy terminálon:
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh