chore(deps): update rust to 1.98 - #194
Conversation
There was a problem hiding this comment.
What changed: Rust 1.97 → 1.98 (minor). Notable items from RELEASES.md: two new default-on lints (invalid_runtime_symbol_definitions deny-by-default, c_void_returns warn-by-default), derive(PartialOrd) now has a faster Ord derive path that can expose inconsistent hand-written impls, repr(transparent) is stricter about "trivial" fields, and ambiguous glob imports are now a hard error. Nothing else in the changelog is repo-relevant.
What breaks here: Searched for the two new lint triggers — no extern "C" definitions of memcmp/memset/strlen and no functions returning core::ffi::c_void in this repo, so neither new lint applies. No other API in the compatibility notes is used here.
Blocking: CI is red. The Check job's cargo clippy --all-targets -- -D warnings step fails (exit code 101). Because -D warnings promotes every clippy lint to a hard error, and clippy's lint set moves in lockstep with the rustc version, a toolchain bump commonly surfaces a newly added/changed clippy lint on existing code. I couldn't pull the exact diagnostic: the job log download (.../actions/jobs/.../logs) requires repo-scoped auth this reviewer doesn't have, and the check-run annotation only carries the generic "Process completed with exit code 101" wrapper, not the clippy output itself. Please run cargo clippy --all-targets -- -D warnings locally with 1.98 (or open the job log directly) to find the specific lint and fix it — do not loosen the toolchain pin to dodge it.
5a8f79a to
d8d2f7a
Compare
SonarQube — aucune nouvelle issueComparaison entre le projet bac à sable de cette PR et la branche par défaut : SonarQube Community n'analyse pas les PR, ce delta est calculé côté CI. Détail |
86f9c0e to
3ca827b
Compare
f8f4630 to
61a647e
Compare
6a48088 to
5cd9b49
Compare
5cd9b49 to
0a906aa
Compare
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
This PR contains the following updates:
1.97→1.98Warning
Some dependencies could not be looked up. Check the warning logs for more information.
Release Notes
rust-lang/rust (rust)
v1.98.0Compare Source
==========================
Language
&mutwhen unsize-coercing, even in an invariant position. For example, you can now coerce aCell<&'long mut i32>to aCell<&'short mut dyn Send>. Such shortenings were already previously allowed when coercing a&mutto a&, or coercing a&to a&.invalid_runtime_symbol_definitionslint and warn-by-defaultsuspicious_runtime_symbol_definitionslintcoreruntime symbols likememcmp,memset,strlen, ... and is planned to be expanded in the next few releases.c_void_returnslint to checkcore::ffi::c_voidas a return typePlatform Support
powerpc64-unknown-linux-gnuelfv2as Tier 3aarch64-unknown-linux-pauthtestas Tier 3 targetthumbv7a-none-eabito Tier 2thumbv7a-none-eabihfto Tier 2thumbv7r-none-eabito Tier 2thumbv7r-none-eabihfto Tier 2thumbv8r-none-eabihfto Tier 2Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
Location<'_>lifetime to'staticinPanic[Hook]InfoRangeInclusive::from(legacy::RangeInclusive)ManuallyDrop'sBoxinteraction has been fixedderivemacro is available at{core,std}::derive. This was previously unintentionally stabilized in 1.96, but is now explicitly accepted as a stabilized API.{core,std}::derivewill be 1.96, and not 1.98.Stabilized APIs
str::substr_range[T]::subslice_rangecore::fmt::NumBuffer<{integer}>::format_intoSend/Sync for std::process::CommandArgs{fN}::algebraic_add{fN}::algebraic_sub{fN}::algebraic_mul{fN}::algebraic_div{fN}::algebraic_remNonZero<{integer}>::from_str_radixString::from_utf16leString::from_utf16le_lossyString::from_utf16beString::from_utf16be_lossy[T]::strip_circumfixstr::strip_circumfixAtomic<T>::from_mutAtomic<T>::get_mut_sliceAtomic<T>::from_mut_slicestd::range::legacybool::ok_orbool::ok_or_elseCompatibility Notes
ambiguous_glob_importslint into a hard errorType = TypeandType == Typeare no longer syntactically allowedrepr(transparent)is now more strict about which fields have "trivial" layout and hence can be ignored:repr(C)types, types with private fields, and#[non_exhaustive]types are no longer considered "trivial"transmute()when somereprattributes are involved.derive(PartialOrd)when derivingOrdThis can break crates in practice where a type's PartialOrd and Ord impls were inconsistent with each other.
assert_eqandassert_nePartialEqimplementation, when aderive(PartialEq)implementation for that type also exists.-Zemscripten-wasm-eh=falseflag to switch back to JS exceptions has been removed.File::lockimplementation, it has the wrong semantics (return "unsupported" instead)cfg_select!This may cause more code to be formatted which was previously ignored.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate CLI.