Skip to content

Clippy

Clippy #41

Triggered via push July 27, 2024 20:32
Status Failure
Total duration 4m 43s
Artifacts

dev.yml

on: push
Fit to window
Zoom out
Zoom in

Annotations

9 errors and 20 warnings
casting `usize` to `u16` may truncate the value: src/widget/dots.rs#L241
error: casting `usize` to `u16` may truncate the value --> src/widget/dots.rs:241:38 | 241 | ... shell.publish((self.on_click)(i as u16)); | ^^^^^^^^ | = help: if this is intentional allow the lint with `#[allow(clippy::cast_possible_truncation)]` ... = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_possible_truncation = note: `#[deny(clippy::cast_possible_truncation)]` implied by `#[deny(clippy::pedantic)]` help: ... or use `try_from` and handle the error accordingly | 241 | shell.publish((self.on_click)(u16::try_from(i))); | ~~~~~~~~~~~~~~~~
redundant redefinition of a binding `wolf_gifts`: src/view/splat_extras.rs#L255
error: redundant redefinition of a binding `wolf_gifts` --> src/view/splat_extras.rs:255:6 | 255 | let wolf_gifts = wolf_gifts; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | help: `wolf_gifts` is initially defined here --> src/view/splat_extras.rs:227:8 | 227 | let wolf_gifts: Vec<Translated<WolfGift>> = WolfGift::all() | ^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_locals
casting `u16` to `i16` may wrap around the value: src/view/overview.rs#L276
error: casting `u16` to `i16` may wrap around the value --> src/view/overview.rs:276:29 | 276 | character.base_size = (val as i16 - character.get_modifier(Trait::Size)) as u16; | ^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_possible_wrap = note: `#[deny(clippy::cast_possible_wrap)]` implied by `#[deny(clippy::pedantic)]`
casting `i16` to `u16` may lose the sign of the value: src/view/overview.rs#L276
error: casting `i16` to `u16` may lose the sign of the value --> src/view/overview.rs:276:28 | 276 | character.base_size = (val as i16 - character.get_modifier(Trait::Size)) as u16; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_sign_loss = note: `#[deny(clippy::cast_sign_loss)]` implied by `#[deny(clippy::pedantic)]`
unnecessary boolean `not` operation: src/component/skills.rs#L122
error: unnecessary boolean `not` operation --> src/component/skills.rs:122:6 | 122 | / if !specialties.is_empty() { 123 | | theme::Text::Color(Color::from_rgb(0.0, 0.7, 0.0)) 124 | | } else { 125 | | theme::Text::Default 126 | | }, | |_____________________^ | = help: remove the `!` and swap the blocks of the `if`/`else` = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_not_else = note: `#[deny(clippy::if_not_else)]` implied by `#[deny(clippy::pedantic)]`
redundant redefinition of a binding `skill`: src/component/skills.rs#L104
error: redundant redefinition of a binding `skill` --> src/component/skills.rs:104:8 | 104 | ... let skill = skill; | ^^^^^^^^^^^^^^^^^^ | help: `skill` is initially defined here --> src/component/skills.rs:93:7 | 93 | for skill in Skill::get(cat) { | ^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_locals = note: `#[deny(clippy::redundant_locals)]` on by default
binding's name is too similar to existing binding: src/view/splat_extras.rs#L298
error: binding's name is too similar to existing binding --> src/view/splat_extras.rs:298:7 | 298 | let rites = if let Splat::Werewolf(.., data) = &character.splat { | ^^^^^ | note: existing binding defined here --> src/view/splat_extras.rs:149:7 | 149 | let rotes: Element<Self::Event, Theme> = if let Splat::Mage(.., data) = &character.splat { | ^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#similar_names note: the lint level is defined here --> src/main.rs:2:9 | 2 | #![deny(clippy::pedantic)] | ^^^^^^^^^^^^^^^^ = note: `#[deny(clippy::similar_names)]` implied by `#[deny(clippy::pedantic)]`
check
Clippy had exited with the 101 exit code
test
The process '/home/runner/.cargo/bin/cargo' failed with exit code 101
struct update has no effect, all the fields in the struct have already been specified: src/main.rs#L618
warning: struct update has no effect, all the fields in the struct have already been specified --> src/main.rs:618:7 | 618 | ..Default::default() | ^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_update = note: `#[warn(clippy::needless_update)]` on by default
very complex type used. Consider factoring parts into `type` definitions: src/view/overview.rs#L506
warning: very complex type used. Consider factoring parts into `type` definitions --> src/view/overview.rs:506:37 | 506 | let (passive, common, specific): ( | ______________________________________________^ 507 | | Element<Self::Event, Theme>, 508 | | Element<Self::Event, Theme>, 509 | | Element<Self::Event, Theme>, 510 | | ) = if let KuruthTriggers::_Custom(KuruthTriggerSet { | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity = note: `#[warn(clippy::type_complexity)]` on by default
large size difference between variants: src/view/creator.rs#L23
warning: large size difference between variants --> src/view/creator.rs:23:1 | 23 | / pub enum Event { 24 | | SplatChanged(Splat), // TODO: Switch to using a unit-varianted "SplatKind" enum here | | ------------------- the largest variant contains at least 208 bytes 25 | | Done, | | ---- the second-largest variant carries no data at all 26 | | } | |_^ the entire enum is at least 208 bytes | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant = note: `#[warn(clippy::large_enum_variant)]` on by default help: consider boxing the large fields to reduce the total size of the enum | 24 | SplatChanged(Box<Splat>), // TODO: Switch to using a unit-varianted "SplatKind" enum here | ~~~~~~~~~~
usage of an `Arc` that is not `Send` and `Sync`: src/i18n.rs#L87
warning: usage of an `Arc` that is not `Send` and `Sync` --> src/i18n.rs:87:3 | 87 | Arc::new(DefaultLocalizer::new(&*LANGUAGE_LOADER, &Localizations)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `Arc<DefaultLocalizer<'_>>` is not `Send` and `Sync` as `DefaultLocalizer<'_>` is neither `Send` nor `Sync` = help: if the `Arc` will not used be across threads replace it with an `Rc` = help: otherwise make `DefaultLocalizer<'_>` `Send` and `Sync` or consider a wrapper type such as `Mutex` = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync = note: `#[warn(clippy::arc_with_non_send_sync)]` on by default
all variants have the same postfix: `Changed`: src/component/skills.rs#L41
warning: all variants have the same postfix: `Changed` --> src/component/skills.rs:41:1 | 41 | / pub enum Event { 42 | | SkillChanged(u16, Skill), 43 | | RoteSkillChanged(Skill), 44 | | SpecialtyChanged(Skill, usize, String), 45 | | SpecialtySkillChanged(Skill), 46 | | } | |_^ | = help: remove the postfixes and use full paths to the variants instead of glob imports = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names = note: `#[warn(clippy::enum_variant_names)]` on by default
method `abilities` is never used: src/view/equipment.rs#L35
warning: method `abilities` is never used --> src/view/equipment.rs:35:5 | 27 | impl<Message> EquipmentTab<Message> { | ----------------------------------- method in this implementation ... 35 | fn abilities(&self, _character: &Character) -> Element<Event> { | ^^^^^^^^^
variant `Msg` is never constructed: src/main.rs#L83
warning: variant `Msg` is never constructed --> src/main.rs:83:2 | 77 | enum Message { | ------- variant in this enum ... 83 | Msg, | ^^^ | = note: `Message` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis = note: `#[warn(dead_code)]` on by default
unused variable: `cursor`: src/widget/track.rs#L106
warning: unused variable: `cursor` --> src/widget/track.rs:106:3 | 106 | cursor: mouse::Cursor, | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor` | = note: `#[warn(unused_variables)]` on by default
check
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1, 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/
check
The following actions uses Node.js version which is deprecated and will be forced to run on node20: actions-rs/toolchain@v1, actions-rs/cargo@v1, 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/
check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
test
The following actions uses Node.js version which is deprecated and will be forced to run on node20: actions/checkout@v3, actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/