zoc icon indicating copy to clipboard operation
zoc copied to clipboard

Experiment with rust-clippy

Open ozkriff opened this issue 9 years ago • 7 comments

https://github.com/Manishearth/rust-clippy

ozkriff avatar Sep 18 '15 07:09 ozkriff

https://github.com/ozkriff/zoc/pull/201

ozkriff avatar Jul 30 '16 22:07 ozkriff

А, черт, я неправильно запускал clippy. Надо переходить в директорию src/core и src/visualizer и там запускать - тогда ошибок еще порядочно. Надо вычистить.

ozkriff avatar Jul 31 '16 19:07 ozkriff

Некоторые предупреждения между делом почистил в рамках задачи про дороги (#152). Надо бы отдельно закомитить, если получится.

ozkriff avatar Aug 01 '16 06:08 ozkriff

Немного поправил, остались еще вот эти на данный момент:

$ cd src/core 
$ cargo clippy
   Compiling core v0.0.1 (file:///home/lesnikov/zoc/main/src/core)
src/db.rs:321:5: 328:6 warning: you should consider deriving a `Default` implementation for `db::Db`, #[warn(new_without_default_derive)] on by default 
src/db.rs:321     pub fn new() -> Db {
                  ^
src/db.rs:321:5: 321:5 help: try this
src/db.rs         #[derive(Default)]
src/db.rs         pub fn new() -> Db {
src/db.rs:321:5: 328:6 help: for further information visit https://github.com/Manishearth/rust-clippy/wiki#new_without_default_derive 
src/lib.rs:279:13: 279:34 warning: I see you're using a LinkedList! Perhaps you meant some other data structure?, #[warn(linkedlist)] on by default 
src/lib.rs:279     events: LinkedList<CoreEvent>,
                           ^~~~~~~~~~~~~~~~~~~~~
src/lib.rs:279:13: 279:34 help: a VecDeque might work 
src/lib.rs:279:13: 279:34 help: for further information visit https://github.com/Manishearth/rust-clippy/wiki#linkedlist 
src/lib.rs:632:5: 636:6 warning: the loop variable `i` is used to index `slots`, #[warn(needless_range_loop)] on by default 
src/lib.rs:632     for i in 0..MAX_GROUND_SLOTS_COUNT {
                   ^
src/lib.rs:632:9: 632:10 help: consider using an iterator
src/lib.rs         for (i, <item>) in slots.iter().enumerate().take(MAX_GROUND_SLOTS_COUNT) {
src/lib.rs:632:5: 636:6 help: for further information visit https://github.com/Manishearth/rust-clippy/wiki#needless_range_loop 
src/lib.rs:686:5: 690:6 warning: the loop variable `i` is used to index `slots`, #[warn(needless_range_loop)] on by default 
src/lib.rs:686     for i in 0..MAX_GROUND_SLOTS_COUNT {
                   ^
src/lib.rs:686:9: 686:10 help: consider using an iterator
src/lib.rs         for (i, <item>) in slots.iter().enumerate().take(MAX_GROUND_SLOTS_COUNT) {
src/lib.rs:686:5: 690:6 help: for further information visit https://github.com/Manishearth/rust-clippy/wiki#needless_range_loop 
$ cd ../visualizer 
$ cargo clippy    
   Compiling core v0.0.1 (file:///home/lesnikov/zoc/main/src/core)
   Compiling visualizer v0.0.1 (file:///home/lesnikov/zoc/main/src/visualizer)
src/event_visualizer.rs:373:5: 396:6 warning: this function has too many arguments (8/7), #[warn(too_many_arguments)] on by default 
src/event_visualizer.rs:373     pub fn new(
                                ^
src/event_visualizer.rs:373:5: 396:6 help: for further information visit https://github.com/Manishearth/rust-clippy/wiki#too_many_arguments 
src/lib.rs:61:5: 75:6 warning: you should consider adding a `Default` implementation for `Visualizer`, #[warn(new_without_default)] on by default 
src/lib.rs:61     pub fn new() -> Visualizer {
                  ^
src/lib.rs:61:5: 61:5 help: try this
src/lib.rs        impl Default for Visualizer {
src/lib.rs            fn default() -> Self {
src/lib.rs                Self::new()
src/lib.rs            }
src/lib.rs        }
src/lib.rs    
...
src/lib.rs:61:5: 75:6 help: for further information visit https://github.com/Manishearth/rust-clippy/wiki#new_without_default 
$ 

ozkriff avatar Aug 01 '16 06:08 ozkriff

Убрал предупреждения про циклы и список.


Removed loop and linkedlist warnings.

ozkriff avatar Aug 02 '16 07:08 ozkriff

Много лишних вызовов .clone() должно появиться, с учетом добавления Copy для большей части мелких типов. Надо тоже вычистить.

ozkriff avatar Aug 17 '16 06:08 ozkriff

Вычистил все clone, которые попались на глаза в рамках https://github.com/ozkriff/zoc/issues/217. Заодно опять подчистил почти все предупреждения клиппи.

ozkriff avatar Aug 24 '16 19:08 ozkriff