Pallet Pass #13
Annotations
1 error and 23 warnings
test
Process completed with exit code 101.
|
useless conversion to the same type: `pallet::Event<T, I>`:
pallets/pass/src/lib.rs#L319
warning: useless conversion to the same type: `pallet::Event<T, I>`
--> pallets/pass/src/lib.rs:319:13
|
319 | / Event::<T, I>::SessionCreated {
320 | | session_key: session_key.clone(),
321 | | until,
322 | | }
323 | | .into(),
| |___________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
help: consider removing `.into()`
|
319 ~ Event::<T, I>::SessionCreated {
320 + session_key: session_key.clone(),
321 + until,
322 ~ },
|
|
using `clone` on type `[u8; 32]` which implements the `Copy` trait:
pallets/pass/src/lib.rs#L265
warning: using `clone` on type `[u8; 32]` which implements the `Copy` trait
--> pallets/pass/src/lib.rs:265:28
|
265 | device_id: device_id.clone(),
| ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*device_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
|
useless conversion to the same type: `pallet::Event<T, I>`:
pallets/pass/src/lib.rs#L263
warning: useless conversion to the same type: `pallet::Event<T, I>`
--> pallets/pass/src/lib.rs:263:13
|
263 | / Event::<T, I>::AddedDevice {
264 | | who: who.clone(),
265 | | device_id: device_id.clone(),
266 | | }
267 | | .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
help: consider removing `.into()`
|
263 ~ Event::<T, I>::AddedDevice {
264 + who: who.clone(),
265 + device_id: device_id.clone(),
266 ~ },
|
|
using `map_err` over `inspect_err`:
pallets/pass/src/lib.rs#L80
warning: using `map_err` over `inspect_err`
--> pallets/pass/src/lib.rs:80:15
|
80 | #[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
|
80 - #[pallet::pallet]
80 + #[pallet::&inspect_err]
|
|
the borrowed expression implements the required traits:
pallets/pass/src/lib.rs#L169
warning: the borrowed expression implements the required traits
--> pallets/pass/src/lib.rs:169:60
|
169 | let device = Devices::<T, I>::get(&account_id, &device_id)
| ^^^^^^^^^^ help: change this to: `device_id`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default
|
deref on an immutable reference:
pallets/pass/src/benchmarking.rs#L44
warning: deref on an immutable reference
--> pallets/pass/src/benchmarking.rs:44:33
|
44 | let user_id = hash::<T>(&*b"my-account");
| ^^^^^^^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `b"my-account"`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref
= note: `#[warn(clippy::borrow_deref_ref)]` on by default
|
duplicated attribute:
pallets/pass/src/benchmarking.rs#L1
warning: duplicated attribute
--> pallets/pass/src/benchmarking.rs:1:8
|
1 | #![cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: first defined here
--> pallets/pass/src/lib.rs:26:7
|
26 | #[cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: remove this attribute
--> pallets/pass/src/benchmarking.rs:1:8
|
1 | #![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
|
bound is defined in more than one place:
pallets/pass/src/benchmarking.rs#L30
warning: bound is defined in more than one place
--> pallets/pass/src/benchmarking.rs:30:1
|
30 | / #[instance_benchmarks(
31 | | where
32 | | T: frame_system::Config + crate::Config<I>,
| | ^
33 | | OriginFor<T>: From<frame_system::Origin<T>>,
34 | | T::Hash: Into<HashedUserId>,
35 | | RuntimeEventFor<T, I>: From<frame_system::Event<T>>,
36 | | )]
| |__^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations
= note: `#[warn(clippy::multiple_bound_locations)]` on by default
= note: this warning originates in the attribute macro `instance_benchmarks` (in Nightly builds, run with -Z macro-backtrace for more info)
|
`self.0.saturating_sub(n.get())` is never smaller than `Self::MIN.0` and has therefore no effect:
traits/memberships/src/lib.rs#L98
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
|
using `map_err` over `inspect_err`:
pallets/template/src/lib.rs#L34
warning: using `map_err` over `inspect_err`
--> pallets/template/src/lib.rs:34:15
|
34 | #[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
|
34 - #[pallet::pallet]
34 + #[pallet::&inspect_err]
|
|
empty doc comment:
pallets/referenda-tracks/src/lib.rs#L86
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
|
useless conversion to the same type: `()`:
pallets/referenda-tracks/src/impls.rs#L96
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
|
passing a unit value to a function:
pallets/referenda-tracks/src/impls.rs#L96
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(())
|
|
binary comparison to literal `Option::None`:
pallets/referenda-tracks/src/impls.rs#L41
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
|
using `clone` on type `<T as Config<I>>::TrackId` which implements the `Copy` trait:
pallets/referenda-tracks/src/benchmarking.rs#L86
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
|
using `clone` on type `<T as Config<I>>::TrackId` which implements the `Copy` trait:
pallets/referenda-tracks/src/benchmarking.rs#L85
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
|
using `map_err` over `inspect_err`:
pallets/gas-transaction-payment/src/lib.rs#L32
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]
|
|
duplicated attribute:
pallets/template/src/benchmarking.rs#L1
warning: duplicated attribute
--> pallets/template/src/benchmarking.rs:1:8
|
1 | #![cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: first defined here
--> pallets/template/src/lib.rs:10:7
|
10 | #[cfg(feature = "runtime-benchmarks")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: remove this attribute
--> pallets/template/src/benchmarking.rs:1:8
|
1 | #![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
|
using `clone` on type `DispatchInfo` which implements the `Copy` trait:
pallets/gas-transaction-payment/src/extensions.rs#L120
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
|
useless conversion to the same type: `frame_support::dispatch::DispatchInfo`:
pallets/gas-transaction-payment/src/extensions.rs#L120
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
|
redundant pattern matching, consider using `is_some()`:
pallets/gas-transaction-payment/src/extensions.rs#L102
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
|
clippy
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
clippy
The following actions use a deprecated Node.js version and will be forced to run on node20: actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|