Rust 1.55 Siidaynta Luuqada Barnaamijaynta

Siideynta luqadda barnaamijka nidaamka Rust 1.55, oo uu aasaasay mashruuca Mozilla, laakiin hadda lagu horumariyay hoosta ururka madax-bannaan ee aan macaash doonka ahayn ee Rust Foundation, ayaa la daabacay. Luqadda waxay diiradda saartaa badbaadada xusuusta, waxay bixisaa maaraynta xusuusta oo toos ah, waxayna bixisaa hab lagu gaaro isbarbardhigga hawsha sare iyada oo aan la isticmaalin qashin ururiyaha ama wakhtiga runtime (waqtiga runtime wuxuu hoos u dhigayaa bilowga aasaasiga ah iyo dayactirka maktabadda caadiga ah).

Maareynta xusuusta tooska ah ee Rust's waxay tirtirtaa khaladaadka marka la maamulayo tilmaamayaasha waxayna ka ilaalisaa dhibaatooyinka ka dhasha khalkhalgelinta heerka hoose ee xusuusta, sida gelitaanka gobolka xusuusta ka dib markii la sii daayay, tilmaame null ah, dulsaar xad dhaaf ah, iwm. Si loo qaybiyo maktabadaha, loo hubiyo isu-ururinta iyo maareynta ku-tiirsanaanta, mashruucu wuxuu horumarinayaa maareeyaha xirmada xamuulka. Kaydka crates.io waxaa lagu taageeraa martigelinta maktabadaha.

Hal-abuurka ugu muhiimsan:

  • Maareeyaha xirmada xamuulka ayaa awood u leh in uu isku daro khaladaadka iyo digniinaha dhaca inta lagu jiro dhismaha. Marka la fulinayo amarrada sida "tijaabada xamuulka" iyo "baaritaanka xamuulka --all-bartilmaameedyada" oo keena dhismo badan oo xirmo leh oo kala duwan, isticmaaluhu hadda waxaa la tusayaa soo koobidda dhibaatada soo noqnoqota, halkii la tusi lahaa digniino badan oo isku mid ah marka la dhisayo isla shay si isdaba joog ah. $ xamuulka +1.55.0 jeeg β€”dhammaan bartilmaameedyada Hubinta foo v0.1.0 digniinta: shaqada weligeed lama isticmaalo: 'foo' β€”> src/lib.rs:9:4 | 9 | fn foo() {} | ^^^ | = note: '#[wan(dead_code)]' digniinta caadiga ah: 'foo' (lib) waxay soo saartay 1 digniin ah: 'foo' (tijaabada lib) waxay abuurtay 1 digniin ah (1 nuqul) Dhammaystir dev [aan la hagaajin + debuginfo] bartilmaameed (s) gudaha 0.84s
  • Koodhka kala saarista barta sabaynta ee maktabadda caadiga ah ayaa loo dhaqaajiyay si loo isticmaalo Eisel-Lemire algorithm ee degdega ah uguna saxsan, kaas oo xalliyay dhibaatooyin hore loo arkay oo la xidhiidha soo koobid iyo kala saarid tirooyin leh tiro aad u tiro badan.
  • Awoodda lagu qeexi karo kala duwanaanta aan la xirin ee qaab-dhismeedka waa la xasiliyay ("X.." waxaa loo fasirtay kala duwanaansho ka bilaabma qiimaha X oo ku dhammaata qiimaha ugu badan ee nooca isugeynta): match x as u32 { 0 => println! ("eber!"), 1.. => println!("lambarka togan!"),}
  • Kala duwanaanshaha khaladaadka balaariyay ee uu daboolay std::io:: ErrorKind (wuxuu u kala saaraa khaladaadka qaybaha sida NotFound iyo WouldBlock). Markii hore, khaladaadka aan ku habboonayn qaybaha jira waxay ku dhaceen ErrorKind :: Qaybta kale, kaas oo sidoo kale loo isticmaalay khaladaadka koodka xisbiga saddexaad. Hadda waxaa jira qayb gaar ah oo gudaha ah ErrorKind :: Aan loo kala saarin khaladaadka aan ku habboonayn qaybaha jira, iyo KhaladkaKind :: Qaybta kale waxay ku kooban tahay khaladaadka aan ka dhicin maktabadda caadiga ah Mar dambe ha isticmaalin ErrorKind:: Qaybta Kale).
  • Qayb cusub oo API ah ayaa loo raray qaybta xasiloon, oo ay ku jiraan hababka iyo hirgelinta sifooyinka la dajiyay:
    • Xidhan:: la isku xidhay
    • Daadi :: as_str
    • Cilad-gudbiyeedka ::qallad
    • Cilada Gudaha: Qaybaha
    • Waxaa laga yaabaa Uninit :: u malayn in_init_mut
    • Waxaa laga yaabaa Uninit :: qiyaasi_init_ref
    • Waxaa laga yaabaa Uninit :: qor
    • array::maab
    • ops :: Control socodka
    • x86 :: _yar
    • x86 :: _bitttestand dhamaystirka
    • x86 :: _bittesstandreset
    • x86 :: _bittesstandset
    • x86_64 ::_bittest64
    • x86_64 ::_bittesstandcomplement64
    • x86_64::_bittesstandreset64
    • x86_64::_bittesandset64
  • Sifada "const", taas oo go'aamisa suurtagalnimada in loo isticmaalo xaalad kasta oo aan joogto ahayn, ayaa loo isticmaalaa str :: from_utf8_unchecked method.
  • Heerka saddexaad ee taageerada ayaa loo hirgeliyay powerpc64le-unknown-freebsd platform. Heerka saddexaad waxa uu ku lug leeyahay taageerada aasaasiga ah, laakiin iyada oo aan la helin tijaabo toos ah, daabacaadda dhismo rasmi ah, ama hubinta in koodka la dhisi karo.

Source: opennet.ru

Add a comment