Integration with latest cofd lib changes #45
Annotations
7 errors and 37 warnings
casting `usize` to `u16` may truncate the value:
src/widget/dots.rs#L237
error: casting `usize` to `u16` may truncate the value
--> src/widget/dots.rs:237:38
|
237 | ... 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
|
237 | shell.publish((self.on_click)(u16::try_from(i)));
| ~~~~~~~~~~~~~~~~
|
casting `u16` to `i16` may wrap around the value:
src/view/overview.rs#L277
error: casting `u16` to `i16` may wrap around the value
--> src/view/overview.rs:277:29
|
277 | character.base_size = (val as i16
| ^^^^^^^^^^
|
= 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#L277
error: casting `i16` to `u16` may lose the sign of the value
--> src/view/overview.rs:277:28
|
277 | character.base_size = (val as i16
| ___________________________________________^
278 | | - character.get_modifier(Trait::DerivedTrait(DerivedTrait::Size)))
279 | | 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)]`
|
variables can be used directly in the `format!` string:
src/component/info.rs#L67
error: variables can be used directly in the `format!` string
--> src/component/info.rs:67:26
|
67 | col1 = col1.push(text(format!("{}:", str)));
| ^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args
= note: `#[deny(clippy::uninlined_format_args)]` implied by `#[deny(clippy::pedantic)]`
help: change this to
|
67 - col1 = col1.push(text(format!("{}:", str)));
67 + col1 = col1.push(text(format!("{str}:")));
|
|
binding's name is too similar to existing binding:
src/view/splat_extras.rs#L297
error: binding's name is too similar to existing binding
--> src/view/splat_extras.rs:297:7
|
297 | let rites = if let Splat::Werewolf(.., data) = &character.splat {
| ^^^^^
|
note: existing binding defined here
--> src/view/splat_extras.rs:150:7
|
150 | 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#L632
warning: struct update has no effect, all the fields in the struct have already been specified
--> src/main.rs:632:7
|
632 | ..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
|
using `clone` on type `Arcanum` which implements the `Copy` trait:
src/view/splat_extras.rs#L172
warning: using `clone` on type `Arcanum` which implements the `Copy` trait
--> src/view/splat_extras.rs:172:35
|
172 | Some::<Translated<Arcanum>>(rote.arcanum.clone().into()),
| ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `rote.arcanum`
|
= 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
|
very complex type used. Consider factoring parts into `type` definitions:
src/view/overview.rs#L500
warning: very complex type used. Consider factoring parts into `type` definitions
--> src/view/overview.rs:500:37
|
500 | let (passive, common, specific): (
| ______________________________________________^
501 | | Element<Self::Event, Theme>,
502 | | Element<Self::Event, Theme>,
503 | | Element<Self::Event, Theme>,
504 | | ) = 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#L24
warning: large size difference between variants
--> src/view/creator.rs:24:1
|
24 | / pub enum Event {
25 | | SplatChanged(Splat), // TODO: Switch to using a unit-varianted "SplatKind" enum here
| | ------------------- the largest variant contains at least 424 bytes
26 | | Done,
| | ---- the second-largest variant carries no data at all
27 | | }
| |_^ the entire enum is at least 424 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
|
25 | 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#L78
warning: usage of an `Arc` that is not `Send` and `Sync`
--> src/i18n.rs:78:3
|
78 | 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
|
this `if` has identical blocks:
src/component/traits.rs#L98
warning: this `if` has identical blocks
--> src/component/traits.rs:98:45
|
98 | let alternate_xp = if self.traits.alt_opt {
| ___________________________________________________^
99 | | row![]
100 | | } else {
| |_________^
|
note: same as this
--> src/component/traits.rs:100:10
|
100 | } else {
| ________________^
101 | | row![
102 | | // text(format!(
103 | | // "{}: {}",
... |
107 | | ]
108 | | };
| |_________^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else
= note: `#[warn(clippy::if_same_then_else)]` on by default
|
fields `alternate_beats`, `alternate_experience`, and `splat` are never read:
src/component/traits.rs#L16
warning: fields `alternate_beats`, `alternate_experience`, and `splat` are never read
--> src/component/traits.rs:16:2
|
9 | struct Traits {
| ------ fields in this struct
...
16 | alternate_beats: u16,
| ^^^^^^^^^^^^^^^
17 | alternate_experience: u16,
| ^^^^^^^^^^^^^^^^^^^^
...
21 | splat: String,
| ^^^^^
|
= note: `#[warn(dead_code)]` on by default
|
unused variable: `renderer`:
src/widget/track.rs#L70
warning: unused variable: `renderer`
--> src/widget/track.rs:70:3
|
70 | renderer: &Renderer,
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer`
|
unused variable: `tree`:
src/widget/track.rs#L69
warning: unused variable: `tree`
--> src/widget/track.rs:69:3
|
69 | tree: &mut widget::Tree,
| ^^^^ help: if this is intentional, prefix it with an underscore: `_tree`
|
= note: `#[warn(unused_variables)]` on by default
|
unused import: `Splat`:
src/main.rs#L301
warning: unused import: `Splat`
--> src/main.rs:301:77
|
301 | splat::{changeling::*, geist::*, mage::*, vampire::*, werewolf::*, Merit, Splat},
| ^^^^^
|
unused import: `Alignment`:
src/widget/track.rs#L8
warning: unused import: `Alignment`
--> src/widget/track.rs:8:19
|
8 | use iced::{mouse, Alignment, Border, Color, Element, Length, Rectangle, Size};
| ^^^^^^^^^
|
unused imports: `Column` and `Row`:
src/widget/track.rs#L6
warning: unused imports: `Column` and `Row`
--> src/widget/track.rs:6:26
|
6 | use iced::widget::{text, Column, Row};
| ^^^^^^ ^^^
|
unused import: `Alignment`:
src/widget/dots.rs#L9
warning: unused import: `Alignment`
--> src/widget/dots.rs:9:19
|
9 | use iced::{mouse, Alignment, Border, Color, Element, Length, Rectangle, Size};
| ^^^^^^^^^
|
unused import: `Padding`:
src/widget/dots.rs#L8
warning: unused import: `Padding`
--> src/widget/dots.rs:8:38
|
8 | use iced::{event, touch, Background, Padding, Point, Theme};
| ^^^^^^^
|
unused imports: `Column` and `Row`:
src/widget/dots.rs#L7
warning: unused imports: `Column` and `Row`
--> src/widget/dots.rs:7:26
|
7 | use iced::widget::{text, Column, Row};
| ^^^^^^ ^^^
|
unused import: `std::array`:
src/widget/dots.rs#L1
warning: unused import: `std::array`
--> src/widget/dots.rs:1:5
|
1 | use std::array;
| ^^^^^^^^^^
|
unused import: `marker::PhantomData`:
src/view/equipment.rs#L1
warning: unused import: `marker::PhantomData`
--> src/view/equipment.rs:1:26
|
1 | use std::{cell::RefCell, marker::PhantomData, rc::Rc};
| ^^^^^^^^^^^^^^^^^^^
|
unused import: `i18n::Translate`:
src/view/creator.rs#L9
warning: unused import: `i18n::Translate`
--> src/view/creator.rs:9:13
|
9 | use crate::{i18n::Translate, INPUT_PADDING};
| ^^^^^^^^^^^^^^^
|
unused import: `OnceCell`:
src/i18n.rs#L21
warning: unused import: `OnceCell`
--> src/i18n.rs:21:29
|
21 | use once_cell::sync::{Lazy, OnceCell};
| ^^^^^^^^
|
unused import: `NameKey`:
src/i18n.rs#L7
warning: unused import: `NameKey`
--> src/i18n.rs:7:26
|
7 | use cofd::splat::{Merit, NameKey, Splat, XSplat, YSplat, ZSplat};
| ^^^^^^^
|
unused import: `crate::i18n`:
src/i18n.rs#L1
warning: unused import: `crate::i18n`
--> src/i18n.rs:1:5
|
1 | use crate::i18n;
| ^^^^^^^^^^^
|
unused import: `i18n::Translate`:
src/component/merits.rs#L11
warning: unused import: `i18n::Translate`
--> src/component/merits.rs:11:2
|
11 | i18n::Translate,
| ^^^^^^^^^^^^^^^
|
unused import: `ops::Deref`:
src/component/integrity.rs#L5
warning: unused import: `ops::Deref`
--> src/component/integrity.rs:5:26
|
5 | use std::{cell::RefCell, ops::Deref, rc::Rc};
| ^^^^^^^^^^
|
unused import: `fl`:
src/component/forms.rs#L3
warning: unused import: `fl`
--> src/component/forms.rs:3:13
|
3 | use crate::{fl, i18n::Translate, Element, INPUT_PADDING};
| ^^
|
unused import: `Size`:
src/main.rs#L17
warning: unused import: `Size`
--> src/main.rs:17:62
|
17 | Alignment, Application, Command, Element, Length, Settings, Size, Theme,
| ^^^^
|
= note: `#[warn(unused_imports)]` 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/
|