Repository navigation
Draft release notes for 1.100.0聽#163811
Description
Activity
cc @rust-lang/release
@rustbot ping relnotes-interest-group
- pinned this issue
on Oct 5, 2026 Hi relnotes-interest-group, this issue/PR could use some help in reviewing /
adjusting release notes. Could you take a look if available? Thanks <3cc @alex-semenyuk @jieyouxu @joshtriplett @lcnr @traviscross @weihanglo
- addedT-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.
on Oct 5, 2026 - addedneeds-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triagingThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
on Oct 5, 2026 - removedneeds-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triagingThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
on Oct 5, 2026 volatile: allow accesses to non-AM memory to trap
This belongs under "language", not "library". However... the link to the relnotes issue is missing, so I can't edit that.
feat(diag): Stabilize cargo-lints
I would link to https://doc.rust-lang.org/cargo/reference/lints.html, and also mention that users will now get warnings about unused dependencies, among other things.
docs: adopt rust-lang/rust's LLM usage policy
I don't think this needs relnotes
Re-stabilize build-dir layout v2
This should also have a link to https://blog.rust-lang.org/2026/03/13/call-for-testing-build-dir-layout-v2/
Reacted by Weihang Lo@theemathas agreed with you on all your points. For cargo we probably only need these things.
Introduced Cargo's own linting system that some Cargo warnings are now emitted as lints that users can control in the
[lints.cargo]table. This includes a built-in unused dependency check via thecargo::unused_dependencieslint. docs #17298Introduced minimum publish age configurations, also known as dependency cooldowns. When the relevant config is set, the resolver ignores versions published more recently than that, unless they are already in Cargo.lock.(RFC 3923) docs #17335
cargo-install: now uses the existing lockfile in the
.cratetarball by default.--lockedin cargo install becomes a no-op. #17388And prehaps the build dir layout as a compat note:
Cargo now uses a new directory layout for intermediate build artifacts. Tools that inspect the build directory may need to use Cargo鈥檚 JSON messages to locate build artifacts instead of relying on the build directory layout. The layout is not a stable interface and is subject to change. (build cache doc) #17354
See also Cargo's changelog: https://doc.rust-lang.org/nightly/cargo/CHANGELOG.html#cargo-1100-2026-11-12
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.100.0 (2026-11-12)
Language
馃摑
#[repr(..)]attributes馃摑
extern "custom"馃摑
dropping_references,dropping_copy_typesandundropped_manually_dropslints todrop_in_place馃摑
unfulfilled_lint_expectationsno longer fires on#[expect(dead_code)]inside code that is covered by a dead parents' diagnostic馃摑
馃摑
repr(align)fields in arepr(packed)type into a (deny-by-default) lint,aligned_fields_in_packed.馃摑
Compiler
-Cprofile-sample-use馃摑
馃摑
Platform Support
i686-pc-windows-gnuis now a tier 2 without host tools target馃摑
wasm32-wasip3to Tier 2馃摑
powerpc64-sony-ps3馃摑
Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
馃摑
ENOTSUPtoErrorKind::Unsupported馃摑
馃摑
Stabilized APIs
impl PartialEq<Cow<'_, [U]>> for Vec<T, A>impl PartialEq<Cow<'_, [U]>> for &[T]impl PartialEq<Cow<'_, [U]>> for &mut [T]馃摑
std::alloc::Allocatorstd::alloc::Globalstd::alloc::Systemimpl Allocator for Globalimpl Allocator for Systemimpl<A: Allocator> for &Aimpl<T: Allocator, A: Allocator> for Box<T, A>impl<A: Allocator> for &mut Aimpl<T: Allocator, A: Allocator> for Arc<T, A>impl<T: Allocator, A: Allocator> for Rc<T, A>Box::new_inBox::from_raw_inBox::from_non_null_inBox::into_raw_with_allocatorBox::into_non_null_with_allocatorBox::allocatorVec::new_inVec::with_capacity_inVec::from_raw_parts_inVec::from_parts_inVec::into_raw_parts_with_allocatorVec::into_parts_with_allocatorVec::allocator馃摑
Child::main_thread_handle馃摑
impl Default for std::sync::Once馃摑
bool::toggle馃摑
Box::take馃摑
Box::mapRc::mapArc::map馃摑
core::mem::DropGuard馃摑
std::mem::conjure_zst馃摑
These previously stable APIs are now stable in const contexts:
Cargo
--breakingRustdoc
invalid_markdown_tablerustdoc lint馃摑
Compatibility Notes
if lets may cause new errors馃摑
馃摑
Infallibleis now a type alias to!!on all editions馃摑
boxpatterns are no longer syntactically allowed馃摑
馃摑
str::escape_debug馃摑
macro_rulesexprmetavariable grouping馃摑
Iterator::{min,max}(_by_key)changed whichOrdmethods they use. This cannot change behaviour (other than being potentially faster) for types correctly following theOrdrules, but may impact types with inconsistent trait implementations.馃摑
馃摑
馃摑
馃摑
VFPv3-D32FPU as a minimum, as they erroneously had thed32feature in their baseline list of features. Breakage introduced as a result of correcting this can be fixed by passing-Ctarget-feature=+d32to Rust.馃摑
馃摑
ambiguous_glob_imported_traitsfire in slightly more cases馃摑
+fix-cortex-a53-835769a default feature foraarch64-unknown-fuchsia馃摑
Boxhave been generalised to arbitrary allocators which may cause some new type inference errors馃摑
-Ctarget-feature/-Ctarget-cpuvalues that would alter the ABI are rejected as hard errors now.馃摑
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
--test-threadsand--colormultiple times, with later arguments overriding earlier ones馃摑