Rust on moniparadigma, yleiskäyttöinen, käännetty ohjelmointikieli.
Rust 1.78:n uusi versio on jo julkaistu ja uusia ominaisuuksia otetaan käyttöön, sekä joidenkin sovellusliittymien vakauttaminen, Cargon parannukset ja paljon muuta.
Niiden, jotka eivät ole tietoisia tästä ohjelmointikielestä, heidän pitäisi tietää se keskittyy muistin turvallisuuteen ja tarjoaa välineet korkean rinnakkaisuuden saavuttamiseen työpaikoista välttäen samalla roskankeräimen ja ajonajan käyttöä (ajoaika rajoittuu perusalustukseen ja kirjaston normaaliin ylläpitoon).
Rust 1.78:n tärkeimmät uudet ominaisuudet
Tässä uudessa versiossa esittäjä Rust 1.78 on lisännyt vähimmäisvaatimustaan Windows 10:lle, Sen lisäksi kääntäjä muutettiin käyttämään LLVM 18:aa. Kun LLVM 18:aa käytetään x86-32- ja x86-64-arkkitehtuureissa, u128- ja i128-tyyppeihin liittyvä ABI on muutettu.
Mitä tulee muutoksiin, yksi erottuvista ominaisuuksista on se, että Rust tukee nyt attribuutin nimiavaruutta «#[diagnoosi]", mitä tarjoaa keinon vaikuttaa tuotettuihin virheilmoituksiin kääntäjän toimesta. Näitä käsitellään vihjeinä, joita kääntäjän ei tarvitse käyttää, eikä ole virhe antaa diagnostiikkaa, jota kääntäjä ei tunnista. Tämä sallii lähdekoodin tarjota diagnostiikkaa, vaikka kaikki kääntäjät eivät tue niitä, joko eri versioita tai täysin erilaisia toteutuksia.
Lisäksi, maailmanlaajuinen kätkö on vakiintunut Cargossa joka tallentaa tiedot viimeisimmästä tiedonkäytöstä. Tämä välimuisti sijaitsee $CARGO_HOME/.global-cache ja käyttää SQLitea sen toteuttamiseen. Se päivittyy automaattisesti vastaamaan viimeisimpiä muutoksia hakemistoon, laatikkotiedostoon, koodihakemistoon, git-klooniin ja git checkoutiin, mikä parantaa kehitysprojektien riippuvuuden hallintatoimintojen tehokkuutta ja nopeutta.
Toinen Rust 1.78:n uusi ominaisuus on, että Rust-standardikirjasto sisältää erilaisia lausuntoja "vaarallisten" toimintojen edellytyksistä jota voidaan nyt lykätä koodin luomiseen asti. Tämä mahdollistaa näiden tarkastusten suorittamisen historiallisesti ne olivat olleet käytössä vain versioissa «#[cfg(debug_assertions)]» jotta julkaisuversion suorituskyky ei vaikuta. Tämän muutoksen myötä käyttäjät voivat nyt havaita määrittelemättömän toiminnan koodissaan, vaikka tarkistuksen määrät eivät yleensä ole vakaita. Tarkistuksen mahdollistamiseksi nyt riittää, että otat käyttöön virheenkorjausvahvistukset koodin testi- tai virheenkorjausversioille.
Sen lisäksi nyt kirjaston standarditoimintojen käyttäytyminen jotka vaikuttavat osoittimien ja sektoreiden kohdistukseen se on nyt ennustettavissa ajon aikana ja riippuu syöttötiedoista. Toiminto osoitin::align_offset, joka laskee siirtymän osoittimen tasaamiseksi, palaa nyt käytä::MAX vain jos toimenpide epäonnistuu. Toiminnot slice::align_to ja slice::align_to_mut, jotka muuttavat viipaleet esitykseksi, jossa on tasattu keskiviipale ja alkuperäiset alku- ja loppuosat, palauttavat nyt aina suurimman keskiosan.
Toisaalta se mainitaan Seuraavat API:t on siirretty "vakaa"-luokkaan: impl Lue &Stdin, impl From for io::Error ja toteutus impl joka mahdollistaa käytön ?Kokoinen.
Niistä Muut erottuvat muutokset tästä uudesta versiosta:
- Add wasm32-wasip1 -kohdealustan toinen tukitaso on otettu käyttöön. Toinen tukitaso sisältää asennustakuun.
- Wasm32-wasi-preview1-threads-alusta on nimetty uudelleen wasm32-wasip1-threadsiksi.
- Cargo-pakettienhallinnassa lukkotiedostojen versio 4 (lockfile v4) on vakiintunut. Cargo käyttää nyt tätä versiota standardina varmistaakseen johdonmukaisuuden ja riippuvuuksien tehokkaan hallinnan projekteissa.
Jos olet kiinnostunut tietämään siitä lisää, voit tarkistaa yksityiskohdat seuraava linkki.
Lopuksi niille, jotka ovat Kiinnostaa päivittää aiemmasta Rust-versiosta asennettuna rustupin kautta, saat uuden version Rust 1.78:sta:
rustup update stable
Jos sinulla ei ole vielä Rustia asennettuna järjestelmääsi, voit tehdä sen suorittamalla seuraavan komennon päätteessä:
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh