Մշակողների թիմը ուրախ է ներկայացնել Rust 1.36-ը:
Ի՞նչ նորություն կա Rust 1.36-ում:
Իսկ հիմա ավելի մանրամասն.
- Վերջապես Rust 1.36-ում կայունացել է հատկանիշ Ապագա.
- արկղ հատկացնել.
Rust 1.36-ի դրությամբ, std-ի մասերը, որոնք կախված են գլոբալ բաշխիչից (օրինակ՝ Vec ), գտնվում են հատկացման տուփում: Այժմ std-ը կվերարտահանի այս մասերը: Ավելին դրա մասին. - Գուցե Միավոր mem-ի փոխարեն::uniinialized.
Նախորդ թողարկումներում mem::uniitialized-ը թույլ էր տալիս շրջանցել սկզբնավորման ստուգումը, այն օգտագործվում էր ծույլ զանգվածի տեղաբաշխման համար, բայց այս ֆունկցիան բավականին վտանգավոր է (ավելի շատ), ուստի MaybeUninit տեսակը կայունացվեց , որն ավելի անվտանգ է։
Դե, քանի որ MaybeUninit ավելի անվտանգ այլընտրանք է, այնուհետև Rust 1.38-ի դրությամբ mem::uninisialized-ը հնացած հատկանիշ կլինի:
Եթե ցանկանում եք ավելին իմանալ ոչ նախնական հիշողության մասին, կարող եք կարդալ Ալեքսիս Բինգեսների այս բլոգային գրառումը: - NLL Rust 2015-ի համար:
Հայտարարության մեջ Ժանգ 1.31.0 Մշակողները մեզ պատմեցին NLL-ի (ոչ բառապաշարի կյանքի տևողության) մասին, որը լեզվի բարելավում է, որն ավելի խելացի և օգտագործողի համար հարմար է դարձնում փոխառությունների ստուգիչը: Օրինակ:
fn main() {
թող mut x = 5;
թող y = & x;
թող z = &mut x; // Սա չէր թույլատրվում 1.31.0-ից առաջ:
}1.31.0-ում NLL-ն աշխատել է միայն Rust 2018-ում՝ խոստանալով, որ մշակողները կավելացնեն աջակցություն Rust 2015-ում:
Եթե ցանկանում եք ավելին իմանալ NLL-ի մասին, կարող եք ավելին կարդալ այստեղ բլոգային գրառումներ (Ֆելիքս Քլոքս): - Բեռնափոխադրումների նոր դրոշն անցանց է:
Rust 1.36-ը կայունացրել է նոր դրոշը Cargo-ի համար: --offline դրոշն ասում է Cargo-ին օգտագործել տեղային քեշավորված կախվածությունները, որպեսզի հետագայում դրանք օգտագործվեն անցանց: Երբ անհրաժեշտ կախվածությունները հասանելի չեն անցանց, և եթե ինտերնետը դեռ անհրաժեշտ է, ապա Cargo-ն սխալ կվերադարձնի: Կախվածությունները նախապես ներբեռնելու համար կարող եք օգտագործել cargo fetch հրամանը, որը կներբեռնի բոլոր կախվածությունները: - Այստեղ կարող եք կարդալ փոփոխությունների ավելի մանրամասն ակնարկ:
Ստանդարտ գրադարանում կան նաև փոփոխություններ.
- dbg!() մակրոն այժմ կարող է ընդունել բազմաթիվ արգումենտներ:
- Մի քանի API-ներ այժմ նշվում են որպես const:
- Նոր API-ներ, որոնք կայունացել են.
- Ստանդարտ գրադարանի այլ փոփոխություններ կարելի է գտնել այստեղ այստեղ.
Այլ փոփոխություններ Ժանգոտվել, բեռ и Clippy- ն.
Source: linux.org.ru