Suositut: Tiedot päivitetty 26. lokakuuta 2026

Kategoriat

Internet1 355
Viestintä321
Ääni ja video898
Grafiikka ja suunnittelu539
Toimisto ja tuottavuus1 120
Kehitystyökalut3 132
Tekoälytyökalut527
Tietoturva ja yksityisyys385
Järjestelmätyökalut3 113
Pelit523
Opiskelu ja tiede239
Verkko ja IT284

Rust (GNU): vanhemmat versiot ja versiohistoria

A language empowering everyone to build reliable and efficient software.

Rust (GNU) -ohjelmasta on luettelossa 75 versiota, ensimmäinen 25. lokakuuta 2021 ja uusin 1.99.1. Jokainen versio linkittää julkaisijan omiin asennustiedostoihin.

2021: 11 11 21 2022: 12 12 22 2023: 16 16 23 2024: 11 11 24 2025: 12 12 25 2026: 13 13 26

75 versiota 5 vuoden aikana · noin 15 vuodessa

VersioPäivämääräKokoTiedostot
1.99.1Uusin 15. lokakuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.99.0 1. lokakuuta 2026 — 64-bittinen MSI32-bittinen MSI
Muutosloki
Language
- Add allow-by-default raw_borrows_via_references lint that checks for references that decay immediately into raw borrows
- Extend unconditional_panic lint to function calls that panic when the chunks/windows size is zero
- Stabilize C-variadic function definitions
- Stabilize the ability to use #[unsafe(naked)] functions to define C-variadic functions (#![feature(c_variadic_naked_functions)]).
- Trait methods are now resolved on an adjusted never type (producing a FCW)
- Coerce from inference variables to trait objects if the inference variable is related via subtyping to a type that is known to be Sized
- Stabilize #[my_macro] mod foo;. This allows outlined modules (mod foo;) anywhere in the body of a custom attribute or derive macro.
- Fix the overflowing_literals lint with repeated negation. For instance, it will now no longer lint on --128_i8, which is already detected by the arithmetic_overflow lint.
- Add POSIX symbols to the invalid_runtime_symbol_definitions and suspicious_runtime_symbol_definitions lints
- Lint unused #[path] attributes on inline modules
- Enable unreachable_cfg_select_predicates lint as part of unused lint group
- Stabilize passing 128-bit integers via vector registers with asm! on x86
- Explicitly document that some allocations are allowed to grow in-place (but none are allowed to shrink)
- We now guarantee that the contents of an UnsafeCell can be accessed without going through get
- The invalid_reference_casting lint was adjusted accordingly
- Account for globally enabled target features in global_asm!
- Warn if an invalid doc attribute is used on a macro invocation

Compiler
- Convert -Ctarget-cpu into a target-modifier for AVR, AMDGCN and NVPTX
- Enable static_position_independent_executables on all gnu targets
- When providing a suggestion about a missing method, rustc now prefers an exactly matching name from a doc alias attribute over a similarity search from other method names. If your new users sometimes expect a method under a different name, adding a doc alias will now help them find it via rustc suggestions, in addition to helping them find it via rustdoc search: When suggesting method names, prefer exact doc aliases over similar names

Platform Support
- Promote riscv64-unknown-linux-musl to Tier 2 with host tools
Refer to Rust's platform support page for more information on Rust's tiered platform support.

Libraries
- Iteration on RangeInclusive (a..=b ranges) is now optimized better in some circumstances. As a side effect of this, the behavior of RangeInclusive values that has already been exhausted (as an iterator) has changed. For example, the return values of start() and end() on such ranges may return different values, and using such ranges as slice indexes may have different behavior. These behaviors were not guaranteed to be stable, so these changes are considered to not be breaking changes.
- Relax transmute_copy to accept ?Sized types
- Update transmute_copy to use a non-unwinding panic
- Don't escape U+FF9E and U+FF9F in escape_debug_ext
- Re-export core::fmt::NumBuffer in alloc (and std)

Stabilized APIs
- IntoIterator for Box<[T; N]>
- IntoIterator for &Box<[T; N]>
- IntoIterator for &mut Box<[T; N]>
- VecDeque::retain_back
- core::ffi::VaList
- Box::into_non_null
- Box::from_non_null
- Vec::into_parts
- Vec::from_parts
- core::mem::size_of_val_raw
- core::mem::align_of_val_raw
- core::alloc::Layout::for_value_raw
- String::from_utf8_lossy_owned
- string::FromUtf8Error::into_utf8_lossy
- FusedIterator for StepBy<I>
- std::fs::set_times
- std::fs::set_times_nofollow

Cargo
- Add a new built-in profile debug. This is a preparation for transitioning the dev profile away from debugging to give a saner default for faster development iterations. Currently there is no difference between dev and debug profiles. docs #17214
- Workspace members on edition 2024 or later can now override an inherited workspace dependency's default-features field. For example, serde = { worksp
1.98.1 3. syyskuuta 2026 — 64-bittinen MSI32-bittinen MSI
Muutosloki
- rustc: fix miscompilation in generating vtables
1.98.0 20. elokuuta 2026 — 64-bittinen MSI32-bittinen MSI
Muutosloki
Language
- Allow shortening lifetime of &mut when unsize-coercing, even in an invariant position. For example, you can now coerce a Cell<&'long mut i32> to a Cell<&'short mut dyn Send>. Such shortenings were already previously allowed when coercing a &mut to a &, or coercing a & to a &.
- Add deny-by-default invalid_runtime_symbol_definitions lint and warn-by-default suspicious_runtime_symbol_definitions lint
- The lints currently specifically targets core runtime symbols like memcmp, memset, strlen, ... and is planned to be expanded in the next few releases.
- Add warn-by-default c_void_returns lint to check core::ffi::c_void as a return type
Platform Support
- Add powerpc64-unknown-linux-gnuelfv2 as Tier 3
- Add aarch64-unknown-linux-pauthtest as Tier 3 target
- Promote thumbv7a-none-eabi to Tier 2
- Promote thumbv7a-none-eabihf to Tier 2
- Promote thumbv7r-none-eabi to Tier 2
- Promote thumbv7r-none-eabihf to Tier 2
- Promote thumbv8r-none-eabihf to Tier 2
Refer to Rust's platform support page for more information on Rust's tiered platform support.
Libraries
- Change Location<'_> lifetime to 'static in Panic[Hook]Info
- Document panic in RangeInclusive::from(legacy::RangeInclusive)
- Document that ManuallyDrop's Box interaction has been fixed
- Stabilize LoongArch CRC Intrinsics
- The derive macro is available at {core,std}::derive. This was previously unintentionally stabilized in 1.96, but is now explicitly accepted as a stabilized API.
- Please note that the MSRV for {core,std}::derive will be 1.96, and not 1.98.
Stabilized APIs
- str::substr_range
- [T]::subslice_range
- core::fmt::NumBuffer
- <{integer}>::format_into
- Send/Sync for std::process::CommandArgs
- {fN}::algebraic_add
- {fN}::algebraic_sub
- {fN}::algebraic_mul
- {fN}::algebraic_div
- {fN}::algebraic_rem
- NonZero<{integer}>::from_str_radix
- String::from_utf16le
- String::from_utf16le_lossy
- String::from_utf16be
- String::from_utf16be_lossy
- [T]::strip_circumfix
- str::strip_circumfix
- Atomic<T>::from_mut
- Atomic<T>::get_mut_slice
- Atomic<T>::from_mut_slice
- std::range::legacy
Compatibility Notes
- If fully elided, lifetime bounds of trait object types may now resolve differently or even get rejected in very specific niche scenarios
- Error in more cases of ambiguous imports
- Switch the destructors implementation for thread locals on Windows to use Fiber Local Storage (FLS)
- Convert some cases of the ambiguous_glob_imports lint into a hard error
- Where-bounds of the form Type = Type and Type == Type are no longer syntactically allowed
- Ensure Send/Sync is not implemented for std::env::Vars{,Os}
- Fix that in some attributes, arguments were not properly rejected
- repr(transparent) is now more strict about which fields have "trivial" layout and hence can be ignored: repr(C) types, types with private fields, and #[non_exhaustive] types are no longer considered "trivial"
- Correctly check whether types have equal size in transmute() when some repr attributes are involved.
- More characters are escaped when printing strings and chars
- Implement fast path for derive(PartialOrd) when deriving Ord This can break crates in practice where a type's PartialOrd and Ord impls were inconsistent with each other.
- Add temporary scope to assert_eq and assert_ne
- Closed a hole in the pattern matching structural equality check, preventing cases where a match of a constant would be allowed, despite disagreeing with a manually written PartialEq implementation, when a derive(PartialEq) implementation for that type also exists.
- On Emscripten the WASM exception handling ABI is now unconditionally used The -Zemscripten-wasm-eh=false flag to switch back to JS exceptions has been removed.
- The UNSAFE_CODE lint is now consistently emitted for all unsafe attributes
- Solaris: remove File::lock implementation, it has the wrong semantics (return "unsupported" instead)
- Windows-gnu targets now specify baseline tools versions
- rustfmt now discovers module files that are 
1.97.1 16. heinäkuuta 2026 — 64-bittinen MSI32-bittinen MSI
Muutosloki
- rustc: Fix miscompilation in LLVM optimization This backports an LLVM submodule bump to include the LLVM-side fix and a revert of the rustc change that is one known trigger for the bug. The rustc side revert should not be strictly necessary but is done out of abundance of caution.
1.97.0 9. heinäkuuta 2026 — 64-bittinen MSI32-bittinen MSI
Muutosloki
Language
- Consider Result<T, Uninhabited> and ControlFlow<Uninhabited, T> to be equivalent to T for must use lint
- Add allow-by-default dead_code_pub_in_binary lint for unused pub items in binary crates
- Stabilize the div32, lam-bh, lamcas, ld-seq-sa and scq target features
- Stabilize cfg(target_has_atomic_primitive_alignment)
- Allow trailing self in imports in more cases

Platform Support
- nvptx64-nvidia-cuda: drop support for old architectures and old ISAs
Refer to Rust's platform support page for more information on Rust's tiered platform support.

Stabilized APIs
- Default for RepeatN
- Copy for ffi::FromBytesUntilNulError
- Send for std::fs::File on UEFI
- <{integer}>::isolate_highest_one
- <{integer}>::isolate_lowest_one
- <{integer}>::highest_one
- <{integer}>::lowest_one
- <{integer}>::bit_width
- NonZero<{integer}>::isolate_highest_one
- NonZero<{integer}>::isolate_lowest_one
- NonZero<{integer}>::highest_one
- NonZero<{integer}>::lowest_one
- NonZero<{integer}>::bit_width
These previously stable APIs are now stable in const contexts:
- char::is_control

Cargo
- Stabilize build.warnings config. This controls how lint warnings from local packages are treated. Useful for enforcing a warning-free build in CI, replacing -Dwarnings. docs
- Stabilize resolver.lockfile-path config. This allows specifying the path to the lockfile to use when resolving dependencies. Useful when working with read-only source directories. docs
- cargo-clean: Error when --target-dir doesn't look like a Cargo target directory. This prevents accidental deletion of non-target directories.
- Add -m shorthand for --manifest-path
- Remove curl dependency from crates-io crate

Rustdoc
- Stabilize --emit flag
- Stabilize --remap-path-prefix

Compatibility Notes
- Emit a future-compatibility warning when relying on f32: From<{float}> to constrain {float}
- Rust will use the v0 symbol mangling scheme by default. This may cause some tools (such as debuggers or profilers, especially with old versions) to fail to demangle symbols emitted by Rust. It may also cause the formatting of text in backtraces to change.
- Prevent deref coercions in pin!, in order to prevent unsoundness. The most likely case where this might impact users is: writing pin!(x) where x has type &mut T will now always correctly produce a value of type Pin<&mut &mut T>, instead of sometimes allowing a coercion that produces a value of type Pin<&mut T>. This coercion was previously incorrectly allowed since Rust 1.88.0.
- Deprecate std::char constants and functions
- Warn on linker output by default
- Remove hidden f64 methods which have been deprecated since 1.0
- report the varargs_without_pattern lint in deps
- Forbid passing generic arguments to module path segments even if the module reexports a generic enum variant
- Error on invalid macho link_section specifier
- The encoding of certain enums have changed. This is not a breaking change, as it only applies to enums without layout guarantees, but is noted here as we've seen people impacted from having made assumptions about the layout algorithm.
- Error on #[export_name = "..."] where the name is empty
- Syntactically reject tuple index shorthands in struct patterns
- validate #[link_name = "..."] & #[link(name = "...")] parameters
- On Windows, after calling shutdown on a socket to shut down the write side, attempting to write to the socket will now produce a BrokenPipe error rather than Other. Map WSAESHUTDOWN to io::ErrorKind::BrokenPipe
1.96.1 30. kesäkuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.96.0 3. kesäkuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.95.0 23. huhtikuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.94.1 26. maaliskuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.94.0 17. maaliskuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.93.1 14. helmikuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.93.0 26. tammikuuta 2026 — 64-bittinen MSI32-bittinen MSI
1.92.0 13. joulukuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.91.1 10. marraskuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.91.0 5. marraskuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.90.0 18. syyskuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.89.0 27. elokuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.88.0 26. kesäkuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.87.0 16. toukokuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.86.0 4. huhtikuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.85.1 28. maaliskuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.85.0 21. helmikuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.84.1 30. tammikuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.84.0 9. tammikuuta 2025 — 64-bittinen MSI32-bittinen MSI
1.83.0 29. marraskuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.82.0 23. joulukuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.81.0 6. syyskuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.80.1 8. elokuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.80.0 25. heinäkuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.79.0 14. kesäkuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.78.0 2. toukokuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.77.2 9. huhtikuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.77.1 28. maaliskuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.77.0 26. maaliskuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.76.0 8. helmikuuta 2024 — 64-bittinen MSI32-bittinen MSI
1.75.0 28. joulukuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.74.1 7. joulukuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.74.0 16. marraskuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.73.0 5. lokakuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.72.1 20. syyskuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.72.0 25. elokuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.71.1 4. elokuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.71.0 13. heinäkuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.70.0 1. kesäkuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.69.0 20. huhtikuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.68.2 29. maaliskuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.68.1 23. maaliskuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.68.0 10. maaliskuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.67.1 9. helmikuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.67.0 26. tammikuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.66.1 11. tammikuuta 2023 — 64-bittinen MSI32-bittinen MSI
1.66.0 16. joulukuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.65.0 4. marraskuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.64.0 23. lokakuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.63.0 21. elokuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.62.1 21. heinäkuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.62.0 19. heinäkuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.61.0 19. toukokuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.60.0 7. huhtikuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.59.0.0 24. helmikuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.58.1.0 24. tammikuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.58.0.0 24. tammikuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.57.0.0 10. tammikuuta 2022 — 64-bittinen MSI32-bittinen MSI
1.56.1.0 3. marraskuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.55.0.0 24. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.54.0.0 24. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.53.0.0 24. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.52.1 24. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.52.0 24. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.51.0 24. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.50.0 25. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.45.2 25. lokakuuta 2021 — 64-bittinen MSI
1.44.0 25. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI
1.43.1 25. lokakuuta 2021 — 64-bittinen MSI32-bittinen MSI

Suosituin kategoriassa Ohjelmointikielet ja SDK:t

Näytä kaikki
  1. Go Programming LanguageOhjelmointikielet ja SDK:t
  2. LLVMOhjelmointikielet ja SDK:t · LLVM
  3. DenoOhjelmointikielet ja SDK:t · Deno Land Inc.
  4. CMakeOhjelmointikielet ja SDK:t · Kitware
  5. YarnOhjelmointikielet ja SDK:t · Yarn Contributors
  6. CcacheOhjelmointikielet ja SDK:t · Joel Rosdahl
  7. sbtOhjelmointikielet ja SDK:t · Lightbend, Inc.
  8. BOINCOhjelmointikielet ja SDK:t · Space Sciences Laboratory, U.C. Berkeley
  9. Dart SDKOhjelmointikielet ja SDK:t · Google
  10. NVM for WindowsOhjelmointikielet ja SDK:t · Ecor Ventures LLC

Lisää julkaisijalta The Rust Project Developers

Näytä kaikki
  • rust-analyzerOhjelmointikielet ja SDK:t · The Rust Project Developers
  • Rust (MSVC)Ohjelmointikielet ja SDK:t · The Rust Project Developers
  • Rust (GNU LLVM)Ohjelmointikielet ja SDK:t · The Rust Project Developers

Tunnisteet

Jaa