Hoʻokuʻu ʻia ʻo Rust 1.68

Ua paʻi ʻia ka hoʻokuʻu ʻia ʻana o ka ʻōlelo hoʻolālā kumu nui ʻo Rust 1.68, i hoʻokumu ʻia e ka papahana Mozilla, akā i kēia manawa ua hoʻomohala ʻia ma lalo o ka mana o ka hui kūʻokoʻa waiwai ʻole ʻo Rust Foundation. Hoʻopili ʻia ka ʻōlelo i ka palekana hoʻomanaʻo a hāʻawi i nā ala e hoʻokō ai i ka parallelism kiʻekiʻe i ka hoʻokō ʻana i ka hana, ʻoiai e pale ana i ka hoʻohana ʻana i ka ʻōpala a me ka manawa holo (ua hoʻemi ʻia ka manawa holo i ka hoʻomaka kumu a me ka mālama ʻana i ka waihona maʻamau).

Hoʻokuʻu ʻia nā ʻenehana hoʻomanaʻo hoʻomanaʻo a Rust i ka mea hoʻomohala mai nā hewa manipulation pointer a pale i nā pilikia e kū mai ana mai ka hoʻohana ʻana i ka hoʻomanaʻo haʻahaʻa haʻahaʻa, e like me ke komo ʻana ma hope o ka loaʻa ʻole ʻana, nā kuhi kuhikuhi null, overruns buffer, a me nā mea like. No ka hāʻawi ʻana i nā hale waihona puke, e hōʻoia i ka hui ʻana a me ka mālama ʻana i nā hilinaʻi, ke kūkulu nei ka papahana i ka luna pūʻolo Cargo. Kākoʻo ʻia ka waihona crates.io no ka mālama ʻana i nā hale waihona puke.

Hoʻoikaika ʻia ka palekana hoʻomanaʻo ma Rust i ka manawa hōʻuluʻulu ma o ka nānā ʻana, ka nānā ʻana i ka mea nona ka mea, ka noʻonoʻo ʻana i ke ola o ka mea (scoping), a me ka loiloi hoʻomanaʻo i ka wā holo. Hāʻawi pū ʻo Rust i ka pale ʻana i ka integer overflows, pono e hoʻomaka mua ʻia nā waiwai hoʻololi ma mua o ka hoʻohana ʻana, ʻoi aku ka maikaʻi o ka lawelawe hewa ʻana i ka waihona maʻamau, hoʻohana i ka manaʻo o nā kuhikuhi immutable a me nā loli ma ke ʻano maʻamau, a hāʻawi i ka paʻi static ikaika e hōʻemi i nā hewa loiloi.

Nā hana hou nui:

  • Ua hoʻokūpaʻa ʻia ke kākoʻo no ka protocol Sparse ka luna pūʻolo Cargo a me ka waihona crates.io, kahi e wehewehe ai i kahi ala hou o ka hana ʻana me kahi index e hōʻike ana i nā mana i loaʻa o nā pūʻolo āpau i loaʻa i ka waihona. Hāʻawi ka protocol hou iā ʻoe e hoʻonui nui i ka wikiwiki o ka hana ʻana me crates.io a hoʻoponopono i nā pilikia scaling me ka ulu hou aʻe o ka helu o nā pūʻulu i loko o ka waihona.

    No ka hōʻemi ʻana i nā lohi i hoʻoiho ʻia e ka hoʻoiho ʻana i kahi kikoʻī piha, ʻo Sparse ma mua o ke komo ʻana i ka index me ka hoʻohana ʻana iā Git e pili ana i ka hoʻoiho pololei ʻana ma luna o HTTPS wale nō ka ʻikepili kuhikuhi pono, e uhi ana i nā hilinaʻi o kahi papahana. Hoʻohana ʻia kahi lawelawe hou, index.crates.io, e hāʻawi i ka ʻikepili helu. Ma ka maʻamau, ua hoʻolālā ʻia ka protocol hou e hoʻohana ʻia ma ka lālā Rust 1.70, a ma mua o kēlā, e hiki ai, hiki iā ʻoe ke hoʻonohonoho i ka ʻano hoʻololi kaiapuni "CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse" a i ʻole e hoʻohui i ka 'protocol =' parameter i ka "[registries. crates-io]" ʻāpana o ka waihona .cargo/config.toml 'sparse'.

  • Hoʻohui ʻia ka macro "pin!", kahi e hiki ai iā ʻoe ke hana i kahi hoʻolālā Pin<&mut T> mai ka huaʻōlelo "T" me ka pine ʻana o kona mokuʻāina (ʻaʻole like me Box:: pin, ʻaʻole ia e hoʻokaʻawale i ka hoʻomanaʻo ma ka puʻu, akā naʻe. ma ka pae ahu).
  • Hoʻohana ʻia kahi mea hoʻohana hewa hoʻomanaʻo paʻamau i ka wā e hoʻohana ai i ka pūʻolo alloc maʻamau. ʻO nā noi e hiki ai i ka alloc (me ka ʻole std) ke kāhea i kēia manawa i ka "panic!" Handler ke hāʻule ka hoʻokaʻawale hoʻomanaʻo, hiki ke hoʻopaʻa ʻia me ka "#[panic_handler]". ʻO nā polokalamu e hoʻohana ana i ka waihona std e hoʻomau i ka paʻi ʻana i ka ʻike hewa i stderr a hāʻule.
  • Ua hoʻoili ʻia kahi ʻāpana hou o ka API i ka ʻāpana paʻa, me nā ʻano a me nā hoʻokō o nā ʻano:
    • {kumu, std}::pin::pin!
    • impl Mai no {f32,f64}
    • std::alanui::MAIN_SEPARATOR_STR
    • impl DerefMut no PathBuf
  • Hoʻohana ʻia ka ʻano "const", ka mea e hoʻoholo ai i ka hiki ke hoʻohana ʻia i loko o nā pōʻaiapili ma kahi o nā mea mau, hoʻohana ʻia i ka VecDeque:: hana hou.
  • No ka hana ʻana ma ka paepae Android, pono ʻo NDK r25 (API 19) i kēia manawa, ʻo ia hoʻi. Ua hoʻokiʻekiʻe ʻia ka mana haʻahaʻa o Android i kākoʻo ʻia i 4.4 (KitKat).
  • Ua hoʻokō ʻia ke kolu o ke kākoʻo no ka Sony PlayStation Vita platform (armv7-sony-vita-newlibeabihf). ʻO ke kolu o ka pae e pili ana i ke kākoʻo maʻamau, akā me ka ʻole o ka hoʻāʻo ʻokoʻa, ka hoʻopuka ʻana i nā hale mana, a i ʻole ke nānā ʻana inā hiki ke kūkulu ʻia ke code.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka