fix(deps): update dependency rust to v1.74.0 #150
Merged
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.74.0
Release Notes
rust-lang/rust (rust)
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>
impl TryFrom<&OsStr> for &str
String::leak
These APIs are now stable in const contexts:
CStr::from_bytes_with_nul
CStr::to_bytes
CStr::to_bytes_with_nul
CStr::to_str
Cargo
-Zdoctest-in-workspace
by default. When running each documentationtest, the working directory is set to the root directory of the package the
test belongs to.
docs
#12221
#12288
build.jobs
parallelism back to the default.
#12222
Compatibility Notes
Display
forIpv6Addr
for IPv4-compatible addressesadded in Rust 1.49. These extended characters aren't allowed on crates.io, so
this should only impact users of other registries, or people who don't publish
to a registry.
#12291
mips*-unknown-linux-gnu*
targets from host tier 2 to target tier 3 support.v1.71.1
Compare Source
===========================
suspicious_double_ref_op
lint when callingborrow()
can_eq
inderive(..)
suggestion for missing methodv1.71.0
Compare Source
==========================
Language
raw-dylib
,link_ordinal
,import_name_type
and-Cdlltool
.clippy::{drop,forget}_{ref,copy}
lints.Drop
impl compatibilityCompiler
PlaceMention
,making
let _ =
patterns more consistent with respect to the borrow checker.--print deployment-target
flag for Apple targets.extern "C-unwind"
and friends.The existing
extern "C"
etc. may change behavior for cross-language unwinding in a future release.*-linux-musl
targets to 1.2.3,enabling time64 on 32-bit systems.
debugger_visualizer
for embedding metadata like Microsoft's Natvis.
Self
respect tuple constructor privacy.apple-m1
as the target CPU foraarch64-apple-darwin
.x86_64h-apple-darwin
target.loongarch64-unknown-linux-gnu
to Tier 2 with host tools.Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
Additional panics are allowed while unwinding, as long as they are caught before escaping
a
Drop
implementation, but panicking within a panic hook is now an immediate abort.From<&[T]> for Box<[T]>
bound toT: Clone
.T: Send
boundin
Error for mpsc::SendError<T>
andTrySendError<T>
.alloc::realloc
to match
Layout
requirements that the size must not exceedisize::MAX
.const {}
syntax forstd::thread_local
.This syntax was stabilized in Rust 1.59, but not previously mentioned in release notes.
Stabilized APIs
CStr::is_empty
BuildHasher::hash_one
NonZeroI*::is_positive
NonZeroI*::is_negative
NonZeroI*::checked_neg
NonZeroI*::overflowing_neg
NonZeroI*::saturating_neg
NonZeroI*::wrapping_neg
Neg for NonZeroI*
Neg for &NonZeroI*
From<[T; N]> for (T...)
(array to N-tuple for N in 1..=12)
From<(T...)> for [T; N]
(N-tuple to array for N in 1..=12)
windows::io::AsHandle for Box<T>
windows::io::AsHandle for Rc<T>
windows::io::AsHandle for Arc<T>
windows::io::AsSocket for Box<T>
windows::io::AsSocket for Rc<T>
windows::io::AsSocket for Arc<T>
These APIs are now stable in const contexts:
<*const T>::read
<*const T>::read_unaligned
<*mut T>::read
<*mut T>::read_unaligned
ptr::read
ptr::read_unaligned
<[T]>::split_at
Cargo
Cargo.toml
.workspace_default_members
to the output ofcargo metadata
.cargo new
/cargo init
.Rustdoc
rustdoc::unescaped_backticks
lint for broken inline code.~~old~~
vs.~new~
)Misc
Compatibility Notes
TypeId
.Code that uses a constant
TypeId
in a pattern will potentially be broken.Known cases have already been fixed -- in particular, users of the
log
crate's
kv_unstable
feature should update tolog v0.4.18
or later.sysroot
crate to represent the standard library crates.This does not affect stable users, but may require adjustment in tools that build their own standard library.
rustup
. WhenCargo detects it will run
rustc
pointing to a rustup proxy, it'll try bypassing the proxy anduse the underlying binary directly. There are assumptions around the interaction with rustup and
RUSTUP_TOOLCHAIN
. However, it's not expected to affect normal users.handle misspellings. Previously, Cargo tried each
combination of hyphens and underscores, causing excessive requests to crates.io.
RUSTUP_HOME
andRUSTUP_TOOLCHAIN
in the[env]
configurationtable. This is considered to be not a use case Cargo would like to support, since it will likely
cause problems or lead to confusion.
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.
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 has been generated by Mend Renovate. View repository job log here.