-
Notifications
You must be signed in to change notification settings - Fork 5
chore(deps): update dependency rust to v1.90.0 #270
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
master
Choose a base branch
from
renovate/rust-1.x
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
685d5a8 to
1700c72
Compare
1700c72 to
cd5d519
Compare
cd5d519 to
22d5ac9
Compare
22d5ac9 to
7d52ff5
Compare
7d52ff5 to
6e61317
Compare
6e61317 to
258dd39
Compare
258dd39 to
83b0bb6
Compare
83b0bb6 to
8410e8c
Compare
8410e8c to
e7f801b
Compare
e7f801b to
142669f
Compare
142669f to
73663d3
Compare
73663d3 to
6f530a3
Compare
6f530a3 to
baa5d92
Compare
baa5d92 to
67c536d
Compare
329aee3 to
ef0b19a
Compare
ef0b19a to
9b89bc4
Compare
9b89bc4 to
024656c
Compare
024656c to
05ddeee
Compare
05ddeee to
e0921bf
Compare
e0921bf to
aa2729e
Compare
aa2729e to
42d995c
Compare
42d995c to
5958364
Compare
5958364 to
6b6ded5
Compare
6b6ded5 to
42ca898
Compare
42ca898 to
9d1e7b7
Compare
9d1e7b7 to
9bbd494
Compare
9bbd494 to
7176d90
Compare
7176d90 to
cd1910a
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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:
Test plan: CI should pass with updated dependencies. No review required: this is an automated dependency update PR.
Release Notes
rust-lang/rust (rust)
v1.90.0Compare Source
===========================
Language
unknown_or_malformed_diagnostic_attributeslint. This lint has been split up into four finer-grained lints, withunknown_or_malformed_diagnostic_attributesnow being the lint group that contains these lints:unknown_diagnostic_attributes: unknown to the current compilermisplaced_diagnostic_attributes: placed on the wrong itemmalformed_diagnostic_attributes: malformed attribute syntax or optionsmalformed_diagnostic_format_literals: malformed format string literalCompiler
lldby default onx86_64-unknown-linux-gnu.musltargets now link dynamically by default. Affected targets:mips64-unknown-linux-muslabi64powerpc64-unknown-linux-muslpowerpc-unknown-linux-muslpowerpc-unknown-linux-muslsperiscv32gc-unknown-linux-musls390x-unknown-linux-muslthumbv7neon-unknown-linux-musleabihfPlatform Support
x86_64-apple-darwinto Tier 2 with host toolsRefer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
u*::{checked,overflowing,saturating,wrapping}_sub_signedCStr,CString, andCow<CStr>MSG_NOSIGNALforUnixStreamproc_macro::Ident::newnow supports$crate.Thread::into_rawhas at least 8 bytes of alignmentStabilized APIs
u{n}::checked_sub_signedu{n}::overflowing_sub_signedu{n}::saturating_sub_signedu{n}::wrapping_sub_signedimpl Copy for IntErrorKindimpl Hash for IntErrorKindimpl PartialEq<&CStr> for CStrimpl PartialEq<CString> for CStrimpl PartialEq<Cow<CStr>> for CStrimpl PartialEq<&CStr> for CStringimpl PartialEq<CStr> for CStringimpl PartialEq<Cow<CStr>> for CStringimpl PartialEq<&CStr> for Cow<CStr>impl PartialEq<CStr> for Cow<CStr>impl PartialEq<CString> for Cow<CStr>These previously stable APIs are now stable in const contexts:
<[T]>::reversef32::floorf32::ceilf32::truncf32::fractf32::roundf32::round_ties_evenf64::floorf64::ceilf64::truncf64::fractf64::roundf64::round_ties_evenCargo
http.proxy-cainfoconfig for proxy certsgixforcargo packageRustdoc
implblocks, now they do when shift is heldunsafe()wrappersCompatibility Notes
lldby default onx86_64-unknown-linux-gnu.See also https://blog.rust-lang.org/2025/09/01/rust-lld-on-1.90.0-stable/.
core::iter::Fuse'sDefaultimpl constructI::default()internally as promised in the docs instead of always being emptyMSG_NOSIGNALforUnixStreamThis may change program behavior but results in the same behavior as other primitives (e.g., stdout, network sockets).
Programs relying on signals to terminate them should update handling of sockets to handle errors on write by exiting.
std::env::home_dirwill use the fallback if theHOMEenvironment variable is emptyextern "{abi}"s consistently in all positions. This primarily affects the use of implementing traits on anextern "{abi}"function pointer, likeextern "stdcall" fn(), on a platform that doesn't support that, like aarch64-unknown-linux-gnu. Direct usage of these unsupported ABI strings by declaring or defining functions was already rejected, so this is only a change for consistency.proc_macro_derivemacro has correct arguments when applied to the crate rootv1.89.0Compare Source
==========================
Language
feature(generic_arg_infer))mismatched_lifetime_syntaxeslint.This lint detects when the same lifetime is referred to by different syntax categories between function arguments and return values, which can be confusing to read, especially in unsafe code.
This lint supersedes the warn-by-default
elided_named_lifetimeslint.unpredictable_function_pointer_comparisonsto also lint on function pointer comparisons in external macrosdangerous_implicit_autorefslint deny-by-defaultklandwidekltarget features for x86sha512,sm3andsm4target features for x86f,d,frecipe,lasx,lbt,lsx, andlvzi128andu128fromimproper_ctypes_definitionsrepr128(#[repr(u128)],#[repr(i128)])#![doc(test(attr(..)))]everywhereextern "C"functions on thewasm32-unknown-unknowntarget now have a standards compliant ABICompiler
Platform Support
loongarch32-unknown-noneandloongarch32-unknown-none-softfloatx86_64-apple-darwinis in the process of being demoted to Tier 2 with host toolsRefer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
file!format_args!()in a variable#[must_use]to[T; N]::mapDerefMutforLazy{Cell,Lock}Defaultforarray::IntoIterCloneforslice::ChunkByio::Seekforio::TakeStabilized APIs
NonZero<char>SHA512,SM3andSM4intrinsicsFile::lockFile::lock_sharedFile::try_lockFile::try_lock_sharedFile::unlockNonNull::from_refNonNull::from_mutNonNull::without_provenanceNonNull::with_exposed_provenanceNonNull::expose_provenanceOsString::leakPathBuf::leakResult::flattenstd::os::linux::net::TcpStreamExt::quickackstd::os::linux::net::TcpStreamExt::set_quickackThese previously stable APIs are now stable in const contexts:
<[T; N]>::as_mut_slice<[u8]>::eq_ignore_ascii_casestr::eq_ignore_ascii_caseCargo
cargo fixandcargo clippy --fixnow default to the same Cargo target selection as other build commands. Previously it would apply to all targets (like binaries, examples, tests, etc.). The--editionflag still applies to all targets.runnersetting to run the tests. If you need to disable tests for a target, you can use the ignore doctest attribute to specify the targets to ignore.Rustdoc
Compatibility Notes
missing_fragment_specifieran unconditional errorneontarget feature onaarch64-unknown-none-softfloatcauses a warning because mixing code with and without that target feature is not properly supported by LLVM?Sizedbounds on impls on recursive types which contain associated type projections. It is not expected to affect any existing published crates. Can be fixed by refactoring the involved types or opting into thesized_hierarchyunstable feature. See the FCP report for a code example.elided_named_lifetimeslint is superseded by the warn-by-defaultmismatched_lifetime_syntaxeslint.Copyare now only available at the end of type checkingstd::intrinsics::{copy,copy_nonoverlapping,write_bytes}are now proper intrinsics. There are no debug assertions guarding against UB, and they cannot be coerced to function pointers.std::intrinsics::drop_in_place!) are now reported in dependenciesstd::ptr::copy_*intrinsics also perform the static self-init checksextern "C"functions on thewasm32-unknown-unknowntarget now have a standards compliant ABIInternal 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-devcomponentv1.88.0Compare Source
==========================
Language
#![feature(let_chains)]in the 2024 edition.This feature allows
&&-chainingletstatements insideifandwhile, allowing intermixture with boolean expressions. The patterns inside theletsub-expressions can be irrefutable or refutable.#![feature(naked_functions)].Naked functions allow writing functions with no compiler-generated epilogue and prologue, allowing full control over the generated assembly for a particular function.
#![feature(cfg_boolean_literals)].This allows using boolean literals as
cfgpredicates, e.g.#[cfg(true)]and#[cfg(false)].#[bench]attribute. Usage of#[bench]without#![feature(custom_test_frameworks)]already triggered a deny-by-default future-incompatibility lint since Rust 1.77, but will now become a hard error.dangerous_implicit_autorefslint against implicit autoref of raw pointer dereference.The lint will be bumped to deny-by-default in the next version of Rust.
invalid_null_argumentslint to prevent invalid usage of null pointers.This lint is uplifted from
clippy::invalid_null_ptr_usage.Compiler
-Cdwarf-versionfor selecting the version of DWARF debug information to generate.Platform Support
i686-pc-windows-gnuto Tier 2.Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
#[should_panic]test failure message.[T; N]::from_fnis generated in order of increasing indices., for those passing it a stateful closure.--nocaptureis deprecated in favor of the more consistent--no-captureflag.{float}::NANis a quiet NaN.Stabilized APIs
Cell::updateimpl Default for *const Timpl Default for *mut THashMap::extract_ifHashSet::extract_ifhint::select_unpredictableproc_macro::Span::lineproc_macro::Span::columnproc_macro::Span::startproc_macro::Span::endproc_macro::Span::fileproc_macro::Span::local_file<[T]>::as_chunks<[T]>::as_chunks_mut<[T]>::as_chunks_unchecked<[T]>::as_chunks_unchecked_mut<[T]>::as_rchunks<[T]>::as_rchunks_mutmod ffi::c_strThese previously stable APIs are now stable in const contexts:
NonNull<T>::replace<*mut T>::replacestd::ptr::swap_nonoverlappingCell::replaceCell::getCell::get_mutCell::from_mutCell::as_slice_of_cellsCargo
zlib-rsfor gzip compression in rust codeRustdoc
ignore-*attributes.--test-runtooland--test-runtool-argCLI options to specify a program (like qemu) and its arguments to run a doctest.Compatibility Notes
ttfragment specifier can often fix these macros.#[bench]attribute. Usage of#[bench]without#![feature(custom_test_frameworks)]already triggered a deny-by-default future-incompatibility lint since Rust 1.77, but will now become a hard error.The borrow checker was overly permissive in some cases, allowing programs that shouldn't have compiled.
v1.87.0Compare Source
==========================
Language
asm_gotofeature..EXPR) after unary operators!,-, and*.Self: Sizedbounds inimpls for unsized typesfeature(precise_capturing_in_traits)allowinguse<...>bounds on return positionimpl TraitintraitsCompiler
Platform Support
i586-pc-windows-msvctargetRefer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
Debugimpl of raw pointersVec::with_capacityguarantees it allocates with the amount requested, even ifVec::capacityreturns a different number.std::archintrinsics which don't take pointer arguments can now be called from safe code if the caller has the appropriate target features already enabled (rust-lang/stdarch#1714, rust-lang/stdarch#1716, rust-lang/stdarch#1717)env::home_dirControlFlowas#[must_use]assert_eq!andvec!now supportconst {...}expressionsStabilized APIs
Vec::extract_ifvec::ExtractIfLinkedList::extract_iflinked_list::ExtractIf<[T]>::split_off<[T]>::split_off_mut<[T]>::split_off_first<[T]>::split_off_first_mut<[T]>::split_off_last<[T]>::split_off_last_mutString::extend_from_withinos_str::DisplayOsString::displayOsStr::displayio::pipeio::PipeReaderio::PipeWriterimpl From<PipeReader> for OwnedHandleimpl From<PipeWriter> for OwnedHandleimpl From<PipeReader> for Stdioimpl From<PipeWriter> for Stdioimpl From<PipeReader> for OwnedFdimpl From<PipeWriter> for OwnedFdBox<MaybeUninit<T>>::writeimpl TryFrom<Vec<u8>> for String<*const T>::offset_from_unsigned<*const T>::byte_offset_from_unsigned<*mut T>::offset_from_unsigned<*mut T>::byte_offset_from_unsignedNonNull::offset_from_unsignedNonNull::byte_offset_from_unsigned<uN>::cast_signedNonZero::<uN>::cast_signed.<iN>::cast_unsigned.NonZero::<iN>::cast_unsigned.<uN>::is_multiple_of<uN>::unbounded_shl<uN>::unbounded_shr<iN>::unbounded_shl<iN>::unbounded_shr<iN>::midpoint<str>::from_utf8<str>::from_utf8_mut<str>::from_utf8_unchecked<str>::from_utf8_unchecked_mutThese previously stable APIs are now stable in const contexts:
core::str::from_utf8_mut<[T]>::copy_from_sliceSocketAddr::set_ipSocketAddr::set_port,SocketAddrV4::set_ipSocketAddrV4::set_port,SocketAddrV6::set_ipSocketAddrV6::set_portSocketAddrV6::set_flowinfoSocketAddrV6::set_scope_idchar::is_digitchar::is_whitespace<[[T; N]]>::as_flattened<[[T; N]]>::as_flattened_mutString::into_bytesString::as_strString::capacityString::as_bytesString::lenString::is_emptyString::as_mut_strString::as_mut_vecVec::as_ptrVec::as_sliceVec::capacityVec::lenVec::is_emptyVec::as_mut_sliceVec::as_mut_ptrCargo
Compatibility Notes
#![crate_name]attributeDebugimpl of raw pointers print metadata if presentdyntypes are no longer deduplicated..inside of struct patterns (let Struct { #[attribute] .. }) =ptr_cast_add_auto_to_objectlint into hard errorstd::archintrinsics are now safe to call in some contexts, there may now be newunused_unsafewarnings in existing codebases.widthandprecisionformatting options to 16 bits on all targetsControlFlowas#[must_use]advapi32, except on win7. Code such as C libraries that were relying on this assumption may need to explicitly link advapi32.cfg(true)attributes.ttfragment specifier can often fix these macros.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.
v1.86.0Compare Source
==========================
Language
#[target_feature]attribute.missing_abilint now warns-by-default.--x) as written in other languages. This was previously a clippy lint,clippy::double_neg, and is now available directly in Rust asdouble_negations.repr()attribute applied to invalid items are now correctly rejected.#![test]and#![rustfmt::skip]are no longer accepted in more places than intended.Compiler
-Oto mean-C opt-level=3instead of-C opt-level=2to match Cargo's defaults.overflowing_literalsunder certain macro environments.Platform Support
i686-unknown-redoxtarget withi586-unknown-redox.i686-unknown-hurd-gnuto Pentium 4.{aarch64-unknown,x86_64-pc}-nto-qnx710_iosock.For supporting Neutrino QNX 7.1 with
io-socketnetwork stack.{aarch64-unknown,x86_64-pc}-nto-qnx800.For supporting Neutrino QNX 8.0 (
no_std-only).{x86_64,i686}-win7-windows-gnu.Intended for backwards compatibility with Windows 7.
{x86_64,i686}-win7-windows-msvcare the Windows MSVC counterparts that already exist as Tier 3 targets.amdgcn-amd-amdhsa.x86_64-pc-cygwin.{mips,mipsel}-mti-none-elf.Initial bare-metal support.
m68k-unknown-none-elf.armv7a-nuttx-{eabi,eabihf},aarch64-unknown-nuttx, andthumbv7a-nuttx-{eabi,eabihf}.Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
FromBytesWithNulErrorinCStr::from_bytes_with_nul(bytes: &[u8]) -> Result<&Self, FromBytesWithNulError>was changed from an opaque struct to an enum, allowing users to examine why the conversion failed.RustcDecodableandRustcEncodable.--logfileoption.std::fs::remove_filewill now remove read-only files.Stabilized APIs
{float}::next_down{float}::next_up<[_]>::get_disjoint_mut<[_]>::get_disjoint_unchecked_mutslice::GetDisjointMutErrorHashMap::get_disjoint_mutHashMap::get_disjoint_unchecked_mutNonZero::count_onesVec::pop_ifsync::Once::waitsync::Once::wait_forcesync::OnceLock::waitThese APIs are now stable in const contexts:
hint::black_boxio::Cursor::get_mutio::Cursor::set_positionstr::is_char_boundarystr::split_atstr::split_at_checkedstr::split_at_mutstr::split_at_mut_checkedCargo
--packageand--workspaceare passed but the requested package is missing. This was previously silently ignored, which was considered a bug since missing packages should be reported.cargo loginto avoid shell history leaks.SourceIDcomparisons. This may potentially change behavior if the canonicalized URL compares differently in alternative registries.Rustdoc
Compatibility Notes
wasm_c_abifuture compatibility warning is now a hard error.Users of
wasm-bindgenshould upgrade to at least version 0.2.89, otherwise compilation will fail.#![no_start]and#![crate_id].cenum_impl_drop_casthas been made into a hard error. This means it is now an error to cast a field-less enum to an integer if the enum implementsDrop.To compile for pre-SSE2 32-bit x86, use a "i586" target instead.
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.
The ARM 64-bit compiler (AArch64) on Linux is now optimized with ThinLTO and PGO, similar to the optimizations we have already performed for the x86-64 compiler on Linux. This should make it up to 30% faster.
v1.85.1Compare Source
==========================
target_featurechecks when generating docs.std::fs::renameon Windows 10, version 1607.ccto fix custom targets.v1.85.0Compare Source
==========================
Language
See the edition guide for more details.
See RFC 3668 for more details.
#[diagnostic::do_not_recommend]unpredictable_function_pointer_comparisonslint to warn against function pointer comparisons#[no_mangle]and#[export_name]attributes.Compiler
-Zpolymorphizehas been removed, see rust-lang/compiler-team#810 for some background.Platform Support
powerpc64le-unknown-linux-muslto tier 2 with host toolsRefer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.
Libraries
Panics in the standard library now have a leading
library/in their pathstd::env::home_dir()on Windows now ignores the non-standard$HOMEenvironment variableIt will be un-deprecated in a subsequent release.
Add
AsyncFn*to the prelude in all editions.Stabilized APIs
BuildHasherDefault::newptr::fn_addr_eqio::ErrorKind::QuotaExceededio::ErrorKind::CrossesDevices{float}::midpoint{integer}::midpointNonZeroU*::midpointstd::iter::Extendfor tuples with arity 1 through 12FromIterator<(A, ...)>for tuples with arity 1 through 12std::task::Waker::noopThese APIs are now stable in const contexts:
mem::size_of_valmem::align_of_valLayout::for_valueLayout::align_toLayout::pad_to_alignLayout::extendLayout::arraystd::mem::swapstd::ptr::swapNonNull::newHashMap::with_hasherHashSet::with_hasherBuildHasherDefault::new<float>::recip<float>::to_degrees<float>::to_radians<float>::max<float>::min<float>::clamp<float>::abs<float>::signum<float>::copysignMaybeUninit::write](https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.writeConfiguration
📅 Schedule: Branch creation - "on the 1st through 7th day of the month" in timezone America/Los_Angeles, 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.