ืื ืืขืืืื ื ืคืื ืืขืจ ืืขื ืขืจืึทื-ืฆืืืขืง ืคึผืจืึธืืจืึทืืืื ื ืฉืคึผืจืึทื Rust 1.74, ืืขืืจืื ืืขื ืืืจื ืื ืืึธืืืืืึท ืคึผืจืืืขืงื, ืึธืืขืจ ืืืฆื ืืขืืืขืืึธืคึผืขื ืืื ืืขืจ ืื ืึธืืกืคึผืืกืื ืคืื ืื ืคืจืืึท ื ืึทื-ื ืืฅ ืึธืจืืึทื ืืืึทืฆืืข Rust Foundation, ืืื ืืจืืืก. ืื ืฉืคึผืจืึทื ืืื ืคืึธืืงืืกื ืืืืฃ ืืืงืึธืจื ืืืืขืจืงืืึทื ืืื ืืื ืื ืืืื ืฆื ืืขืจืืจืืืื ืืืื ืคึผืึทืจืึทืืขืืืืึทื ืืื ืึทืจืืขื ืืืจืืคืืจืื ื, ืืื ืืืกืืืืื ืื ื ืืฆื ืคืื ืึท ืืืกื ืงืึทืืขืงืืขืจ ืืื ืจืื ืืืืข (ืจืื ืืืืข ืืื ืจืืืืกื ืฆื ืืงืขืจืืืง ืื ืืืืึทืืืืืืฉืึทื ืืื ืืืฉืึทืื ืคืื ืื ื ืึธืจืืึทื ืืืืืืึธืืขืง).
ืจืึทืกื ืก ืืึผืจืื ืคืึทืจืืืึทืืืื ื ืืขืงื ืืงืก ืืึทืคืจืืึทืขื ืื ืืขืืืขืืึธืคึผืขืจ ืคืื ืืืึทืื ืืึทื ืืคึผืืึทืืืืฉืึทื ืขืจืจืึธืจืก ืืื ืืึทืฉืืฆื ืงืขืื ืคึผืจืึธืืืขืืก ืืืึธืก ืฉืืืืขื ืคึฟืื ื ืืืขืจืืง-ืืืจืื ืืึผืจืื ืืึทื ืืคึผืืึทืืืืฉืึทื, ืึทืืึท ืืื ื ืึธื-ืคืจืื ืึทืงืกืขืก, ื ืึทื ืืืึทืื ืืืคืขืจืึทื ืกืื, ืืึทืคืขืจ ืึธืืืืขืจืจืึทื ื, ืืื ืื ืืื. ืฆื ืคืึทืจืฉืคึผืจืืืื ืืืืืจืขืจืื, ืขื ืฉืืจ ืคึฟืึทืจืืึทืืืื ื ืืื ืคืืจื ืืืคึผืขื ืืึทื ืกืื, ืื ืคึผืจืืืขืงื ืืื ืืขืืืขืืึธืคึผืื ื ืื ืงืึทืจืืึธ ืคึผืขืงื ืคืึทืจืืืึทืืืขืจ. ืื crates.io ืจืืคึผืึทืืึทืืึธืจื ืืื ืืขืฉืืืฆื ืคึฟืึทืจ ืืึธืกืืื ื ืืืืืจืขืจืื.
ืืืงืึธืจื ืืืืขืจืงืืึทื ืืื ืขื ืคืึธืจืกื ืืื ืจืืกื ืืื ืื ืงืึทืืคึผืืืืื ื ืฆืืื ืืืจื ืจืขืคึฟืขืจืขื ืฅ ืงืึธื ืืจืึธืืืจืื ื, ืึธืืืืฉืขืงื ืึธืื ืขืจืฉืืคึผ ืืจืึทืงืื ื, ืึทืืืืฉืขืงื ืืขืื (ืกืงืึธืคึผืื ื) ืืึทืืจืึทืืืื ื, ืืื ืืึผืจืื ืึทืงืกืขืก ืืคืฉืืฆืื ื ืืื ืจืื ืืืืข. ืืฉืึทืืืขืจ ืืืื ืคึผืจืึธืืืืืขืก ืฉืืฅ ืงืขืื ืื ืืึทืืืฉืขืจ ืึธืืืืขืจืคืืึธืื, ืจืืงืืืืืขืจื ืึทื ืื ืืืขืจืืึทืืึทื ืืืึทืืืขืก ืืขื ืขื ืื ืืืืึทืืืืื ืืืืืขืจ ื ืืฆื, ืืื ืืขืกืขืจ ืืขืืช ืืึทื ืืืื ื ืืื ืืขืจ ื ืึธืจืืึทื ืืืืืืึธืืขืง, ื ืืฆื ืืขื ืืึทืืจืืฃ ืคืื ืืืคึผืืืึทืืึทืืึทื ืืึทืืืืึทืื ืืื ืืืขืจืืึทืืึทืื ืืืจื ืคืขืืืงืืึทื, ืืื ืึธืคืคืขืจืก ืฉืืึทืจืง ืกืืึทืืืง ืืืืคึผืื ื ืฆื ืืื ืึทืืืื ืืึทืืืฉืืงืึทื ืขืจืจืึธืจืก.
ืืืืคึผื ืืืืืฉืื:
- ืฆืืืขืืขืื ืื ืคืืืืงืืื ืฆื ืงืึทื ืคืืืืขืจ ืืื ื ืืฉืขืงืก ืืืจื ืื Cargo.toml ืืขืงืข ืืื ืื ืคึผืขืงื ืคืึทืจืืืึทืืืขืจ ืืึทืฉืืึทืืคึผืขืจืืขื. ืฆื ืืขืคืื ืืจื ืืื ื ืกืขืืืื ืืก, ืึทืืึท ืืื ืื ืขื ืืคืขืจ ืืืจืื (ืคืึทืจืืืขืจื, ืืืืงืขื ืขื, ืืืึธืจืขื ืขื, ืืึธืื), ื ืืึทืข ืกืขืงืฉืึทื ื "[ืืื ืฅ]" ืืื "[ืืืึธืจืงืกืคึผืึทืกืข.ืืื ืืก]" ืืขื ืขื ืคืืจืืขืืืืื, ืขื ืืขืจืื ืืขื ืืื ืืืึธืก ืืขื ืขื ืืขื ืืืขื ืืื ืืฉืืื ืืืขื ืืืจ ืืึทืื ืึท ืืึทืฉืืืก ืืืขืื ืจืืืืืืื ื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืึทื ืฉืืึธื ืคืื ืกืคึผืขืฆืืคืืฆืืจื ืื "-F", "-ื", "-ืื" ืืื "-ื" ืคืืึทืืก ืืืขื ืึทืกืขืืืึทืืื ื ืึธืืขืจ ืึทืืื ื ืื "#![ืคืึทืจืืืขืจื (ืึทื ืกืืืฃ_ืงืึธืืข)]" ืืื "#! :" ืึทืืจืืืืืฅ ืฆื ืื ืงืึธื) :enum_glob_use)]" ืงืขื ืขื ืืืฆื ืืืื ืืขืืืืื ื ืืื ืื ืงืึทืจืืึธ ืืึทื ืึทืคืขืกืืืืฉืึทื: [lints.rust] unsafe_code = "ืคืึทืจืืืขืจื" [lints.clippy] enum_glob_use = "ืืืืงืขื ืขื"
- ืื ืงืจืืื ืคึผืขืงื ืคืึทืจืืืึทืืืขืจ ืืื ืฆืืืขืืขืื ืื ืคืืืืงืืื ืฆื ืึธืืขื ืืึทืงืืื ืืืขื ืงืึทื ืขืงืืื ื ืฆื ืึท ืจืืคึผืึทืืึทืืึธืจื. ืื ืืงืขืจืืืง ืคืึทืจืฉืคึผืจืืืืื ื ืื ืงืืืื ืฉืืืฆื ืคึฟืึทืจ ืคึผืืืืกืื ื ืึธืืขื ืืึทืงืืืฉืึทื ืคึผืึทืจืึทืืขืืขืจืก ืืื ืืื ืืงืก ืงืจืึทืืขื ืืฉืึทื ืกืืึธืจื (ืืืืืจื ืืืืฃ libsecret), macOS (Keychain) ืืื Windows (Windows Credential Manager), ืึธืืขืจ ืื ืกืืกืืขื ืืื ืืืืืขืก ืืขืืืื ืืึทืืืฉืึทืืขืจ ืืื ืึทืืึทืื ืืืจ ืฆื ืึธืจืืึทื ืืืืจื ืึทืจืืขื ืืื ืคืึทืจืฉืืื ืคึผืจืึทืืืืืืขืจื ืคึฟืึทืจ ืกืืึธืจืื ื ืืื ืืืฉืขื ืขืจืืืืื ื ืืึธืงืขื ืก, ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืึท ืคึผืืืืื ืืื ืฆืืืขืืจืืื ืคึฟืึทืจ ื ืืฆื ืื 1Password ืคึผืึทืจืึธื ืคืึทืจืืืึทืืืขืจ. ืึธืืขื ืืึทืงืืืฉืึทื ืงืขื ืืืื ืคืืจืืื ืื ืืืจื ืื ืจืืคึผืึทืืึทืืึธืจื ืคึฟืึทืจ ืงืืื ืึธืคึผืขืจืึทืฆืืข, ื ืื ื ืึธืจ ืฆื ืืึทืฉืืขืืืงื ืึทื ืคึผืึทืงืึทืืืฉืึทื ืืขื ืขื ืืจืืืก. ~/.cargo/config.toml [ืจืขืืืกืืจื] ืืืืืืืข-ืงืจืขืืขื ืฉืึทื-ืคึผืจืึทืืืืืืขืจื = ["ืงืึทืจืืึธ: ืกืืืขื", "ืงืึทืจืืึธ: ืืืืกืขืงืจืขื"]
- ืกืืคึผืคึผืึธืจื ืคึฟืึทืจ ืคึผืจืึทืืืฉืขืงืฉืึทื ื ืคืื ืฆืืจืืงืงืืืขื ืืืคึผ (impl_trait_projections) ืืื ืกืืืืืึทืืืืื, ืึทืืึทืืื ื ืืื ืืื ื:: ืึทืกืกืึธืง ืฆื ืืืื ืืขืจืืื ื ืืื ืฆืืจืืงืงืืืขื ืืืืคึผืก ืึทืืึท ืืื "async fn" ืืื "->impl trait". ืกืืจืืงืืืจ ืจืึทืคึผืขืจ<'ืึท, ื>(&'ืึท ื); // ืึธืืคึผืืืง ืฆืืจืืงืงืืืขื ืืืืคึผืก ืืืึธืก ืืขืจืืึธื ืขื `ืืื`: impl Wrapper<'_, ()> { async fn async_fn () -> Self {/* โฆ */ } fn impl_trait () -> impl Iterator {/* โฆ */ } } ืืจืืื ืืจืืื <'ืึท> { ืืืคึผ ืึทืกืกืึธืง; fn new() -> Self::Assoc; } ืืืคึผื ืืจืืื <'_> ืคึฟืึทืจ () {ืืืคึผ ืึทืกืกืึธืง = (); fn new () {} } // ืึธืืคึผืืืง ืฆืืจืืงืงืืืขื ืืืืคึผืก ืืืึธืก ืืขืจืืึธื ืขื ืึท ืคึฟืึทืจืืื ืื ืืืคึผ: impl<'a, T: Trait<'a>> Wrapper<'a, T> { async fn mk_assoc() -> T::Assoc { /* โฆ */ } fn a_few_assocs() -> ืืืคึผื ืืืขืจืึทืืึธืจ { /* โฆ */ } }
- ื ื ืืึทืข ืืืื ืคืื ืื API ืืื ืืจืืืขืจืืขืคืืจื ืฆื ืืขืจ ืงืึทืืขืืึธืจืืข ืคืื โโืกืืึทืืื, ืึทืจืืึทื ืืขืจืขืื ื ืื ืืขืืืึธืืก ืืื ืืืคึผืืึทืืึทื ืฅ ืคืื ืืจืืืฅ ืืขื ืขื ืกืืืืืึทืืืืื:
- ืื "ืงืึธื ืกื" ืึทืืจืืืืื, ืืืึธืก ืืืืขืจืืึทื ื ืื ืืขืืืขืืงืืื ืคืื ื ืืฆื ืขืก ืืื ืงืืื ืงืึธื ืืขืงืกื ืึทื ืฉืืึธื ืคืื ืงืึทื ืกืืึทื ืฅ, ืืื ืืขื ืืฆื ืืื ืื ืคืึทื ืืงืฉืึทื ื:
- core::mem::transmute_copy
- str::is_ascii
- [u8]::ืืื_ืึทืกืกื
- core::num::ืกืึทืืืจืึทืืื ื
- impl ืคึฟืื ืคึฟืึทืจ std :: ืคึผืจืึธืฆืขืก :: ืกืืืืึธ
- impl ืคึฟืื ืคึฟืึทืจ std :: ืคึผืจืึธืฆืขืก :: ืกืืืืึธ
- impl From for std::process::Child {Stdin, Stdout, Stderr}
- impl From for std::process::Child {Stdin, Stdout, Stderr}
- std::ffi::ืึธืกืกืืจืื ื::from_encoded_bytes_unchecked
- std::ffi::ืึธืกืกืืจืื ื::into_encoded_bytes
- std::ffi::OsStr::from_encoded_bytes_unchecked
- std::ffi::ืึธืกืกืืจ::ืึทืก_ืขื ืงืึธืืขื_ืืืืขืก
- std::io::ืืขืืช::ืื ืืขืจืข
- ืืืคึผื TryFrom ืคึฟืึทืจ U16
- ืืืคึผื ืคึฟืื<&[ื; N]> ืคึฟืึทืจ ืืืขืง
- ืืืคึผื ืคึฟืื<&ืืื [ื; N]> ืคึฟืึทืจ ืืืขืง
- ืืืคึผื ืคืื <[ื; N]> ืคึฟืึทืจ Arc<[T]>
- ืืืคึผื ืคืื <[ื; N]> ืคึฟืึทืจ ืจืง <[ื]>
- ืื ืงืึทืืคึผืืืืขืจ, ืืึธืึธืืงืื, ื ืึธืจืืึทื ืืืืืืึธืืขืง, ืืื ืืืฉืขื ืขืจืืืืึทื ืึทืคึผืืึทืงืืืฉืึทื ืขืงืกืขืงืืืึทืืืขืก ืืึธืื ืืขืืืืงืกื ืจืขืงืืืืจืขืืขื ืฅ ืคึฟืึทืจ ืขืคึผื ืคึผืืึทืืคืึธืจืืก, ืืืฆื ืจืืงืืืืืจืื ื ืืืึท ืืื ืืกืืขืจ ืืึทืงืึธืก 10.12 ืกืืขืจืึท, ืืึธืก 10, ืืื tvOS 10 ืคืจืื ืืื 2016 ืฆื ืืืืคื.
- ืื ืืจืื ืืืจืื ืคืื ืฉืืืฆื ืืื ืืืคึผืืึทืืขื ืึทื ืคึฟืึทืจ ืื i686-pc-windows-gnullvm ืคึผืืึทืืคืึธืจืืข. ืื ืืจืื ืืืจืื ืื ืืืึทืืืื ืืงืขืจืืืง ืฉืืืฆื, ืึธืืขืจ ืึธื ืึธืืึทืืืืืื ืืขืกืืื ื, ืืืกืืึทืืข ืคืื โโืืึทืึทืืืขืจ ืืืืขื ืืื ืืืขืจืึทืคืึทืงืืืฉืึทื ืคืื ืงืึธื ืืืืืึทืืืืืื.
- ืื ืฆืืืืืืข ืืืจืื ืคืื ืฉืืืฆื ืคึฟืึทืจ ืื ืืึธืึธื ืืึทืจืืฉ64-ืืืืืึทืงืึทื ื-ืืึธืจื ืืฉื ืฆืื ืคึผืืึทืืคืึธืจืืข ืืื ืืืคึผืืึทืืขื ืึทื. ืื ืจืืข ืืืจืื ืคืื ืฉืืืฆื ืื ืืืึทืืืื ืึท ืคึฟืึทืจืืึทืืืื ื ืืึทืจืึทื ืืืจื.
ืืื ืืขืจืฆื, ืฆืืืื ืืขืฉืขืขื ืืฉื ืฉืืึทืืืช ืฆื ืื ืจืืกื ืฉืคึผืจืึทื ืงืขื ืขื ืืืื ืืืืขืจืงื:
- ืื OSTIF (Open Source Technology Improvement Fund), ืืืฉืืคื ืฆื ืคืืจืฉืืืจืงื ืื ืืืืขืจืืืื ืคืื ืขืคึฟืขื ืขื ืืงืืจ ืคึผืจืึทืืืฉืขืงืก, ืืื ืคืืจืขืคื ืืืขืื ืื ืจืขืืืืืืื ืคืื ืึท ืงืึธื ืืจืึธืืืจื ืคืื ืื RustVMM ืคึผืจืืืขืงื, ืืืึธืก ืืื ืงืึทืืคึผืึธืื ืึทื ืฅ ืคึฟืึทืจ ืฉืืคื ืืึทืกืง-ืกืคึผืขืฆืืคืืฉ ืืืืคึผืขืจืืืืืืขืจื ืืื ืืืืจืืืึทื ืืึทืฉืื ืืึธื ืืืึธืจืก (VMMs). ืงืึธืืคึผืึทื ืืขืก ืึทืืึท ืืื Intel, Alibaba, Amazon, Google, Linaro ืืื Red Hat ืึธื ืืืื ื ืขืืขื ืืื ืืขืจ ืึทื ืืืืืงืืื ื ืคืื ืื ืคึผืจืืืขืงื. Intel Cloud Hypervisor ืืื Dragonball ืืืืคึผืขืจืืืืืืขืจื ืืขื ืขื ืืขืืืขืืึธืคึผืขื ืืืืืจื ืืืืฃ RustVMM. ืื ืงืึธื ืืจืึธืืืจื ืืืฉืืขืืืงื ืื ืืืื ืงืืืึทืืืืขื ืคืื ืื ืงืึธื ืืึทืืข ืืื ืื ื ืืฆื ืคืื ืืขืงื ืืงืก ืืื ืื ืึทืจืงืึทืืขืงืืฉืขืจ ืืื ืืืคึผืืึทืืขื ืืืืฉืึทื ืึทืืืขื ืฆื ืืขืจืืจืืืื ืืึทืงืกืืืื ืืืืขืจืืืึทื. ืืขืฉืึทืก ืื ืงืึธื ืืจืึธืืืจื, 6 ืคึผืจืึธืืืขืืก ืืขื ืขื ืืืืขื ืึทืคืืื ืืืึธืก ืืื ื ืืฉื ืืึธืื ืึท ืืืจืขืงื ืคึผืจืึทื ืืืืฃ ืืืืขืจืงืืึทื.
- Google ืื ืืจืึธืืืืกื ืึท ื ืืึทืข ืืืคึผืืึทืืขื ืืืืฉืึทื ืคืื ืื ืืื ืืขืจ ืื ืืขืจืคึผืจืึธืกืขืกืก ืงืึธืืื ืืงืึทืฆืืข ืืขืงืึทื ืืืึทื, ืจืืจืืืึทื ืืื ืื ืจืืกื ืฉืคึผืจืึทื, ืฆื ืื ืืืืืื ื ืจืฉืืื ืคืื ืืื ืืงืก ืงืขืจื ืืขืืืขืืึธืคึผืขืจ. ืื ืจืืืืขืจืง ืืื ืืืจืืืขืงืึธืื ืืื ืึท ืืืื ืคืื ืึท ืคึผืจืืืขืงื ืฆื ืคืืจืฉืืืจืงื ืืืืขืจืืืื, ืืขืืขืจื ืืืืขืจ ืคึผืจืึธืืจืึทืืืื ื ืืขืงื ืืงืก ืืื ืคืึทืจืืจืขืกืขืจื ืื ืขืคืขืงืืืืืงืืึทื ืคืื ืืืขื ืืืคืืฆืืจื ืคึผืจืึธืืืขืืก ืืืขื ืืจืืขืื ืืื ืืึผืจืื ืืื ืึทื ืืจืืื (ืืืขืื 70% ืคืื ืึทืืข ืืขืคืขืจืืขื ืืืึทืื ืขืจืึทืืืืืืื ืืืืขื ืึทืคืืื ืืื ืึทื ืืจืืื ืืขื ืขื ืืขืคึฟืืจื ืืืจื ืขืจืจืึธืจืก ืืืขื ืืจืืขืื ืืื ืืึผืจืื ). ืื ืืืคึผืืึทืืขื ืืืืฉืึทื ืคืื ืืื ืืขืจ ืืื ืจืืกื ืืื ืึทืืฉืืืื ืคึผืึทืจืึทืื ืืื ืคืึทื ืืงืฉืึทื ืึทืืืื ืืื ืืขืจ ืึธืจืืืื ืขื ืืืขืจืกืืข ืืื ืื C ืฉืคึผืจืึทื, ืคึผืึทืกืื ืึทืืข AOSP (ืึทื ืืจืืื ืขืคึฟื ืืงืืจ ืคึผืจืึธืืขืงื) ืืขืกืฅ ืืื ืงืขื ืขื ืืืขืจื ืืขื ืืฆื ืฆื ืฉืึทืคึฟื ืืจืืขืื ืึทืืืฉืึทื ื ืคืื ืคืืจืืืืึทืจืข. ืื ืคืึธืจืฉืืขืืื ื ืคืื ืืืืืข ืืืคึผืืึทืืึทื ืฅ ืืื ืืขืขืจืขื ืืขืจ ืืขืืืืงืขืจ ืืืจืื (ืืืืืืืืฉืึทื ื ืื -1.96% ืืื +1.38%).
ืืงืืจ: opennet.ru