Ang Rust ay isang multi-paradigm, general-purpose, compiled programming language.
Ang bagong bersyon ng Rust 1.78 ay inilabas na at ipinatupad ang mga bagong feature, pati na rin ang pag-stabilize ng ilang API, mga pagpapahusay sa Cargo at higit pa.
Para sa mga hindi nakakaalam ng programming language na ito, dapat nilang malaman iyon nakatutok sa kaligtasan ng memorya at nagbibigay ng mga paraan upang makamit ang mataas na paralelismo ng mga trabaho habang iniiwasan ang paggamit ng isang garbage collector at runtime (runtime ay binabawasan sa basic initialization at standard library maintenance).
Pangunahing bagong tampok ng Rust 1.78
Sa bagong bersyong ito na ipinakita ni Tinaasan ng Rust 1.78 ang minimum na kinakailangan nito para sa Windows 10, Bukod diyan binago ang compiler upang gamitin ang LLVM 18. Kapag gumagamit ng LLVM 18 para sa x86-32 at x86-64 na mga arkitektura, binago ang ABI na nauugnay sa mga uri ng u128 at i128.
Tungkol sa mga pagbabago, isa sa mga katangian na namumukod-tangi ay ang Rust ngayon ay sumusuporta sa isang attribute namespace «#[diagnosis]", Ano nagbibigay ng isang paraan upang maimpluwensyahan ang mga mensahe ng error na ginawa ng compiler. Ang mga ito ay itinuturing bilang mga pahiwatig na hindi kinakailangang gamitin ng compiler, at hindi rin isang error ang pagbibigay ng diagnostic na hindi nakikilala ng compiler. Ito nagbibigay-daan sa source code na magbigay ng mga diagnostic kahit na hindi ito sinusuportahan ng lahat ng compiler, magkaibang bersyon man o ganap na magkakaibang pagpapatupad.
Bukod dito, isang pandaigdigang cache ang na-stabilize sa Cargo na nag-iimbak ng impormasyon tungkol sa pinakabagong paggamit ng data. Ang cache na ito ay matatagpuan sa $CARGO_HOME/.global-cache at gumagamit ng SQLite para sa pagpapatupad nito. Awtomatiko itong nag-a-update upang ipakita ang mga pinakabagong pagbabago sa index, crate file, code directory, git clone, at git checkout, na pinapabuti ang kahusayan at bilis ng mga pagpapatakbo ng pamamahala ng dependency sa mga proyektong pang-develop.
Ang isa pang bagong tampok ng Rust 1.78 ay mayroon ang Rust standard library Iba't ibang mga pahayag para sa mga paunang kondisyon ng mga hindi ligtas na function na maaari na ngayong ipagpaliban hanggang sa pagbuo ng code. Nagbibigay-daan ito sa mga pagsusuring ito na maisagawa sa kasaysayan, na-enable lang sila sa mga build «#[cfg(debug_assertions)]» upang maiwasang maapektuhan ang pagganap sa bersyon ng paglabas. Sa pagbabagong ito, maaari na ngayong makita ng mga user ang hindi natukoy na gawi sa kanilang code, bagama't ang mga detalye sa kung gaano karami ang sinusuri ay karaniwang hindi stable. Upang paganahin ang mga pagsusuri, ito ay sapat na upang paganahin ang pag-debug ng mga pahayag para sa pagsubok o pag-debug ng mga build ng code.
Bilang karagdagan diyan, ngayon pag-uugali ng mga karaniwang function ng library na nakakaapekto sa pagkakahanay ng mga pointer at sektor predictable na ito sa runtime at depende sa input data. Ang pag-andar pointer::align_offset, na kinakalkula ang offset upang ihanay ang pointer ngayon ay bumalik gamitin::MAX lamang kung nabigo ang operasyon. Ang mga function slice::align_to at slice::align_to_mut, na binabago ang mga hiwa sa isang representasyon na may nakahanay na gitnang hiwa at ang orihinal na simula at pagtatapos na mga hiwa, ngayon ay palaging ibinabalik ang pinakamalaking gitnang bahagi.
Sa kabilang banda, nabanggit na Ang mga sumusunod na API ay inilipat sa kategoryang "stable".: impl Basahin para sa &Stdin, impl Mula sa para sa io:: Error at ang pagpapatupad impl na nagpapahintulot sa paggamit ng ? Sukat.
Ng Iba pang mga pagbabago na kapansin-pansin ng bagong bersyon na ito:
- Ang pangalawang antas ng suporta para sa Add wasm32-wasip1 target platform ay ipinatupad. Ang ikalawang antas ng suporta ay nagsasangkot ng garantiya ng pagpupulong.
- Ang wasm32-wasi-preview1-threads platform ay pinalitan ng pangalan sa wasm32-wasip1-threads.
- Sa Cargo package manager, ang bersyon 4 ng mga lock file (lockfile v4) ay na-stabilize. Ginagamit na ngayon ng Cargo ang bersyong ito bilang pamantayan upang matiyak ang pagkakapare-pareho at mahusay na pamamahala ng mga dependency sa mga proyekto.
Kung ikaw interesadong malaman ang higit pa tungkol dito, maaari mong suriin ang mga detalye sa ang sumusunod na link.
Sa wakas, para sa mga na Interesado sa pag-upgrade mula sa isang nakaraang bersyon ng Rust na naka-install sa pamamagitan ng rustup, maaari mong makuha ang bagong bersyon ng Rust 1.78 gamit ang:
rustup update stable
Kung wala ka pang naka-install na Rust sa iyong system, magagawa mo ito sa pamamagitan ng pagpapatakbo ng sumusunod na command sa isang terminal:
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh