Rust 1.55 scaoileadh teanga cláir

Tá scaoileadh na teanga ríomhchláraithe córais Rust 1.55, a bhunaigh an tionscadal Mozilla, ach atá forbartha anois faoi choimirce na heagraíochta neamhspleách neamhbhrabúis Rust Foundation, foilsithe. Díríonn an teanga ar shábháilteacht chuimhne, soláthraíonn sí bainistíocht cuimhne uathoibríoch, agus soláthraíonn sé na modhanna chun comhthreomhaireacht ard-tasc a bhaint amach gan úsáid a bhaint as bailitheoir truflais nó am rite (laghdaítear an t-am rite go dtí túsú bunúsach agus cothabháil na leabharlainne caighdeánach).

Cuireann bainistíocht cuimhne uathoibríoch Rust deireadh le hearráidí nuair a bhíonn leideanna á n-ionramháil agus cosnaíonn sé i gcoinne fadhbanna a eascraíonn as ionramháil cuimhne ísealleibhéil, mar shampla rochtain a fháil ar réigiún cuimhne tar éis é a shaoradh, dereferences pointeoir nialasach, róchaiteachas maoláin, etc. Chun leabharlanna a dháileadh, tionól a chinntiú agus spleáchais a bhainistiú, tá an tionscadal ag forbairt bainisteoir pacáiste lasta. Tacaítear leis an stór crates.io chun leabharlanna a óstáil.

Príomh-nuálaíochtaí:

  • Tá an cumas ag an mbainisteoir pacáiste lasta earráidí dúblacha agus rabhaidh a tharlaíonn le linn tógála a chumasc. Nuair a bhíonn orduithe á bhforghníomhú mar "tástáil lasta" agus "seiceáil lasta --all-targets" as a dtagann il-thógáil pacáiste le paraiméadair éagsúla, taispeántar achoimre don úsáideoir anois ar tharla fadhb athuair, in ionad é a thaispeáint rabhaidh chomhionanna iolracha agus an rud céanna á thógáil arís agus arís eile. $cargo +1.55.0 seiceáil —na spriocanna uile Ag seiceáil rabhadh foo v0.1.0: ní úsáidtear an fheidhm choíche: 'foo' -> src/lib.rs:9:4 | 9 | fn foo() {} | ^^^ | = nóta: '#[warn(dead_code)]' ar aghaidh le rabhadh réamhshocraithe: ghin 'foo' (lib) 1 rabhadh rabhaidh: ghin 'foo' (tástáil lib) 1 rabhadh (1 dhúblach) Dev críochnaithe [neamhoptamaithe + debuginfo] sprioc (s)i 0.84s
  • Bogadh an cód parsála snámhphointe sa leabharlann chaighdeánach chun úsáid a bhaint as an algartam Eisel-Lemire atá níos tapúla agus níos cruinne, rud a réitigh roinnt fadhbanna a breathnaíodh roimhe seo maidir le slánú agus parsáil uimhreacha le líon an-mhór digit.
  • Tá an cumas raonta neamhdhúnta a shonrú i dteimpléid cobhsaithe (“X..” a léirmhíniú mar raon a thosaíonn leis an luach X agus a chríochnaíonn le huasluach an chineáil slánuimhir): meaitseáil x mar u32 { 0 => println! (“nialas!”), 1.. => println!("uimhir dhearfach!"), }
  • Leaganacha earráide méadaithe clúdaithe ag std::io::ErrorKind (rangaíonn sé earráidí i gcatagóirí mar NotFound agus WouldBlock). Roimhe seo, thit earráidí nach raibh oiriúnach do chatagóirí reatha sa chatagóir ErrorKind::Eile, a úsáideadh freisin le haghaidh earráidí i gcód tríú páirtí. Tá catagóir inmheánach ar leith ann anois ErrorKind ::Gan chatagóir le haghaidh earráidí nach dtagann le catagóirí atá ann cheana féin, agus an ErrorKind ::Tá catagóir eile teoranta d'earráidí nach dtarlaíonn sa ghnáthleabharlann (feidhmeanna caighdeánacha leabharlainne a fhilleann io::Error ná húsáid an ErrorKind :: catagóir Eile).
  • Aistríodh cuid nua den API chuig an gcatagóir de chobhsaí, lena n-áirítear modhanna agus cur i bhfeidhm na dtréithe a chobhsú:
    • Ceangailte::clónáilte
    • Draenáil:: as_str
    • IntoInnerError:: into_error
    • IntoInnerError :: into_parts
    • B'fhéidirUninit:: glacadh_init_mut
    • B'fhéidirUninit::assume_init_ref
    • B'fhéidirUninit::scríobh
    • eagar::léarscáil
    • ops ::ControlFlow
    • x86:: _ghiotán
    • x86:: _bittestandcompletion
    • x86:: _bittestandreset
    • x86:: _bittestandset
    • x86_64::_bittest64
    • x86_64::_bittestandcomhlántach64
    • x86_64::_bittestandreset64
    • x86_64::_bittestandset64
  • Úsáidtear an aitreabúid “const”, a chinneann an bhféidearthacht é a úsáid in aon chomhthéacs seachas tairisigh, sa mhodh str::from_utf8_unchecked.
  • Tá an tríú leibhéal tacaíochta curtha i bhfeidhm don ardán powerpc64le-unknown-freebsd. Tá tacaíocht bhunúsach i gceist leis an tríú leibhéal, ach gan tástáil uathoibrithe, foirgnimh oifigiúla a fhoilsiú, nó seiceáil an féidir an cód a thógáil.

Foinse: oscailtenet.ru

Add a comment