เจฐเจธเจŸ 1.96 เจฐเฉ€เจฒเฉ€เจœเจผ: เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ เจซเจฐเจฎเจตเฉ‡เจ…เจฐ เจตเจฟเจ•เจพเจธ เจฒเจˆ เจฐเจธเจŸ เจฆเฉ€ เจ…เจจเฉเจ•เฉ‚เจฒเจคเจพ เจฆเจพ เจฎเฉเจฒเจพเจ‚เจ•เจฃ เจ•เจฐเจจเจพ

เจฐเจธเจŸ 1.96 เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพ, เจœเฉ‹ เจฎเฉ‹เจœเจผเฉ€เจฒเจพ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฆเฉเจ†เจฐเจพ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเฉ€ เจ—เจˆ เจธเฉ€ เจชเจฐ เจนเฉเจฃ เจธเฉเจคเฉฐเจคเจฐ เจ—เฉˆเจฐ-เจฎเฉเจจเจพเจซเจผเจพ เจฐเจธเจŸ เจซเจพเจŠเจ‚เจกเฉ‡เจธเจผเจจ เจฆเฉ€ เจธเจฐเจชเฉเจฐเจธเจคเฉ€ เจนเฉ‡เจ  เจตเจฟเจ•เจธเจค เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ, เจœเจพเจฐเฉ€ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆเฅค เจ‡เจน เจญเจพเจธเจผเจพ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจธเฉเจฐเฉฑเจ–เจฟเจ† 'เจคเฉ‡ เจ•เฉ‡เจ‚เจฆเฉเจฐเจฟเจค เจนเฉˆ เจ…เจคเฉ‡ เจ•เฉ‚เฉœเจพ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจ เจตเจพเจฒเฉ‡ เจ…เจคเฉ‡ เจฐเจจเจŸเจพเจˆเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฆเฉ‡ เจ‰เฉฑเจš เจธเจฎเจพเจจเจคเจพ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจธเจพเจงเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ€ เจนเฉˆ (เจฐเจจเจŸเจพเจˆเจฎ เจจเฉ‚เฉฐ เจฎเจฟเจ†เจฐเฉ€ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ เจฆเฉ‡ เจฎเฉเฉฑเจขเจฒเฉ‡ เจธเจผเฉเจฐเฉ‚เจ†เจคเฉ€เจ•เจฐเจจ เจ…เจคเฉ‡ เจฐเฉฑเจ–-เจฐเจ–เจพเจ… เจคเฉฑเจ• เจ˜เจŸเจพ เจฆเจฟเฉฑเจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ)เฅค

เจฐเจธเจŸ เจฆเฉ‡ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ เจขเฉฐเจ— เจชเฉเจ†เจ‡เฉฐเจŸเจฐ เจนเฉ‡เจฐเจพเจซเฉ‡เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจฒเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ–เจคเจฎ เจ•เจฐเจจ เจ…เจคเฉ‡ เจ˜เฉฑเจŸ-เจชเฉฑเจงเจฐเฉ€ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ เจคเฉ‹เจ‚ เจชเฉˆเจฆเจพ เจนเฉ‹เจฃ เจตเจพเจฒเฉ‡ เจฎเฉเฉฑเจฆเจฟเจ†เจ‚ เจคเฉ‹เจ‚ เจฌเจšเจพเจ‰เจฃ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจจเฉ‚เฉฐ เจ–เจพเจฒเฉ€ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจเจ•เจธเฉˆเจธ เจ•เจฐเจจเจพ, เจจเจฒ เจชเฉเจ†เจ‡เฉฐเจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจกเฉ€เจฐเฉ‡เจซเจฐเฉˆเจ‚เจธ เจ•เจฐเจจเจพ, เจฌเจซเจฐ เจ“เจตเจฐเจฐเจจ, เจ…เจคเฉ‡ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉ‡ เจนเฉ‹เจฐเฅค เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจตเฉฐเจกเจฃ, เจฌเจฟเจฒเจกเจพเจ‚ เจฆเฉ€ เจธเจนเฉ‚เจฒเจค เจฆเฉ‡เจฃ เจ…เจคเฉ‡ เจจเจฟเจฐเจญเจฐเจคเจพเจตเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ เจ•เจพเจฐเจ—เฉ‹ เจชเฉˆเจ•เฉ‡เจœ เจฎเฉˆเจจเฉ‡เจœเจฐ เจตเจฟเจ•เจธเจค เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆเฅค crates.io เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจฎเฉ‡เจœเจผเจฌเจพเจจเฉ€ เจฒเจˆ เจฌเจฃเจพเจˆ เจฐเฉฑเจ–เฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจฐเฉˆเจซเจฐเฉˆเจ‚เจธ เจšเฉˆเจ•เจฟเฉฐเจ—, เจ†เจฌเจœเฉˆเจ•เจŸ เจฆเฉ€ เจฎเจฒเจ•เฉ€เจ…เจค เจฆเจพ เจŸเฉเจฐเฉˆเจ• เจฐเฉฑเจ–เจฃ, เจ†เจฌเจœเฉˆเจ•เจŸ เจฒเจพเจˆเจซเจŸเจพเจˆเจฎ (เจธเจ•เฉ‹เจชเจพเจ‚) เจฆเจพ เจŸเฉเจฐเฉˆเจ• เจฐเฉฑเจ–เจฃ เจ…เจคเฉ‡ เจ•เฉ‹เจก เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจธเจผเจจ เจฆเฉŒเจฐเจพเจจ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจเจ•เจธเฉˆเจธ เจฆเฉ€ เจธเจผเฉเฉฑเจงเจคเจพ เจฆเจพ เจฎเฉเจฒเจพเจ‚เจ•เจฃ เจ•เจฐเจจ เจฆเฉเจ†เจฐเจพ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจฐเจธเจŸ เจตเจฟเฉฑเจš เจ•เฉฐเจชเจพเจˆเจฒ เจธเจฎเฉ‡เจ‚ เจชเฉเจฐเจฆเจพเจจ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจœเฉฐเจ—เจพเจฒ เจชเฉ‚เจฐเจจ เจ…เฉฐเจ• เจ“เจตเจฐเจซเจฒเฉ‹ เจฆเฉ‡ เจตเจฟเจฐเฉเฉฑเจง เจธเฉเจฐเฉฑเจ–เจฟเจ† เจตเฉ€ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆ, เจตเจฐเจคเฉ‹เจ‚ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฎเฉเฉฑเจฒเจพเจ‚ เจฆเฉ€ เจฒเจพเจœเจผเจฎเฉ€ เจธเจผเฉเจฐเฉ‚เจ†เจค เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, เจฎเจฟเจ†เจฐเฉ€ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจฒเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฌเจฟเจนเจคเจฐ เจขเฉฐเจ— เจจเจพเจฒ เจธเฉฐเจญเจพเจฒเจฆเจพ เจนเฉˆ, เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ…เจŸเฉฑเจฒ เจธเฉฐเจฆเจฐเจญเจพเจ‚ เจ…เจคเฉ‡ เจตเฉ‡เจฐเฉ€เจเจฌเจฒเจพเจ‚ เจฆเฉ€ เจงเจพเจฐเจจเจพ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ, เจฒเจพเจœเจผเฉ€เจ•เจฒ เจ—เจฒเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ˜เฉฑเจŸ เจ•เจฐเจจ เจฒเจˆ เจฎเจœเจผเจฌเฉ‚เจค โ€‹โ€‹เจธเจฅเจฟเจฐ เจŸเจพเจˆเจชเจฟเฉฐเจ— เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจฎเฉเฉฑเจ– เจจเจตเฉ€เจจเจคเจพเจตเจพเจ‚:

  • ะ”ะพะฑะฐะฒะปะตะฝ ะผะพะดัƒะปัŒ range ั ั€ะตะฐะปะธะทะฐั†ะธะตะน ะฝะพะฒั‹ั… ั‚ะธะฟะพะฒ, ั€ะฐะทะฒะธะฒะฐะตะผั‹ั… ะดะปั ะทะฐะผะตะฝั‹ ัƒัั‚ะฐั€ะตะฒัˆะธั… ั‚ะธะฟะพะฒ Range, RangeInclusive, RangeToInclusive ะธ RangeFrom, ะธ ะฟะพะทะฒะพะปััŽั‰ะธั… ั…ั€ะฐะฝะธั‚ัŒ ะดะธะฐะฟะฐะทะพะฝั‹ ะฒ Copy-ัั‚ั€ัƒะบั‚ัƒั€ะฐั…. ะขะธะฟ Range ะพะฟั€ะตะดะตะปัะตั‚ ะดะธะฐะฟะฐะทะพะฝั‹, ะพะณั€ะฐะฝะธั‡ะตะฝะฝั‹ะต ะผะธะฝะธะผะฐะปัŒะฝั‹ะผ ะธ ะผะฐะบัะธะผะฐะปัŒะฝั‹ะผ ะดะพะฟัƒัั‚ะธะผั‹ะผ ะทะฝะฐั‡ะตะฝะธะตะผ (ะฝะพ ะฝะต ะฒั…ะพะดัั‰ะธะผ ะฒ ะฝะตะณะพ), ั‚ะธะฟ RangeFrom ะพะฟั€ะตะดะตะปัะตั‚ ั‡ะธัะปะฐ ะฝะฐั‡ะธะฝะฐั ั ัƒะบะฐะทะฐะฝะฝะพะณะพ ะทะฝะฐั‡ะตะฝะธั, ะฐ ั‚ะธะฟ RangeInclusive โ€” ะทะฝะฐั‡ะตะฝะธั ัƒะบะฐะทะฐะฝะฝะพะณะพ ะดะธะฐะฟะฐะทะพะฝะฐ ั ะพะฑะตะธะผะธ ะตะณะพ ะณั€ะฐะฝะธั†ะฐะผะธ. ะ’ ะฑัƒะดัƒั‰ะธั… ะฒั‹ะฟัƒัะบะฐั… ะดะพะฟะพะปะฝะธั‚ะตะปัŒะฝะพ ะฟะพัะฒัั‚ัั ั‚ะธะฟั‹ RangeFull ะธ RangeTo, ัั‚ะฐั€ะฐั ั€ะตะฐะปะธะทะฐั†ะธั ะฑัƒะดะตั‚ ะฟะตั€ะตะฝะตัะตะฝะฐ ะฒ core::range::legacy::*, ะฐ ัะธะฝั‚ะฐะบัะธั ยซN..Mยป ะฟะตั€ะตะฒะตะดัƒั‚ ะฝะฐ ะฝะพะฒั‹ะน ะฒะฐั€ะธะฐะฝั‚ ั‚ะธะฟะพะฒ.

    ะะพะฒั‹ะต ั‚ะธะฟั‹ ะพั‚ะปะธั‡ะฐัŽั‚ัั ั‚ะตะผ, ั‡ั‚ะพ ะฒะผะตัั‚ะพ ั‚ะธะฟะฐะถะฐ Iterator ั€ะตะฐะปะธะทัƒัŽั‚ ั‚ะธะฟะฐะถ IntoIterator, ั‚.ะต. ะฒะผะตัั‚ะพ ะฒัั‚ั€ะพะตะฝะฝะพะณะพ ะธั‚ะตั€ะฐั‚ะพั€ะฐ ะพะฟั€ะตะดะตะปััŽั‚ ั‚ะพ, ะบะฐะบ ะฟั€ะตะพะฑั€ะฐะทะพะฒะฐั‚ัŒ ั‚ะธะฟ ะฒ ะธั‚ะตั€ะฐั‚ะพั€. ะŸะพะดะพะฑะฝั‹ะน ะฟะพะดั…ะพะด ะฟะพะทะฒะพะปัะตั‚ ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒ ั ะฝะพะฒั‹ะผะธ ั‚ะธะฟะฐะผะธ ะพะฟะตั€ะฐั†ะธัŽ ะบะพะฟะธั€ะพะฒะฐะฝะธั (ั‚ะธะฟะฐะถ Copy, ะฟะพะบะฐะทั‹ะฒะฐัŽั‰ะธะน, ั‡ั‚ะพ ะทะฝะฐั‡ะตะฝะธั ั‚ะธะฟะฐ ะผะพะถะฝะพ ะดัƒะฑะปะธั€ะพะฒะฐั‚ัŒ ั‡ะตั€ะตะท ะฟั€ะพัั‚ะพะต ะบะพะฟะธั€ะพะฒะฐะฝะธะต), ะบะพั‚ะพั€ะฐั ั€ะฐะฝะตะต ะฑั‹ะปะฐ ะฝะตะดะพัั‚ัƒะฟะฝะฐ ะธะท-ะทะฐ ะฝะตัะพะฒะผะตัั‚ะธะผะพัั‚ะธ ั ั‚ะธะฟะฐะผะธ ัะพ ะฒัั‚ั€ะพะตะฝะฝั‹ะผะธ ะธั‚ะตั€ะฐั‚ะพั€ะฐะผะธ.
    ะะฐะฟั€ะธะผะตั€, ะฝะพะฒั‹ะต ั‚ะธะฟั‹ ะดะฐัŽั‚ ะฒะพะทะผะพะถะฝะพัั‚ัŒ ัะพั…ั€ะฐะฝะธั‚ัŒ ะณั€ะฐะฝะธั†ั‹ ัั€ะตะทะฐ ะฒ ัั‚ั€ัƒะบั‚ัƒั€ัƒ, ะบะพั‚ะพั€ะฐั ะฟะพะปะฝะพัั‚ัŒัŽ ะบะพะฟะธั€ัƒะตั‚ัั ะฑะตะท ั€ะฐะทะดะตะปัŒะฝะพะณะพ ัะพั…ั€ะฐะฝะตะฝะธั ะฝะฐั‡ะฐะปัŒะฝะพะณะพ ะธ ะบะพะฝะตั‡ะฝะพะณะพ ะทะฝะฐั‡ะตะฝะธะน:

    use core::range::Range;

    #[derive(Clone, Copy)]
    pub struct Span(Range<usize>);

    impl Span {
    pub fn of(self, s: &str) -> &str {
    &s[self.0]
    }
    }

  • ะ”ะพะฑะฐะฒะปะตะฝั‹ ะผะฐะบั€ะพัั‹ ยซassert_matches!ยป ะธ ยซdebug_assert_matches!ยป, ะฟั€ะพะฒะตั€ััŽั‰ะธะต ัะพะพั‚ะฒะตั‚ัั‚ะฒะธะต ะทะฝะฐั‡ะตะฝะธั ัƒะบะฐะทะฐะฝะฝะพะผัƒ ัˆะฐะฑะปะพะฝัƒ ะธ ะฐะฒะฐั€ะธะนะฝะพ ะทะฐะฒะตั€ัˆะฐัŽั‰ะธะต ะฒั‹ะฟะพะปะฝะตะฝะธะต ะฟั€ะธ ั€ะฐัั…ะพะถะดะตะฝะธะธ. ะžั‚ ะฒั‹ั€ะฐะถะตะฝะธะน ยซassert!(matches!(..))ยป ะธ ยซdebug_assert!(matches!(..))ยป ะฝะพะฒั‹ะต ะผะฐะบั€ะพัั‹ ะพั‚ะปะธั‡ะฐัŽั‚ัั ะฒั‹ะฒะพะดะพะผ ะพั‚ะปะฐะดะพั‡ะฝะพะน ะธะฝั„ะพั€ะผะฐั†ะธะธ ัะพ ะทะฝะฐั‡ะตะฝะธัะผะธ, ะฒั‹ะทะฒะฐะฒัˆะธะผะธ ัะฑะพะน. ะ”ะปั ะธะทะฑะตะถะฐะฝะธั ะฟะตั€ะตัะตั‡ะตะฝะธะน ัะพ ัั‚ะพั€ะพะฝะฝะธะผะธ ะผะฐะบั€ะพัะฐะผะธ, ะฟะพัั‚ะฐะฒะปัะตะผั‹ะผะธ ั ะฐะฝะฐะปะพะณะธั‡ะฝั‹ะผะธ ะธะผะตะฝะฐะผะธ, ะฝะพะฒั‹ะต ะผะฐะบั€ะพัั‹ ั‚ั€ะตะฑัƒัŽ ัะฒะฝะพะณะพ ะธะผะฟะพั€ั‚ะฐ ะฑะธะฑะปะธะพั‚ะตะบะธ ยซcore::assert_matchesยป.

    use core::assert_matches;

    fn get_random_number() -> u32 {
    4
    }

    fn main() {
    assert_matches!(get_random_number(), 1..=6);
    }

  • ะŸั€ะธ ัะฑะพั€ะบะต ะดะปั ั†ะตะปะตะฒะพะน ะฟะปะฐั‚ั„ะพั€ะผั‹ WebAssembly ะฟั€ะตะบั€ะฐั‰ะตะฝะฐ ะฟะตั€ะตะดะฐั‡ะฐ ะบะพะผะฟะพะฝะพะฒั‰ะธะบัƒ ะพะฟั†ะธะธ ยซโ€”allow-undefinedยป, ั€ะฐะทั€ะตัˆะฐะฒัˆะตะน ัะฒัะทั‹ะฒะฐะฝะธะต ะฟั€ะธ ะฝะฐะปะธั‡ะธะธ ะฝะตะพะฟั€ะตะดะตะปั‘ะฝะฝั‹ั… ัะธะผะฒะพะปะพะฒ, ะบะพั‚ะพั€ั‹ะต ะฟั€ะตะพะฑั€ะฐะทะพะฒั‹ะฒะฐะปะธััŒ ะฒ ะธะผะฟะพั€ั‚ ะธะท ะผะพะดัƒะปั ยซenvยป. ะŸั€ะธ ัะฑะพั€ะบะต ะดะปั WebAssembly ะฒัะต ัะฒัะทะฐะฝะฝั‹ะต ั ะบะพะผะฟะพะฝะพะฒะบะพะน ัะธะผะฒะพะปั‹ ั‚ะตะฟะตั€ัŒ ะฟะพ ัƒะผะพะปั‡ะฐะฝะธัŽ ะพะฑัะทะฐั‚ะตะปัŒะฝะพ ะดะพะปะถะฝั‹ ะฑั‹ั‚ัŒ ะพะฟั€ะตะดะตะปะตะฝั‹. ะ”ะปั ะฒะพะทะฒั€ะฐั‰ะตะฝะธั ัั‚ะฐั€ะพะณะพ ะฟะพะฒะตะดะตะฝะธั ะผะพะถะฝะพ ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒ ะฟะตั€ะตะผะตะฝะฝัƒัŽ ะพะบั€ัƒะถะตะฝะธั ยซRUSTFLAGS=-Clink-arg=โ€”allow-undefinedยป ะธะปะธ ะฒั‹ั€ะฐะถะตะฝะธะต โ€˜#[link(wasm_import_module = ยซenvยป)]ยป ะฒ ะบะพะดะต.
  • API เจฆเฉ‡ เจ‡เฉฑเจ• เจจเจตเฉ‡เจ‚ เจนเจฟเฉฑเจธเฉ‡ เจจเฉ‚เฉฐ เจธเจฅเจฟเจฐ เจฆเฉ€ เจธเจผเฉเจฐเฉ‡เจฃเฉ€ เจตเจฟเฉฑเจš เจญเฉ‡เจœเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจ—เฉเจฃเจพเจ‚ เจฆเฉ‡ เจคเจฐเฉ€เจ•เจฟเจ†เจ‚ เจ…เจคเฉ‡ เจฒเจพเจ—เฉ‚เจ•เจฐเจจ เจจเฉ‚เฉฐ เจธเจฅเจฟเจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ:
    • assert_matches!
    • debug_assert_matches!
    • From<T> for AssertUnwindSafe<T>
    • From<T> for LazyCell<T, F>
    • From<T> for LazyLock<T, F>
    • core::range::RangeToInclusive
    • core::range::RangeToInclusiveIter
    • core::range::RangeFrom
    • core::range::RangeFromIter
    • core::range::Range
    • core::range::RangeIter
  • ะ’ ะฟะฐะบะตั‚ะฝะพะผ ะผะตะฝะตะดะถะตั€ะต Cargo ัƒัั‚ั€ะฐะฝะตะฝะฐ ัƒัะทะฒะธะผะพัั‚ัŒ CVE-2026-5223, ะบะพั‚ะพั€ะฐั ะผะพะถะตั‚ ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒัั ะดะปั ะฟะตั€ะตะทะฐะฟะธัะธ ะธัั…ะพะดะฝะพะณะพ ะบะพะดะฐ ะดั€ัƒะณะพะณะพ crate-ะฟะฐะบะตั‚ะฐ ะฒ ะปะพะบะฐะปัŒะฝะพะผ ะบััˆะต ะฟะฐะบะตั‚ะพะฒ ะธะท ั‚ะพะณะพ ะถะต ั€ะตะฟะพะทะธั‚ะพั€ะธั ั‡ะตั€ะตะท ะผะฐะฝะธะฟัƒะปัั†ะธะธ ั ัะธะผะฒะพะปะธั‡ะตัะบะธะผะธ ััั‹ะปะบะฐะผะธ ะฒะฝัƒั‚ั€ะธ crate-ะฐ ะฟะฐะบะตั‚ะพะฒ. ะฃัะทะฒะธะผะพัั‚ัŒ ะฟั€ะพัะฒะปัะตั‚ัั ั‚ะพะปัŒะบะพ ะฟั€ะธ ั€ะฐะฑะพั‚ะต ัะพ ัั‚ะพั€ะพะฝะฝะธะผะธ ั€ะตะฟะพะทะธั‚ะพั€ะธัะผะธ ะฟะฐะบะตั‚ะพะฒ ะธ ะฝะต ะทะฐั‚ั€ะฐะณะธะฒะฐะตั‚ ะฟะพะปัŒะทะพะฒะฐั‚ะตะปะตะน ั€ะตะฟะพะทะธั‚ะพั€ะธั crates.io, ั‚ะฐะบ ะบะฐะบ ะฒ crates.io ะทะฐะฟั€ะตั‰ะตะฝะฐ ะทะฐะณั€ัƒะทะบะฐ ะฟะฐะบะตั‚ะพะฒ ั ัะธะผะฒะพะปะธั‡ะตัะบะธะผะธ ััั‹ะปะบะฐะผะธ.

ะ”ะพะฟะพะปะฝะธั‚ะตะปัŒะฝะพ ะผะพะถะฝะพ ะพั‚ะผะตั‚ะธั‚ัŒ ะฟัƒะฑะปะธะบะฐั†ะธัŽ (PDF) ั€ะตะทัƒะปัŒั‚ะฐั‚ะพะฒ ะฐะฝะฐะปะธะทะฐ ะฟั€ะธะณะพะดะฝะพัั‚ะธ ัะทั‹ะบะฐ Rust ะดะปั ั€ะฐะทั€ะฐะฑะพั‚ะบะธ ะฟั€ะพัˆะธะฒะพะบ ะดะปั ะผะธะบั€ะพะบะพะฝั‚ั€ะพะปะปะตั€ะพะฒ ะธ ะฒัั‚ั€ะฐะธะฒะฐะตะผั‹ั… ัะธัั‚ะตะผ ั ะพะณั€ะฐะฝะธั‡ะตะฝะฝั‹ะผะธ ั€ะตััƒั€ัะฐะผะธ.
ะ˜ััะปะตะดะพะฒะฐะฝะธะต ะฟั€ะพะฒะตะดะตะฝะพ ะบะพะผะฟะฐะฝะธะตะน STMicroelectronics ะฟั€ะธ ัƒั‡ะฐัั‚ะธะธ ะฝะตัะบะพะปัŒะบะธั… ะตะฒั€ะพะฟะตะนัะบะธั… ัƒะฝะธะฒะตั€ัะธั‚ะตั‚ะพะฒ. ะ”ะฒัƒะผ ะธะทะพะปะธั€ะพะฒะฐะฝะฝั‹ะผ ะบะพะผะฐะฝะดะฐะผ ั€ะฐะทั€ะฐะฑะพั‚ั‡ะธะบะพะฒ ะฑั‹ะปะฐ ะฟะพัั‚ะฐะฒะปะตะฝะฐ ะทะฐะดะฐั‡ะฐ ะฟะพ ั€ะตะฐะปะธะทะฐั†ะธะธ ะพะดะฝะพะน ะธ ั‚ะพะน ะถะต ะฟั€ะพัˆะธะฒะบะธ ะดะปั ะผะธะบั€ะพะบะพะฝั‚ั€ะพะปะปะตั€ะพะฒ STM32U585AI ั ัะดั€ะพะผ Arm Cortex-M33. ะŸะตั€ะฒะฐั ะบะพะผะฐะฝะดะฐ ัะพะทะดะฐะฒะฐะปะฐ ะฟั€ะพัˆะธะฒะบัƒ ะฝะฐ ะกะธ, ะฐ ะฒั‚ะพั€ะฐั ะฝะฐ Rust.

ะขะตัั‚ะธั€ะพะฒะฐะฝะธะต ะฒั‹ะฟะพะปะฝะตะฝะฝะพะน ั€ะฐะฑะพั‚ั‹ ะฝะต ะฒั‹ัะฒะธะปะพ ะทะฐะผะตั‚ะฝั‹ั… ะฟั€ะตะธะผัƒั‰ะตัั‚ะฒ ะฒ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะธ ัะทั‹ะบะฐ ะกะธ ะฒะผะตัั‚ะพ Rust ะฟั€ะธ ั€ะฐะทั€ะฐะฑะพั‚ะบะต ะฟั€ะพัˆะธะฒะพะบ ะดะปั ะผะธะบั€ะพะบะพะฝั‚ั€ะพะปะปะตั€ะพะฒ ะฟั€ะธ ัั€ะฐะฒะฝะตะฝะธะธ ะฟะพั‚ั€ะตะฑะปะตะฝะธั ะฟะฐะผัั‚ะธ ะธ ะฟั€ะพะธะทะฒะพะดะธั‚ะตะปัŒะฝะพัั‚ะธ. ะ‘ะพะปะตะต ั‚ะพะณะพ, ะทะฐะดะตะนัั‚ะฒะพะฒะฐะฝะธะต ะฝะฐะฟะธัะฐะฝะฝะพะณะพ ะฝะฐ Rust ัะธัั‚ะตะผะฝะพะณะพ runtime ะพั‚ ะพั‚ะบั€ั‹ั‚ะพะณะพ ะฟั€ะพะตะบั‚ะฐ Ariel OS ะฟะพะทะฒะพะปะธะปะพ ะดะพะฑะธั‚ัŒัั ะฟะพั‚ั€ะตะฑะปะตะฝะธั ะฟะฐะผัั‚ะธ ะฒ ะฟั€ะพะตะบั‚ะต ะฝะฐ Rust ะฝะธะถะต, ั‡ะตะผ ะฒ ั€ะตะฐะปะธะทะฐั†ะธะธ ะฝะฐ ัะทั‹ะบะต ะกะธ, ะธัะฟะพะปัŒะทัƒัŽั‰ะตะน ั‚ั€ะฐะดะธั†ะธะพะฝะฝั‹ะน ัั‚ะตะบ ะดะปั ั€ะฐะทั€ะฐะฑะพั‚ะบะธ ะฟั€ะพัˆะธะฒะพะบ ะฝะฐ ะฑะฐะทะต ะฑะธะฑะปะธะพั‚ะตะบะธ newlib.

ะ ะฐะทะผะตั€ ั€ะตะทัƒะปัŒั‚ะธั€ัƒัŽั‰ะตะน ะฟั€ะพัˆะธะฒะบะธ ัะพัั‚ะฐะฒะธะป 84100 ะฑะฐะนั‚ ะฒ ะฟั€ะพะตะบั‚ะต ะฝะฐ Rust ะธ 76744 ะฑะฐะนั‚ะฐ ะฒ ะฟั€ะพะตะบั‚ะต ะฝะฐ ะกะธ (ะฝะฐ 10% ะผะตะฝัŒัˆะต), ะฝะพ ะฟะพั‚ั€ะตะฑะปะตะฝะธะต ะพะฟะตั€ะฐั‚ะธะฒะฝะพะน ะฟะฐะผัั‚ะธ ะฒ ะฟั€ะพัˆะธะฒะบะต ะฝะฐ Rust ะพะบะฐะทะฐะปะพััŒ ะทะฝะฐั‡ะธั‚ะตะปัŒะฝะพ ะฝะธะถะต โ€” 24640 ะฑะฐะนั‚ะพะฒ ะฟั€ะพั‚ะธะฒ 42608 ะฑะฐะนั‚ะพะฒ. ะงั‚ะพ ะบะฐัะฐะตั‚ัั ะฟั€ะพะธะทะฒะพะดะธั‚ะตะปัŒะฝะพัั‚ะธ, ั‚ะพ ะฟั€ะธ ั‚ะตัั‚ะธั€ะพะฒะฐะฝะธะธ ะฝะฐั‡ะฐะปัŒะฝั‹ั… ะฟั€ะพั‚ะพั‚ะธะฟะพะฒ, ั€ะฐะทั€ะฐะฑะพั‚ะฐะฝะฝั‹ั… ะทะฐ 6 ะฝะตะดะตะปัŒ, ั€ะตะฐะปะธะทะฐั†ะธั ะฝะฐ Rust ะฒ ะดะฒะฐ ั€ะฐะทะฐ ะพะฟะตั€ะตะถะฐะปะฐ, ั€ะตะฐะปะธะทะฐั†ะธัŽ ะฝะฐ ะกะธ, ะฝะพ ะพะฑะต ั€ะตะฐะปะธะทะฐั†ะธะธ ะทะฝะฐั‡ะธั‚ะตะปัŒะฝะพ ะพั‚ัั‚ะฐะฒะฐะปะธ ะพั‚ ั€ะฐัั‡ั‘ั‚ะฝะพะน ะผะฐะบัะธะผะฐะปัŒะฝะพะน ะฟั€ะพะธะทะฒะพะดะธั‚ะตะปัŒะฝะพัั‚ะธ. ะŸะพัะปะต 4 ะฝะตะดะตะปัŒ, ะฒั‹ะดะตะปะตะฝะฝั‹ั… ะฝะฐ ะพะฟั‚ะธะผะธะทะฐั†ะธัŽ, ะพะฑะต ั€ะตะฐะปะธะทะฐั†ะธะธ ะดะพัั‚ะธะณะปะธ ะฟั€ะธะผะตั€ะฝะพ ะพะดะธะฝะฐะบะพะฒะพะณะพ ั€ะตะทัƒะปัŒั‚ะฐั‚ะฐ, ะฑะปะธะทะบะพะณะพ ะบ ั€ะฐัั‡ั‘ั‚ะฝะพะผัƒ ะผะฐะบัะธะผัƒะผัƒ.



เจธเจฐเฉ‹เจค: opennet.ru
DDoS เจธเฉเจฐเฉฑเจ–เจฟเจ†, VPS VDS เจธเจฐเจตเจฐเจพเจ‚ เจตเจพเจฒเฉ€เจ†เจ‚ เจธเจพเจˆเจŸเจพเจ‚ เจฒเจˆ เจญเจฐเฉ‹เจธเฉ‡เจฏเฉ‹เจ— เจนเฉ‹เจธเจŸเจฟเฉฐเจ— เจ–เจฐเฉ€เจฆเฉ‹ ๐Ÿ”ฅ DDoS เจธเฉเจฐเฉฑเจ–เจฟเจ†, VPS VDS เจธเจฐเจตเจฐเจพเจ‚ เจจเจพเจฒ เจญเจฐเฉ‹เจธเฉ‡เจฏเฉ‹เจ— เจตเฉˆเฉฑเจฌเจธเจพเจˆเจŸ เจนเฉ‹เจธเจŸเจฟเฉฐเจ— เจ–เจฐเฉ€เจฆเฉ‹ | ProHoster