Update dependency rust to v1.80.0 - autoclosed #11
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.70.0
->1.80.0
Release Notes
rust-lang/rust (rust)
v1.80.0
Compare Source
v1.79.0
Compare Source
==========================
Language
const {}
expressions.redundant_lifetimes
lint to detect lifetimes which are semantically redundant.unnameable_types
lint for public types that can't be named.-C collapse-macro-debuginfo
and#[collapse_debuginfo]
.if
andmatch
expressions.const fn
calls.refining_impl_trait
lint.main
from other modules or crates.impl Trait
lifetime inferenceCompiler
-C strip
to only affect binaries, not artifacts like.pdb
.-Crelro-level
for controlling runtime link hardening.cfg
names and values at compile-time with--check-cfg
.Note that this only stabilizes the compiler part, the Cargo part is still unstable in this release.
aarch64-apple-visionos
andaarch64-apple-visionos-sim
tier 3 targets.riscv32ima-unknown-none-elf
tier 3 target.aarch64-pc-windows-gnullvm
,i686-pc-windows-gnullvm
, andx86_64-pc-windows-gnullvm
.Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
FromIterator
for(impl Default + Extend, impl Default + Extend)
.{Div,Rem}Assign<NonZero<X>>
onX
.clone_from()
in core/std.transmute
between pointers and integers.Stabilized APIs
{integer}::unchecked_add
{integer}::unchecked_mul
{integer}::unchecked_sub
<[T]>::split_at_unchecked
<[T]>::split_at_mut_unchecked
<[u8]>::utf8_chunks
str::Utf8Chunks
str::Utf8Chunk
<*const T>::is_aligned
<*mut T>::is_aligned
NonNull::is_aligned
<*const [T]>::len
<*mut [T]>::len
<*const [T]>::is_empty
<*mut [T]>::is_empty
NonNull::<[T]>::is_empty
CStr::count_bytes
io::Error::downcast
num::NonZero<T>
path::absolute
proc_macro::Literal::byte_character
proc_macro::Literal::c_string
These APIs are now stable in const contexts:
Atomic*::into_inner
io::Cursor::new
io::Cursor::get_ref
io::Cursor::position
io::empty
io::repeat
io::sink
panic::Location::caller
panic::Location::file
panic::Location::line
panic::Location::column
Cargo
lib.name
, always normalizing to_
.cargo add
.gitoxide
by default for listing files.Rustdoc
/
in docs to begin a search.Misc
Compatibility Notes
RustcEncodable
andRustcDecodable
are soft-destabilized, to be removedfrom the prelude in next edition.
wasm_c_abi
future-incompatibility lint will warn about use of thenon-spec-compliant C ABI.
Use
wasm-bindgen v0.2.88
to generate forward-compatible bindings.v1.78.0
Compare Source
==========================
Language
#[cfg(target_abi = ...)]
#[diagnostic]
namespace and#[diagnostic::on_unimplemented]
attributeillegal_floating_point_literal_pattern
invalid_reference_casting
to include references casting to bigger memory layoutnon_contiguous_range_endpoints
lint for singleton gaps after exclusive rangeswasm_c_abi
lint for use of older wasm-bindgen versionsThis lint currently only works when using Cargo.
indirect_structural_match
andpointer_structural_match
lints to match RFCPartialEq
-typed consts as patterns a hard errorrefining_impl_trait
lint into_reachable
,_internal
variantswhere
-boundstrait Trait: Auto {}
: allow upcasting fromdyn Trait
todyn Auto
Compiler
INVALID_DOC_ATTRIBUTES
lint deny by defaultuse
checkingTarget changes:
wasm32-wasip1
tier 2 (without host tools) targetwasm32-wasip2
tier 3 targetwasm32-wasi-preview1-threads
towasm32-wasip1-threads
arm64ec-pc-windows-msvc
tier 3 targetarmv8r-none-eabihf
tier 3 target for the Cortex-R52loongarch64-unknown-linux-musl
tier 3 targetRefer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
RwLock
with custom implementationchar::is_grapheme_extended
Stabilized APIs
impl Read for &Stdin
'static
lifetimes for severalstd::error::Error
related implementationsimpl<Fd: AsFd>
impl take?Sized
impl From<TryReserveError> for io::Error
These APIs are now stable in const contexts:
Barrier::new()
Cargo
rust-version
when generating lockfile--charset
via auto-detecting config valuetarget.<triple>.rustdocflags
officiallyMisc
--test-builder-wrapper
arg to support wrappers such as RUSTC_WRAPPER when building doctestsCompatibility Notes
This change helps users catch undefined behavior in their code, though the details of how much is checked are generally not stable.
impl Trait
arithmetic_overflow
lintconst
initializersThis code was accidentally accepted. The fix can break generic code that borrows a value of unknown type,
as there is currently no way to declare "this type has no interior mutability". In the future, stabilizing
the
Freeze
trait will allow proper support for such code.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.
rustc
with 1CGU onx86_64-pc-windows-msvc
rustc
with 1CGU onx86_64-apple-darwin
run-make
V2 infrastructure, arun_make_support
library and port over 2 tests as examplev1.77.2
Compare Source
===========================
std::process::Command
v1.77.1
Compare Source
===========================
This fixes a regression in 1.77 by reverting to the previous default.
Platforms other than Windows are not affected.
v1.77.0
Compare Source
==========================
Language
static_mut_refs
to warn on references to mutable statics.unstable_features
and make use of it in the compiler.only as a future compatiblity lint for now.
Compiler
soft_unstable
in future breakage reports.i128
andu128
16-byte aligned on x86-based targets.--verbose
in diagnostic output.unused_tuple_struct_fields
lint intodead_code
.with a temporary exception for Bevy.
fn
/const
items implied bounds and well-formedness check.riscv32{im|imafc}-unknown-none-elf
targets to tier 2.aarch64-unknown-illumos
hexagon-unknown-none-elf
riscv32imafc-esp-espidf
riscv32im-risc0-zkvm-elf
Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
From<&[T; N]>
forCow<[T]>
.vec.split_off(0)
.Stabilized APIs
array::each_ref
array::each_mut
core::net
f32::round_ties_even
f64::round_ties_even
mem::offset_of!
slice::first_chunk
slice::first_chunk_mut
slice::split_first_chunk
slice::split_first_chunk_mut
slice::last_chunk
slice::last_chunk_mut
slice::split_last_chunk
slice::split_last_chunk_mut
slice::chunk_by
slice::chunk_by_mut
Bound::map
File::create_new
Mutex::clear_poison
RwLock::clear_poison
Cargo
cargo::
.id
format asPackageIDSpec
.cargo-util-schemas
as a crate.Rustdoc
()
.localStorage
.Misc
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.
weird-exprs.rs
.v1.76.0
Compare Source
==========================
Language
ambiguous_wide_pointer_comparisons
that supersedesclippy::vtable_address_comparisons
Compiler
#[must_use]
pointers (in particular,Box<T>
whereT
is#[must_use]
) inunused_must_use
.$message_type
field to distinguish json diagnostic outputsRefer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
dbg!()
std::hash::{DefaultHasher, RandomState}
exportsRwLockReadGuard
andRwLockWriteGuard
's Debug impls.File::create
to work on hidden filesStabilized APIs
Arc::unwrap_or_clone
Rc::unwrap_or_clone
Result::inspect
Result::inspect_err
Option::inspect
type_name_of_val
std::hash::{DefaultHasher, RandomState}
These were previously available only through
std::collections::hash_map
.ptr::{from_ref, from_mut}
ptr::addr_eq
Cargo
See Cargo release notes.
Rustdoc
Compatibility Notes
This is expected to be upgraded to a warning by default in a future Rust
release. Some macros emit bindings with type
()
with user-provided spans,which means that this lint will warn for user code.
This may warn on benign problems too.
print_tts
This change can break some naive manual parsing of token trees in proc macro
code which expect a particular structure after
.to_string()
, rather than just arbitrary Rust code.IMPLIED_BOUNDS_ENTAILMENT
into a hard error from a lintAllocation behavior is currently not specified, nevertheless changes can be surprising.
See
impl FromIterator for Vec
for more details.
default
on free const itemsv1.75.0
Compare Source
==========================
Language
async fn
and return-positionimpl Trait
in traits.&mut T
inconst
contexts.usize
/isize
exhaustively with half-open ranges.char
has the same size and alignment asu32
.match
.Compiler
COINDUCTIVE_OVERLAP_IN_COHERENCE
to deny, and warn in dependencies.riscv64-linux-android
target spec.csky-unknown-linux-gnuabiv2hf
i586-unknown-netbsd
mipsel-unknown-netbsd
Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
Waker::clone_from
to avoid cloningWaker
s unnecessarily.BufRead
forVecDeque<u8>
.FusedIterator
forDecodeUtf16
when the inner iterator does.Not, Bit{And,Or}{,Assign}
for IP addresses.Default
forExitCode
.str::SplitInclusive
'sDoubleEndedIterator
implcfg(unix)
platforms.Stabilized APIs
Atomic*::from_ptr
FileTimes
FileTimesExt
File::set_modified
File::set_times
IpAddr::to_canonical
Ipv6Addr::to_canonical
Option::as_slice
Option::as_mut_slice
pointer::byte_add
pointer::byte_offset
pointer::byte_offset_from
pointer::byte_sub
pointer::wrapping_byte_add
pointer::wrapping_byte_offset
pointer::wrapping_byte_sub
These APIs are now stable in const contexts:
Ipv6Addr::to_ipv4_mapped
MaybeUninit::assume_init_read
MaybeUninit::zeroed
mem::discriminant
mem::zeroed
Cargo
[workspace.members]
automatically.Cargo.toml
manifests.Rustdoc
#[repr(transparent)]
if it isn't part of the public ABI.Compatibility Notes
const
contexts.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.
librustc_driver.so
with BOLT.rustc-codegen-cranelift
as rustup component on the nightly channel.v1.74.1
Compare Source
===========================
v1.74.0
Compare Source
==========================
Language
std::mem::Discriminant<T>
does not depend on any lifetimes in Tprivate_in_public
lint withprivate_interfaces
andprivate_bounds
per RFC 2145.Read more in RFC 2145.
#[repr(Rust)]
async
blocksimpl_trait_projections
Compiler
PATH
option for--print KIND=PATH
*-apple-ios-macabi
i686-pc-windows-gnullvm
as a tier 3 targetLibraries
From<OwnedFd/Handle>
for ChildStdin/out/errFrom<{&,&mut} [T; N]>
forVec<T>
whereT: Clone
From<[T; N]>
forRc<[T]>
andArc<[T]>
impl TryFrom<char> for u16
io_error_other
featureSaturating
typeStabilized APIs
core::num::Saturating
impl From<io::Stdout> for std::process::Stdio
impl From<io::Stderr> for std::process::Stdio
impl From<OwnedHandle> for std::process::Child{Stdin, Stdout, Stderr}
impl From<OwnedFd> for std::process::Child{Stdin, Stdout, Stderr}
std::ffi::OsString::from_encoded_bytes_unchecked
std::ffi::OsString::into_encoded_bytes
std::ffi::OsStr::from_encoded_bytes_unchecked
std::ffi::OsStr::as_encoded_bytes
std::io::Error::other
impl TryFrom<char> for u16
impl<T: Clone, const N: usize> From<&[T; N]> for Vec<T>
impl<T: Clone, const N: usize> From<&mut [T; N]> for Vec<T>
impl<T, const N: usize> From<[T; N]> for Arc<[T]>
impl<T, const N: usize> From<[T; N]> for Rc<[T]>
These APIs are now stable in const contexts:
core::mem::transmute_copy
str::is_ascii
[u8]::is_ascii
Cargo
Cargo.toml
, stabilize[lints]
--keep-going
build flag--help
outputcargo clean
, add--dry-run
flag and summary line at the endcargo update
, make--package
more convenient by being positionalcargo update
, clarify meaning of --aggressive as --recursive--dry-run
--package
flags) to resolve ambiguities.cargo/config.toml
, merge lists in precedence ordertarget.'cfg(..)'.linker
Rustdoc
Compatibility Notes
--extern
impl From<{&,&mut} [T; N]> for Vec<T>
is known to cause some inference failures with overly-generic code. In those examples using thetui
crate, the combination ofAsRef<_>
andInto<Vec>
leaves the middle type ambiguous, and the newimpl
adds another possibility, so it now requires an explicit type annotation.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.
None this cycle.
v1.73.0
Compare Source
==========================
Language
clippy::fn_null_check
lint asuseless_ptr_null_checks
.noop_method_call
warn by default.try
andasync
in macros.unconditional_recursion
lint detect recursive drops.invalid_reference_casting
lint is now deny-by-default (instead of allow-by-default)Compiler
.comment
section like GCC/Clang.extern "thiscall"
and"thiscall-unwind"
ABIs.aarch64-unknown-teeos
csky-unknown-linux-gnuabiv2
riscv64-linux-android
riscv64gc-unknown-hermit
x86_64-unikraft-linux-musl
x86_64-unknown-linux-ohos
wasm32-wasi-preview1-threads
as a tier 2 target.Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
Read
,Write
andSeek
impls forArc<File>
.io::Sink
intoio::Empty
.RefUnwindSafe
forBacktrace
ExitStatus
implementDefault
impl SliceIndex<str> for (Bound<usize>, Bound<usize>)
assert_eq!
&assert_ne!
panic messages.stat
struct definitions.Stabilized APIs
{integer}::div_ceil
{integer}::next_multiple_of
{integer}::checked_next_multiple_of
std::ffi::FromBytesUntilNulError
std::os::unix::fs::chown
std::os::unix::fs::fchown
std::os::unix::fs::lchown
LocalKey::<Cell<T>>::get
LocalKey::<Cell<T>>::set
LocalKey::<Cell<T>>::take
LocalKey::<Cell<T>>::replace
LocalKey::<RefCell<T>>::with_borrow
LocalKey::<RefCell<T>>::with_borrow_mut
LocalKey::<RefCell<T>>::set
LocalKey::<RefCell<T>>::take
LocalKey::<RefCell<T>>::replace
These APIs are now stable in const contexts:
rc::Weak::new
sync::Weak::new
NonNull::as_ref
Cargo
cargo::
in custom build script.Misc
Compatibility Notes
impl Trait
.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.
rustc_apfloat
with the new version of the crate.internal_features
lint for internal unstable features.v1.72.1
Compare Source
===========================
v1.72.0
Compare Source
==========================
Language
#![cfg(FALSE)]
behaves on crate rootclippy::undropped_manually_drops
lintclippy::invalid_utf8_in_unchecked
lint asinvalid_from_utf8_unchecked
andinvalid_from_utf8
clippy::cast_ref_to_mut
lint asinvalid_reference_casting
clippy::cmp_nan
lint asinvalid_nan_comparisons
dyn Trait
objectsCompiler
cfg
-ed out items to mention them in diagnostics-
is given as output fileloongarch64-unknown-none*
.eh_frame
from being emitted for-C panic=abort
Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
thread::{park, unpark}
T: Sized
bounds onBufReader<T>
,BufWriter<T>
andLineWriter<T>
select_nth_unstable
Ok
on kill if process has already exitedVec
s over different allocators{Arc,Rc,Weak}::ptr_eq
ignore pointer metadataRustdoc
[]
Stabilized APIs
impl<T: Send> Sync for mpsc::Sender<T>
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.