Ad
 
Learn More
Favicon of Rust Releases

Rust Releases

Great

Rust • Last updated 6 days ago

Activity Score

85%
Great
Recency:100%
Cadence:50%
Completeness:100%
Health:100%

Recent Updates

Rust 1.98.0

Rust 1.97.1

Rust 1.97.0

Rust 1.96.1

Rust 1.96.0

Rust 1.95.0

Rust 1.94.1

Rust 1.94.0

Rust 1.93.1

Rust 1.93.0

Uniform Changelog API

Access Rust changelog updates through our uniform API. Same JSON structure across all sources — no adapter-specific parsing needed.

API Endpoint
GET https://watchchangelog.com/api/v1/entries?source=rust.releases
Response Sample
{
  "source": "rust.releases",
  "vendor": "Rust",
  "id": "tag:github.com,2008:Repository/724712/1.98.0",
  "published_at": "2026-08-20T18:05:33.000Z",
  "title": "Rust 1.98.0",
  "url": "https://github.com/rust-lang/rust/releases/tag/1.98.0",
  "summary": "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 defined in cfg_select! This may cause more code to be formatted which was previously ignored.",
  "tags": [
    "Rust",
    "rust.releases",
    "programming-language",
    "rust"
  ]
}

Get Your Free API Key

Sign up to access the full changelog API. All public sources are free — no credit card required.

Sign Up Free →

Tags:

programming-languagerust

Related Sources

Favicon

 

  
  
Favicon

 

  
  
Favicon

 

  
  

Share: