Rust 1.44 Siidaynta Luuqada Barnaamijaynta

la daabacay siidaynta luuqada programming-ka Miridhku 1.44, oo uu aasaasay mashruuca Mozilla. Luqadda waxay diiradda saartaa badbaadada xusuusta, waxay bixisaa maaraynta xusuusta oo toos ah, waxayna siisaa qalab lagu gaaro isbarbar-dhigga hawsha sare iyada oo aan la isticmaalin ururiyaha qashinka iyo runtime.

Maareynta xusuusta tooska ah ee Rust's waxay baabi'isaa khaladaadka marka la maamulayo tilmaamayaasha waxayna ka ilaalisaa dhibaatooyinka ka dhasha khalkhalgelinta heerka hoose ee xusuusta, sida gelitaanka gobolka xusuusta ka dib marka la sii daayo, tilmaame null ah, dulsaar xad dhaaf ah, iwm. Maamule xirmo ayaa la soo saarayaa si uu u qaybiyo maktabadaha, loo hubiyo isu-ururinta una maamulo ku-tiirsanaanta mashruuca. Cargo, taasoo kuu ogolaanaysa inaad hal mar gujiso ku hesho maktabadaha looga baahan yahay barnaamijka. Kaydka waxaa lagu taageeraa in lagu qabto maktabadaha sanduuqyada.io.

Qoraalka ku dhawaaqista sii deynta cusub, horumarinta Rust waxay ku lug yeesheen siyaasadda waxayna si cad u diideen inay daabacaan dib u eegis buuxda oo ku saabsan isbeddelada Rust 1.44 iyada oo calaamad u ah midnimada mudaaharaadayaasha ka soo horjeeda rabshadaha booliska, taas oo muujinaysa in arrintani ay aad muhiim u tahay. marka loo eego isdhaafsiga aqoonta farsamada. Aasaaska wax cusub:

  • Maareeyaha xirmada xamuulka wuxuu isku daraa amarka "geedka xamuulka", kaas oo muujiya garaaf ku tiirsanaanta geed u eg. Waxa kale oo lagu daray ikhtiyaarka "- nuqul ka mid ah" ("geedka xamuulka -d"), kaas oo kuu ogolaanaya inaad qiimeyso ku-tiirsanaanta noocyada kala duwan ee xirmo isku mid ah.

    mdbook v0.3.2 (/ Isticmaalayaasha/src/ miridhku/mdbook)
    ├── ammonia v3.0.0
    │ ├── html5ever v0.24.0
    │ │ ├── gal v0.4.8
    │ │ │ └── cfg-haddii v0.1.9
    │ │ ├── mac v0.1.1
    │ │ └── markup5ever v0.9.0
    │ │ ├── gal v0.4.8 (*)
    │ │ ├── phf v0.7.24
    │ │ │ └── phf_la wadaagay v0.7.24
    │ │ │ ├── siphasher v0.2.3
    │ │ │ └── sanduuqa v1.4.2
    │ │ │ [ku-tiirsanaanta] │ │ │ └── nooca_check v0.1.5
    ...

  • Codsiyada aan ku xidhnayn std ("#![no_std]"), taageerada farsamooyinka barnaamijka asynchronous waa la hirgeliyaa iyadoo lagu saleynayo shaqada "async", dhaqdhaqaaqa async {...} block iyo hawlwadeenka ".wait", kaas oo fududeeyo qorista maamulayaasha aan xannibin socodka ugu muhiimsan.
  • Taageerada nidaamka qeexida kala sareynta cutubka la fidin karo ayaa lagu daray baarseriyaha. Tusaale ahaan, dhismaha soo socda ma soo saari doono qalad, inkastoo maqnaanshaha dhabta ah ee moduleka "foo/bar/baz.rs" (dhismihiisu wali macna ahaan waa buray wuxuuna keeni karaa qalad, laakiin isbeddelada waa la arki karaa oo lagu kala saari karaa heerka makro iyo shuruudaha isku-duwidda):

    #[cfg(FALSE)] mod foo {
    mod bar {
    mod baz;
    }
    }

  • Isku-duwaha rustc wuxuu ku daray awoodda lagu isticmaalo calanka "-C codegen-units" qaabka kordhinta. Dhaqangelinta qabashada_dabaysha dib ayaa loo habeeyey si aanay u yeelan wax saamayn ah oo waxqabad ah haddii habka furfurista uu naafo yahay oo aan la tuurin.
  • Taageerada heerka 64 ayaa la siiyay aarch64-unknown-none, aarch64-unknown-none-softfloat, arm86-apple-tvos iyo x64_XNUMX-apple-tvos. Heerka saddexaad wuxuu ku lug leeyahay taageerada aasaasiga ah, laakiin iyada oo aan la helin tijaabo toos ah iyo daabacaadda dhismayaasha rasmiga ah.
  • Qayb cusub oo API-yada ah ayaa loo wareejiyay qaybta deggan, oo ay ku jirto la xasiliyay
    PathBuf:: oo leh karti,
    PathBuf:: Awood,
    PathBuf:: cad,
    PathBuf:: kaydso,
    PathBuf :: kayd_sax ah,
    PathBuf:: U dhimi_inay ku habboonaato,
    {f32|f64}:: in aan la hubin,
    Layout :: align_to,
    Layout :: pad_to_align,
    Layout::array iyo
    Layout :: kordhin

  • Hawlaha la dheereeyey ee maktabadda caadiga ah:
    • Waxaa lagu daray "vec![]" duwanaansho gaar ah oo si toos ah uga muuqata Vec :: cusub(), u oggolaanaysa "vec![]" in loo isticmaalo macnaha guud ee beddelka joogtada ah.
    • Dhaqangelinta (impl) ee sifada ayaa lagu daray in la beddelo:: Ma khaldami karin Hash.
    • OsString waxay fulisaa tilmaameyaal caqli badan DerefMut и IndexMut, soo noqoshada "& mut OsStr".
    • Taageero lagu daray Unicode 13.
    • Laga hirgaliyay String Ka yimid<&mut str>.
    • IoSlice waxay fulisaa sifada Copy.
    • Vec laga hirgaliyay<[T; N]>.
    • proc_macro:: LexError waxa uu fuliya fmt :: Bandhiga iyo Cilad.
  • Sifada "const", taas oo go'aamisa in loo isticmaali karo xaalad kasta oo aan joogto ahayn, waxaa loo isticmaalaa from_le_bytes, to_le_bytes, from_be_bytes, to_be_bytes, from_ne_bytes iyo to_ne_bytes hababka dhammaan noocyada kala duwan.
  • Taageero lagu daray soo saarista maktabado taagan qaabka ".a" halkii ".lib" ee goobaha GNU ee Windows.
  • Shuruudaha ugu yar ee LLVM ayaa kor loogu qaaday nooca LLVM 8.

Source: opennet.ru

Add a comment