-
-
Notifications
You must be signed in to change notification settings - Fork 14.3k
Open
Labels
T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.Relevant to the release subteam, which will review and decide on the PR/issue.relnotes-tracking-issueMarks issues tracking what text to put in release notes.Marks issues tracking what text to put in release notes.
Milestone
Description
NOTE: Use the 📝 links to edit those that have a relnotes-tracking-issue,
and they will be updated when we regenerate the notes periodically (manually).
Version 1.93 (2026-01-22)
Language
- Add new
function_casts_as_integerlint
📝 - Add future-incompatibility warning for
...function parameters without a pattern outside ofexternblocks
📝 - Stabilize s390x
vectortarget feature andis_s390x_feature_detected!macro
📝 - Stabilize declaration of c-style variadic functions for the system ABI
📝 - Emit error when using some keyword as a
cfgpredicate
📝 - Future compat warning for repr(C) enums whose discriminant values do not fit into a c_int or c_uint
📝 - Forward-compatibility warning against ignoring repr(C) types as part of repr(transparent)
📝 - Stabilize
asm_cfg
📝 - Make deref_nullptr deny by default instead of warn
📝 - During const-evaluation, support copying pointers byte-for-byte
📝 - Add
const_item_interior_mutationslint to warn against calls which mutates an interior mutableconst-items
📝 - LUB coercions now correctly handle function item types, and functions with differing safeties
📝 - Allow
constitems that contain mutable references tostatic(which is very unsafe, but not always UB)
📝
Compiler
- Stabilize -Zno-jump-tables as -Cjump-tables=bool
📝 - Promote
riscv64a23-unknown-linux-gnuto Tier 2 (without host tools)
📝
Platform Support
Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
- Allow the global allocator to use thread-local storage and std::thread::current()
📝 - Stabilize
char_max_len - Make
BTree::appendnot update existing keys when appending an entry which already exists
📝 - Don't require
T: RefUnwindSafeforvec::IntoIter<T>: UnwindSafe
📝
Stabilized APIs
String::into_raw_partsVec::into_raw_parts
📝<[T]>::as_array<[T]>::as_array_mut<*const [T]>::as_array<*mut [T]>::as_array_mut
📝VecDeque::pop_front_ifVecDeque::pop_back_if
📝Duration::from_nanos_u128
📝
These previously stable APIs are now stable in const contexts:
Cargo
- Enable CARGO_CFG_DEBUG_ASSERTIONS in build scripts based on profile
- feat(tree): Support long forms for --format variables
- clean: Add --workspace support
Rustdoc
- Remove
#![doc(document_private_items)]
📝 - Include attribute and derive macros in search filters for "macros"
📝 - Include extern crates in search filters for
import
📝 - validate usage of crate-level doc attributes. This means if any of
html_favicon_url,html_logo_url,html_playground_url,issue_tracker_base_url, orhtml_no_sourceeither has a missing value, an unexpected value, or a value of the wrong type, rustdoc will emit the deny-by-default lintrustdoc::invalid_doc_attributes.
📝
Compatibility Notes
- Introduce
pin_v2into the builtin attributes namespace
📝 - Update bundled musl to 1.2.5
📝 - On Emscripten, the unwinding ABI used when compiling with
panic=unwindwas changed from the JS exception handling ABI to the wasm exception handling ABI. If linking C/C++ object files with Rust objects,-fwasm-exceptionsmust be passed to the linker now. On nightly Rust, it is possible to get the old behavior with-Zwasm-emscripten-eh=false -Zbuild-std, but it will be removed in a future release.
📝 - Error when
testattribute is applied to structs
📝
Internal Changes
These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.
Other
Metadata
Metadata
Assignees
Labels
T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.Relevant to the release subteam, which will review and decide on the PR/issue.relnotes-tracking-issueMarks issues tracking what text to put in release notes.Marks issues tracking what text to put in release notes.