Pallet Pass #4
clippy
7 errors, 13 warnings
Details
Results
Message level | Amount |
---|---|
Internal compiler error | 0 |
Error | 7 |
Warning | 13 |
Note | 0 |
Help | 0 |
Versions
- rustc 1.81.0 (eeb90cda1 2024-09-04)
- cargo 1.81.0 (2dbb1af80 2024-08-20)
- clippy 0.1.81 (eeb90cd 2024-09-04)
Annotations
Check warning on line 93 in pallets/referenda-tracks/src/lib.rs
github-actions / clippy
using `map_err` over `inspect_err`
warning: using `map_err` over `inspect_err`
--> pallets/referenda-tracks/src/lib.rs:93:15
|
93 | #[pallet::pallet]
| ^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_inspect
= note: `#[warn(clippy::manual_inspect)]` on by default
help: try
|
93 - #[pallet::pallet]
93 + #[pallet::&inspect_err]
|
Check warning on line 32 in pallets/gas-transaction-payment/src/lib.rs
github-actions / clippy
using `map_err` over `inspect_err`
warning: using `map_err` over `inspect_err`
--> pallets/gas-transaction-payment/src/lib.rs:32:15
|
32 | #[pallet::pallet]
| ^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_inspect
= note: `#[warn(clippy::manual_inspect)]` on by default
help: try
|
32 - #[pallet::pallet]
32 + #[pallet::&inspect_err]
|
Check warning on line 120 in pallets/gas-transaction-payment/src/extensions.rs
github-actions / clippy
using `clone` on type `DispatchInfo` which implements the `Copy` trait
warning: using `clone` on type `DispatchInfo` which implements the `Copy` trait
--> pallets/gas-transaction-payment/src/extensions.rs:120:22
|
120 | &info.clone().into(),
| ^^^^^^^^^^^^ help: try dereferencing it: `(*info)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
= note: `#[warn(clippy::clone_on_copy)]` on by default
Check warning on line 120 in pallets/gas-transaction-payment/src/extensions.rs
github-actions / clippy
useless conversion to the same type: `frame_support::dispatch::DispatchInfo`
warning: useless conversion to the same type: `frame_support::dispatch::DispatchInfo`
--> pallets/gas-transaction-payment/src/extensions.rs:120:22
|
120 | &info.clone().into(),
| ^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `info.clone()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
= note: `#[warn(clippy::useless_conversion)]` on by default
Check warning on line 98 in traits/memberships/src/lib.rs
github-actions / clippy
`self.0.saturating_sub(n.get())` is never smaller than `Self::MIN.0` and has therefore no effect
warning: `self.0.saturating_sub(n.get())` is never smaller than `Self::MIN.0` and has therefore no effect
--> traits/memberships/src/lib.rs:98:14
|
98 | Self(self.0.saturating_sub(n.get()).max(Self::MIN.0))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.0.saturating_sub(n.get())`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_min_or_max
= note: `#[warn(clippy::unnecessary_min_or_max)]` on by default
Check warning on line 102 in pallets/gas-transaction-payment/src/extensions.rs
github-actions / clippy
redundant pattern matching, consider using `is_some()`
warning: redundant pattern matching, consider using `is_some()`
--> pallets/gas-transaction-payment/src/extensions.rs:102:16
|
102 | if let Some(_) = T::GasBurner::check_available_gas(who, &info.weight) {
| -------^^^^^^^------------------------------------------------------- help: try: `if T::GasBurner::check_available_gas(who, &info.weight).is_some()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching
= note: `#[warn(clippy::redundant_pattern_matching)]` on by default
Check warning on line 86 in pallets/referenda-tracks/src/lib.rs
github-actions / clippy
empty doc comment
warning: empty doc comment
--> pallets/referenda-tracks/src/lib.rs:86:9
|
86 | ///
| ^^^
|
= help: consider removing or filling it
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_docs
= note: `#[warn(clippy::empty_docs)]` on by default
Check warning on line 96 in pallets/referenda-tracks/src/impls.rs
github-actions / clippy
useless conversion to the same type: `()`
warning: useless conversion to the same type: `()`
--> pallets/referenda-tracks/src/impls.rs:96:12
|
96 | Ok(().into())
| ^^^^^^^^^ help: consider removing `.into()`: `()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
= note: `#[warn(clippy::useless_conversion)]` on by default
Check warning on line 96 in pallets/referenda-tracks/src/impls.rs
github-actions / clippy
passing a unit value to a function
warning: passing a unit value to a function
--> pallets/referenda-tracks/src/impls.rs:96:9
|
96 | Ok(().into())
| ^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg
= note: `#[warn(clippy::unit_arg)]` on by default
help: move the expression in front of the call and replace it with the unit literal `()`
|
96 ~ ().into();
97 + Ok(())
|
Check warning on line 41 in pallets/referenda-tracks/src/impls.rs
github-actions / clippy
binary comparison to literal `Option::None`
warning: binary comparison to literal `Option::None`
--> pallets/referenda-tracks/src/impls.rs:41:13
|
41 | Tracks::<T, I>::get(id) == None,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `Tracks::<T, I>::get(id).is_none()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none
= note: `#[warn(clippy::partialeq_to_none)]` on by default
Check warning on line 86 in pallets/referenda-tracks/src/benchmarking.rs
github-actions / clippy
using `clone` on type `<T as Config<I>>::TrackId` which implements the `Copy` trait
warning: using `clone` on type `<T as Config<I>>::TrackId` which implements the `Copy` trait
--> pallets/referenda-tracks/src/benchmarking.rs:86:57
|
86 | OriginToTrackId::<T, I>::insert(origin.clone(), id.clone());
| ^^^^^^^^^^ help: try dereferencing it: `*id`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
Check warning on line 85 in pallets/referenda-tracks/src/benchmarking.rs
github-actions / clippy
using `clone` on type `<T as Config<I>>::TrackId` which implements the `Copy` trait
warning: using `clone` on type `<T as Config<I>>::TrackId` which implements the `Copy` trait
--> pallets/referenda-tracks/src/benchmarking.rs:85:32
|
85 | Tracks::<T, I>::insert(id.clone(), track.clone());
| ^^^^^^^^^^ help: try dereferencing it: `*id`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
= note: `#[warn(clippy::clone_on_copy)]` on by default
Check warning on line 20 in pallets/referenda-tracks/src/benchmarking.rs
github-actions / clippy
duplicated attribute
warning: duplicated attribute
--> pallets/referenda-tracks/src/benchmarking.rs:20:8
|
20 | #![cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: first defined here
--> pallets/referenda-tracks/src/lib.rs:37:7
|
37 | #[cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: remove this attribute
--> pallets/referenda-tracks/src/benchmarking.rs:20:8
|
20 | #![cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#duplicated_attributes
= note: `#[warn(clippy::duplicated_attributes)]` on by default
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `Cred` may not live long enough
error[E0310]: the parameter type `Cred` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `Cred` must be valid for the static lifetime...
| ...so that the type `Cred` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
43 | Cred: UserChallengeResponse<Ch::Context> + 'static,
| +++++++++
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `Ch` may not live long enough
error[E0310]: the parameter type `Ch` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `Ch` must be valid for the static lifetime...
| ...so that the type `Ch` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
42 | Ch: Challenger + 'static,
| +++++++++
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `A` may not live long enough
error[E0310]: the parameter type `A` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `A` must be valid for the static lifetime...
| ...so that the type `A` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
41 | A: Get<AuthorityId> + 'static,
| +++++++++
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `Cred` may not live long enough
error[E0310]: the parameter type `Cred` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `Cred` must be valid for the static lifetime...
| ...so that the type `std::marker::PhantomData<(A, Ch, Cred)>` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
43 | Cred: UserChallengeResponse<Ch::Context> + 'static,
| +++++++++
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `Ch` may not live long enough
error[E0310]: the parameter type `Ch` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `Ch` must be valid for the static lifetime...
| ...so that the type `std::marker::PhantomData<(A, Ch, Cred)>` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
42 | Ch: Challenger + 'static,
| +++++++++
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `A` may not live long enough
error[E0310]: the parameter type `A` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `A` must be valid for the static lifetime...
| ...so that the type `std::marker::PhantomData<(A, Ch, Cred)>` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
41 | A: Get<AuthorityId> + 'static,
| +++++++++
Check failure on line 38 in traits/authn/src/util.rs
github-actions / clippy
the parameter type `T` may not live long enough
error[E0310]: the parameter type `T` may not live long enough
--> traits/authn/src/util.rs:38:44
|
38 | impl<T, A, Ch, Cred> UserAuthenticator for Dev<T, A, Ch, Cred>
| ^^^^^^^^^^^^^^^^^^^
| |
| the parameter type `T` must be valid for the static lifetime...
| ...so that the type `T` will meet its required lifetime bounds...
|
note: ...that is required by this bound
--> traits/authn/src/lib.rs:51:58
|
51 | pub trait UserAuthenticator: FullCodec + MaxEncodedLen + TypeInfo {
| ^^^^^^^^
help: consider adding an explicit lifetime bound
|
40 | T: AsRef<DeviceId> + FullCodec + MaxEncodedLen + TypeInfo + 'static,
| +++++++++