Xeb 1.96.0

Tsab ntawv tshaj tawm tau muab luam tawm Xeb 1.96.0 — qhov tseeb tshaj plaws ruaj khov ntawm Rust programming language. Qhov hloov tshiab tau tso tawm lawm. 28 Tej zaum 2026 xyoo; nws tuaj yeem ntsia tau siv cov lus txib rustup hloov kho tshiab ruaj khov. Cov kev hloov pauv tseem ceeb suav nrog cov hom tshiab hauv core::range, kev ruaj khov ntawm cov qauv sib phim macros, kev ua kom nruj ntawm WebAssembly tsim tus cwj pwm, thiab kho rau ob qhov tsis muaj zog hauv Cargo.

Kev hloov pauv loj

  • Cov hom kab tshiab core::range::Range*.
    Cov hom kab tshiab tau ruaj khov hauv lub tsev qiv ntawv tus qauv: core::range::Range, RangeFrom, RangeInclusive, thiab lawv cov iterators cuam tshuam. Tsis zoo li cov hom qub los ntawm core::ops, cov kab tshiab tsis siv Iterator ncaj qha, tab sis raug hloov mus rau iterator ntawm IntoIterator. Qhov no tso cai rau cov kab no kom theej tau, uas yooj yim, piv txwv li, thaum khaws cia ib qho ntau yam ua ib qho qauv teb. Syntax zoo li 0..1 tam sim no tsim cov hom kab qub, tab sis nws tau npaj yuav raug tsiv mus rau cov hom tshiab hauv cov qauv yav tom ntej ntawm hom lus.

  • Ntxiv assert_matches! thiab debug_assert_matches!.
    Cov macros tshiab tso cai rau koj los xyuas seb tus nqi puas phim tus qauv uas tau muab. Qhov no zoo ib yam li lub tswv yim rau assert!(matches!(…)), tab sis yog tias muaj qhov yuam kev, qhov kev sawv cev debug ntawm tus nqi raug luam tawm, ua kom yooj yim rau kev kuaj mob. Cov macros no tsis tau ntxiv rau Prelude kom tsis txhob muaj kev tsis sib haum xeeb nrog cov crates sab nraud nrov, yog li lawv yuav tsum tau xa tawm los ntawm core lossis std.

  • Hloov tus cwj pwm ntawm WebAssembly lub hom phiaj.
    Xeb tsis dhau --allow-undefined mus rau tus txuas rau WebAssembly tsim lawm. Cov cim tsis tau txhais tam sim no raug kho raws li qhov yuam kev thaum lub sijhawm txuas, es tsis txhob hloov pauv mus rau kev xa khoom los ntawm "env" module. Qhov no yuav tsum ntes cov yuam kev tsim thiab cov npe cim tsis raug ua ntej. Tus cwj pwm qub tuaj yeem rov qab tau, yog tias xav tau, siv RUSTFLAGS = -Clink-arg = - allow-undefined lossis los ntawm kev qhia meej meej txog cov module wasm xa khoom siv # [link (wasm_import_module = "env")].

  • Cargo tau txais kev kho kom ruaj ntseg.
    Rust 1.96.0 kho ob qhov tsis zoo uas cuam tshuam rau cov neeg siv ntawm cov neeg sau npe sab nraud. CVE-2026-5223 Muaj feem cuam tshuam nrog kev tswj hwm cov symlinks hauv crate tarballs: ib pob khoom phem los ntawm lub npe sau npe sab nraud tuaj yeem sau dua lub cache ntawm lwm pob khoom los ntawm tib lub npe sau npe. Pib nrog Rust 1.96.0, Cargo tsis lees txais cov ntaub ntawv crate uas muaj symlinks. CVE-2026-5222 Qhov teeb meem no cuam tshuam txog URL normalization hauv cov npe sau tsis tshua muaj thiab, nyob rau hauv qee qhov xwm txheej tsawg, tuaj yeem ua rau Cargo token raug xa mus rau qhov chaw sau npe phem. Raws li pab pawg Rust, cov neeg siv crates.io tsis raug cuam tshuam los ntawm cov teeb meem no.

  • Kev hloov pauv ntawm hom lus.
    Daim ntawv tso tawm muaj xws li: Ob peb qhov kev kho me me thiab kev txhim kho: Tso cai dhau expr metavariables ntawm macros mus rau cfg, kho qhov tsis muaj hom casting hauv tuple expressions, kho cov xwm txheej tsis tshua muaj ntawm cov lus qhia tsis raug rau cov lus sib cav ua haujlwm, ntxiv kev txhawb nqa rau s390x vector registers hauv inline assembly, thiab rov tso cai ManuallyDrop constants ua templates - qhov no kho qhov regression qhia hauv Rust 1.94.0.

  • Kev hloov pauv hauv compiler thiab platforms.
    rau LinuxKev txhawb nqa kev so kom txaus ntawm qhov txuas tau qhib rau LoongArch lub hom phiaj—kev ua kom zoo dua qhov txuas uas ua rau qee qhov kev hloov pauv thiab kev hu tom qab kev xa cov lej. Rau riscv64gc-unknown-fuchsia, qhov kev teeb tsa pib tau hloov kho rau RVA22 profile nrog kev txhawb nqa rau vector extensions.

  • Cov kev hloov tshiab ntawm tsev qiv ntawv txheem.
    Kev txhawb nqa rau kev rov ua dua ntawm NonZero integer ranges tau ntxiv lawm. Kev tswj hwm tus tswv tsev nyob hauv SGX ntawm ToSocketAddr kuj tau kho, thiab lub ntsiab lus ntawm "nyeem tau / sau tau" nco tau meej meej hauv cov ntaub ntawv thiab cov ntawv cog lus sab hauv: tus pointer null tau raug tshem tawm ntawm lub ntsiab lus dav dav, thiab cov kev zam tam sim no tau teev tseg sib cais rau cov txheej txheem tshwj xeeb.

  • Cov APIs ruaj khov.
    Ntawm cov interfaces ruaj khov yog assert_matches!, debug_assert_matches!, kev siv ntawm Los ntawm rau AssertUnwindSafe , LazyCell thiab LazyLock , nrog rau cov hom tshiab thiab cov iterators los ntawm core::range, suav nrog Range, RangeFrom, RangeToInclusive thiab lawv cov iterators.

  • Kev Thauj Khoom: Kev hloov pauv rau kev vam khom thiab cov ntaub ntawv.
    Ib qho kev vam khom tam sim no tuaj yeem teev ob qho tib si Git repository thiab lwm txoj kev sau npe: Git version yuav raug siv hauv zos, thiab registry version yuav raug siv thaum lub sijhawm tshaj tawm, zoo ib yam li tus cwj pwm nrog crates.io. Kev txhawb nqa rau target.'cfg(..)'.rustdocflags hauv Cargo configuration kuj tau ntxiv.

  • Tam sim no Rustdoc ua haujlwm cov ntaub ntawv kom raug dua.
    Cov ntawv sau API uas tsis siv lawm tam sim no tau muab ua cov ntaub ntawv ib txwm muaj, tsis muaj kev ua tiav tshwj xeeb yav dhau los ntawm qhov chaw dawb: pre-wrap. Tsis tas li ntawd, rustdoc tsis lints missing_doc_code_examples rau cov ntsiab lus hauv impl, thiab cov txheej txheem thiab cov haujlwm cuam tshuam tam sim no tau sib cais hauv cov ntawv qhia sidebar.

  • Tej zaum yuav muaj kev tsis sib haum xeeb.
    Cov kev tso tawm muaj ntau qhov kev hloov pauv uas yuav tshwm sim hauv cov lej tsis yog tus qauv: qhov layout ntawm qee qhov #[repr(Int)] enums tau kho rau hauv cov xwm txheej hnyav, thiab qee qhov tsis muaj txiaj ntsig tsis muaj txiaj ntsig hauv Pin tau raug kaw. , WebAssembly tsim tam sim no poob rau ntawm cov cim tsis tau txhais, qhov tsis raug cai #![reexport_test_harness_main] attribute tau feature gated dua, qhov kev xaiv -Csoft-float tau raug tshem tawm, thiab qhov tsawg kawg nkaus sab nraud LLVM version tau raug nce mus rau 21. Rau AVR, hom c_double tau raug hloov mus rau f32, txij li C doubles yog 32-bit los ntawm lub neej ntawd ntawm cov hom phiaj no.

Tau qhov twg los: linux.org.ru ua

Yuav txhim khu kev qha hosting rau cov chaw nrog DDoS tiv thaiv, VPS VDS servers 🔥 Yuav lub vev xaib hosting txhim khu kev qha nrog kev tiv thaiv DDoS, VPS VDS servers | ProHoster