[INFO] updating cached repository ashishnegi/learndb [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/ashishnegi/learndb [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/ashishnegi/learndb" "work/ex/clippy-test-run/sources/stable/gh/ashishnegi/learndb"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/ashishnegi/learndb'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/ashishnegi/learndb" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ashishnegi/learndb"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ashishnegi/learndb'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 59642e60bca7e59446f936c1836f98a1805d108f [INFO] sha for GitHub repo ashishnegi/learndb: 59642e60bca7e59446f936c1836f98a1805d108f [INFO] validating manifest of ashishnegi/learndb on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of ashishnegi/learndb on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing ashishnegi/learndb [INFO] finished frobbing ashishnegi/learndb [INFO] frobbed toml for ashishnegi/learndb written to work/ex/clippy-test-run/sources/stable/gh/ashishnegi/learndb/Cargo.toml [INFO] started frobbing ashishnegi/learndb [INFO] finished frobbing ashishnegi/learndb [INFO] frobbed toml for ashishnegi/learndb written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ashishnegi/learndb/Cargo.toml [INFO] crate ashishnegi/learndb has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on the registry index [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting ashishnegi/learndb against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/ashishnegi/learndb:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] a02fa30d69e7c1d357025f92259086cf82c9bde73fd61bcd5d4248c15d5cee3d [INFO] running `"docker" "start" "-a" "a02fa30d69e7c1d357025f92259086cf82c9bde73fd61bcd5d4248c15d5cee3d"` [INFO] [stderr] Checking learndb v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/sqmain.rs:229:31 [INFO] [stderr] | [INFO] [stderr] 229 | AssertSelectOutFn{count: count} [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `count` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/table.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | pager: pager [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `pager` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/pager.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | filesize: filesize, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `filesize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/pager.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | page_size: page_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `page_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/pager.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | max_pages: max_pages, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `max_pages` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | table: table, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | page_num: page_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `page_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | cell_num: cell_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `cell_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | table: table, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | page_num: page_num, // page_num is index. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `page_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | cell_num: cell_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `cell_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | node_type: node_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `node_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | num_cells: num_cells, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `num_cells` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | next_sibling_num: next_sibling_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `next_sibling_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | is_root: is_root, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `is_root` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/sqliters/page.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 182 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/context.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | select_outfn: select_outfn [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `select_outfn` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/sqmain.rs:229:31 [INFO] [stderr] | [INFO] [stderr] 229 | AssertSelectOutFn{count: count} [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `count` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/table.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | pager: pager [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `pager` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/pager.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | filesize: filesize, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `filesize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/pager.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | page_size: page_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `page_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/pager.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | max_pages: max_pages, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `max_pages` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | table: table, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | page_num: page_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `page_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | cell_num: cell_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `cell_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | table: table, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | page_num: page_num, // page_num is index. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `page_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/cursor.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | cell_num: cell_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `cell_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | node_type: node_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `node_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | num_cells: num_cells, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `num_cells` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | next_sibling_num: next_sibling_num, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `next_sibling_num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/page.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | is_root: is_root, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `is_root` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/sqliters/page.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 182 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sqliters/context.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | select_outfn: select_outfn [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `select_outfn` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/statement.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | return Ok(Statement::Select) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(Statement::Select)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/pager.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | return Ok(&mut self.pages[page_num]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(&mut self.pages[page_num])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/pager.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 108 | return self.filesize / (self.page_size as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.filesize / (self.page_size as u64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/pager.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | return self.num_pages; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.num_pages` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/cursor.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | return Ok(&mut page.get_data()[row_offset .. row_offset + consts::CELL_SIZE]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(&mut page.get_data()[row_offset .. row_offset + consts::CELL_SIZE])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/page.rs:265:9 [INFO] [stderr] | [INFO] [stderr] 265 | return key_start_pos; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `key_start_pos` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/statement.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | return Ok(Statement::Select) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(Statement::Select)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/pager.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | return Ok(&mut self.pages[page_num]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(&mut self.pages[page_num])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/pager.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 108 | return self.filesize / (self.page_size as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.filesize / (self.page_size as u64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/pager.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | return self.num_pages; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.num_pages` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/cursor.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | return Ok(&mut page.get_data()[row_offset .. row_offset + consts::CELL_SIZE]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(&mut page.get_data()[row_offset .. row_offset + consts::CELL_SIZE])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sqliters/page.rs:265:9 [INFO] [stderr] | [INFO] [stderr] 265 | return key_start_pos; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `key_start_pos` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: method is never used: `delete_db` [INFO] [stderr] --> src/sqliters/table.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn delete_db(&mut self) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `delete_db_file` [INFO] [stderr] --> src/sqliters/pager.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn delete_db_file(&mut self) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_root_node` [INFO] [stderr] --> src/sqliters/page.rs:397:1 [INFO] [stderr] | [INFO] [stderr] 397 | fn is_root_node(page: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/sqliters/cursor.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | / let mut cell_num = 0; [INFO] [stderr] 17 | | if num_pages != 0 { [INFO] [stderr] 18 | | let key_pos = table.find_key_pos(std::i32::MIN)?; // go to last leaf. [INFO] [stderr] 19 | | page_num = key_pos.0; [INFO] [stderr] 20 | | cell_num = key_pos.1; [INFO] [stderr] 21 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let cell_num = if num_pages != 0 { ..; key_pos.1 } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/sqliters/cursor.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | / let mut cell_num = 0; [INFO] [stderr] 35 | | if num_pages != 0 { [INFO] [stderr] 36 | | let key_pos = table.find_key_pos(key)?; [INFO] [stderr] 37 | | page_num = key_pos.0; [INFO] [stderr] 38 | | cell_num = key_pos.1; [INFO] [stderr] 39 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let cell_num = if num_pages != 0 { ..; key_pos.1 } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:131:53 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn add_data(&mut self, cell_pos: u64, data: &Vec) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:152:56 [INFO] [stderr] | [INFO] [stderr] 152 | pub fn update_data(&mut self, cell_pos: u64, data: &Vec) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/sqliters/page.rs:166:9 [INFO] [stderr] | [INFO] [stderr] 166 | / match self.node_type { [INFO] [stderr] 167 | | NodeType::Internal => print!("right_page_num: {}, ", self.get_page_num(self.num_cells())), [INFO] [stderr] 168 | | _ => {} [INFO] [stderr] 169 | | } [INFO] [stderr] | |_________^ help: try this: `if let NodeType::Internal = self.node_type { print!("right_page_num: {}, ", self.get_page_num(self.num_cells())) }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/sqliters/page.rs:173:13 [INFO] [stderr] | [INFO] [stderr] 173 | / match self.node_type { [INFO] [stderr] 174 | | NodeType::Internal => { [INFO] [stderr] 175 | | let cell = self.get_cell(i); [INFO] [stderr] 176 | | print!("->{},", page::internal_node_left_page_num(&cell)) [INFO] [stderr] 177 | | }, [INFO] [stderr] 178 | | _ => {} [INFO] [stderr] 179 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 173 | if let NodeType::Internal = self.node_type { [INFO] [stderr] 174 | let cell = self.get_cell(i); [INFO] [stderr] 175 | print!("->{},", page::internal_node_left_page_num(&cell)) [INFO] [stderr] 176 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:310:23 [INFO] [stderr] | [INFO] [stderr] 310 | fn is_leaf_node(page: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:327:29 [INFO] [stderr] | [INFO] [stderr] 327 | fn get_cell_count_ref(page: &Vec) -> &[u8] { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:335:24 [INFO] [stderr] | [INFO] [stderr] 335 | fn get_num_cells(page: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:341:67 [INFO] [stderr] | [INFO] [stderr] 341 | fn leaf_copy_at_cell_pos(page: &mut Vec, cell_pos: u64, data: &Vec) { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/sqliters/page.rs:345:16 [INFO] [stderr] | [INFO] [stderr] 345 | for pos in 0 .. consts::KEY_SIZE { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try replacing the loop by: `cell[..consts::KEY_SIZE].clone_from_slice(&data[..consts::KEY_SIZE])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/sqliters/page.rs:349:16 [INFO] [stderr] | [INFO] [stderr] 349 | for pos in 0..data.len() { [INFO] [stderr] | ^^^^^^^^^^^^^ help: try replacing the loop by: `cell[consts::VALUE_OFFSET..(data.len() + consts::VALUE_OFFSET)].clone_from_slice(&data[..])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:354:71 [INFO] [stderr] | [INFO] [stderr] 354 | fn internal_copy_at_cell_pos(page: &mut Vec, cell_pos: u64, data: &Vec) { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/sqliters/page.rs:385:14 [INFO] [stderr] | [INFO] [stderr] 385 | for c in 0..consts::NUM_ENTRIES_SIZE { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try replacing the loop by: `count_ref[..consts::NUM_ENTRIES_SIZE].clone_from_slice(&count_bytes[..consts::NUM_ENTRIES_SIZE])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:397:23 [INFO] [stderr] | [INFO] [stderr] 397 | fn is_root_node(page: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:424:21 [INFO] [stderr] | [INFO] [stderr] 424 | fn get_key_at(page: &Vec, key_start_offset: usize, cell_size: usize, key_pos: u64) -> i32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:433:26 [INFO] [stderr] | [INFO] [stderr] 433 | fn leaf_get_key_at(page: &Vec, key_pos: u64) -> i32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:438:35 [INFO] [stderr] | [INFO] [stderr] 438 | fn internal_node_get_key_at(page: &Vec, key_pos: u64) -> i32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:443:32 [INFO] [stderr] | [INFO] [stderr] 443 | fn internal_node_cell_at(page: &Vec, key_pos: u64) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:457:41 [INFO] [stderr] | [INFO] [stderr] 457 | pub fn internal_node_left_page_num(buf: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:465:43 [INFO] [stderr] | [INFO] [stderr] 465 | pub fn internal_node_right_page_num(page: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:480:37 [INFO] [stderr] | [INFO] [stderr] 480 | fn leaf_node_next_sibling_num(page: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_root_node` [INFO] [stderr] --> src/sqliters/page.rs:397:1 [INFO] [stderr] | [INFO] [stderr] 397 | fn is_root_node(page: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/sqliters/sqmain.rs:59:64 [INFO] [stderr] | [INFO] [stderr] 59 | process_command(&mut context, &mut table, command).expect(format!("Failed at command '{}'", command).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed at command '{}'", command))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::expect_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/sqliters/sqmain.rs:77:64 [INFO] [stderr] | [INFO] [stderr] 77 | process_command(&mut context, &mut table, command).expect(format!("Failed at command '{}'", command).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed at command '{}'", command))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/sqliters/sqmain.rs:99:18 [INFO] [stderr] | [INFO] [stderr] 99 | .expect(format!("Failed at command '{}' : table : {} \r\n : {:?} ", command, table.print(), table).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed at command '{}' : table : {} \r\n : {:?} ", command))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/sqliters/sqmain.rs:102:21 [INFO] [stderr] | [INFO] [stderr] 102 | if let Some(foo) = context.get_out().downcast_ref::() { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::blacklisted_name)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/sqliters/sqmain.rs:124:64 [INFO] [stderr] | [INFO] [stderr] 124 | process_command(&mut context, &mut table, command).expect(format!("Failed at command '{}', table {:?}", command, table).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed at command '{}', table {:?}", command))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/sqliters/sqmain.rs:129:21 [INFO] [stderr] | [INFO] [stderr] 129 | if let Some(foo) = context.get_out().downcast_ref::() { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/sqliters/sqmain.rs:152:64 [INFO] [stderr] | [INFO] [stderr] 152 | process_command(&mut context, &mut table, command).expect(format!("Failed at command '{}', table {:?}", command, table).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed at command '{}', table {:?}", command))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/sqliters/sqmain.rs:160:21 [INFO] [stderr] | [INFO] [stderr] 160 | if let Some(foo) = context.get_out().downcast_ref::() { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/sqliters/sqmain.rs:185:68 [INFO] [stderr] | [INFO] [stderr] 185 | process_command(&mut context, &mut table, command).expect(format!("Failed at command '{}', table {:?}", command, table).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed at command '{}', table {:?}", command))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/sqliters/sqmain.rs:189:25 [INFO] [stderr] | [INFO] [stderr] 189 | if let Some(foo) = context.get_out().downcast_ref::() { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: use of a blacklisted/placeholder name `foo` [INFO] [stderr] --> src/sqliters/sqmain.rs:205:25 [INFO] [stderr] | [INFO] [stderr] 205 | if let Some(foo) = context.get_out().downcast_ref::() { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blacklisted_name [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/sqliters/cursor.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | / let mut cell_num = 0; [INFO] [stderr] 17 | | if num_pages != 0 { [INFO] [stderr] 18 | | let key_pos = table.find_key_pos(std::i32::MIN)?; // go to last leaf. [INFO] [stderr] 19 | | page_num = key_pos.0; [INFO] [stderr] 20 | | cell_num = key_pos.1; [INFO] [stderr] 21 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let cell_num = if num_pages != 0 { ..; key_pos.1 } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/sqliters/cursor.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | / let mut cell_num = 0; [INFO] [stderr] 35 | | if num_pages != 0 { [INFO] [stderr] 36 | | let key_pos = table.find_key_pos(key)?; [INFO] [stderr] 37 | | page_num = key_pos.0; [INFO] [stderr] 38 | | cell_num = key_pos.1; [INFO] [stderr] 39 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let cell_num = if num_pages != 0 { ..; key_pos.1 } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:131:53 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn add_data(&mut self, cell_pos: u64, data: &Vec) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:152:56 [INFO] [stderr] | [INFO] [stderr] 152 | pub fn update_data(&mut self, cell_pos: u64, data: &Vec) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/sqliters/page.rs:166:9 [INFO] [stderr] | [INFO] [stderr] 166 | / match self.node_type { [INFO] [stderr] 167 | | NodeType::Internal => print!("right_page_num: {}, ", self.get_page_num(self.num_cells())), [INFO] [stderr] 168 | | _ => {} [INFO] [stderr] 169 | | } [INFO] [stderr] | |_________^ help: try this: `if let NodeType::Internal = self.node_type { print!("right_page_num: {}, ", self.get_page_num(self.num_cells())) }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/sqliters/page.rs:173:13 [INFO] [stderr] | [INFO] [stderr] 173 | / match self.node_type { [INFO] [stderr] 174 | | NodeType::Internal => { [INFO] [stderr] 175 | | let cell = self.get_cell(i); [INFO] [stderr] 176 | | print!("->{},", page::internal_node_left_page_num(&cell)) [INFO] [stderr] 177 | | }, [INFO] [stderr] 178 | | _ => {} [INFO] [stderr] 179 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 173 | if let NodeType::Internal = self.node_type { [INFO] [stderr] 174 | let cell = self.get_cell(i); [INFO] [stderr] 175 | print!("->{},", page::internal_node_left_page_num(&cell)) [INFO] [stderr] 176 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:310:23 [INFO] [stderr] | [INFO] [stderr] 310 | fn is_leaf_node(page: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:327:29 [INFO] [stderr] | [INFO] [stderr] 327 | fn get_cell_count_ref(page: &Vec) -> &[u8] { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:335:24 [INFO] [stderr] | [INFO] [stderr] 335 | fn get_num_cells(page: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:341:67 [INFO] [stderr] | [INFO] [stderr] 341 | fn leaf_copy_at_cell_pos(page: &mut Vec, cell_pos: u64, data: &Vec) { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/sqliters/page.rs:345:16 [INFO] [stderr] | [INFO] [stderr] 345 | for pos in 0 .. consts::KEY_SIZE { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try replacing the loop by: `cell[..consts::KEY_SIZE].clone_from_slice(&data[..consts::KEY_SIZE])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/sqliters/page.rs:349:16 [INFO] [stderr] | [INFO] [stderr] 349 | for pos in 0..data.len() { [INFO] [stderr] | ^^^^^^^^^^^^^ help: try replacing the loop by: `cell[consts::VALUE_OFFSET..(data.len() + consts::VALUE_OFFSET)].clone_from_slice(&data[..])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:354:71 [INFO] [stderr] | [INFO] [stderr] 354 | fn internal_copy_at_cell_pos(page: &mut Vec, cell_pos: u64, data: &Vec) { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/sqliters/page.rs:385:14 [INFO] [stderr] | [INFO] [stderr] 385 | for c in 0..consts::NUM_ENTRIES_SIZE { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try replacing the loop by: `count_ref[..consts::NUM_ENTRIES_SIZE].clone_from_slice(&count_bytes[..consts::NUM_ENTRIES_SIZE])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:397:23 [INFO] [stderr] | [INFO] [stderr] 397 | fn is_root_node(page: &Vec) -> bool { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:424:21 [INFO] [stderr] | [INFO] [stderr] 424 | fn get_key_at(page: &Vec, key_start_offset: usize, cell_size: usize, key_pos: u64) -> i32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:433:26 [INFO] [stderr] | [INFO] [stderr] 433 | fn leaf_get_key_at(page: &Vec, key_pos: u64) -> i32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:438:35 [INFO] [stderr] | [INFO] [stderr] 438 | fn internal_node_get_key_at(page: &Vec, key_pos: u64) -> i32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:443:32 [INFO] [stderr] | [INFO] [stderr] 443 | fn internal_node_cell_at(page: &Vec, key_pos: u64) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:457:41 [INFO] [stderr] | [INFO] [stderr] 457 | pub fn internal_node_left_page_num(buf: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:465:43 [INFO] [stderr] | [INFO] [stderr] 465 | pub fn internal_node_right_page_num(page: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/sqliters/page.rs:480:37 [INFO] [stderr] | [INFO] [stderr] 480 | fn leaf_node_next_sibling_num(page: &Vec) -> u64 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stderr] --> src/sqliters/context.rs:41:30 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn get_out(&self) -> &Box { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `&OutFn` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::borrowed_box)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.51s [INFO] running `"docker" "inspect" "a02fa30d69e7c1d357025f92259086cf82c9bde73fd61bcd5d4248c15d5cee3d"` [INFO] running `"docker" "rm" "-f" "a02fa30d69e7c1d357025f92259086cf82c9bde73fd61bcd5d4248c15d5cee3d"` [INFO] [stdout] a02fa30d69e7c1d357025f92259086cf82c9bde73fd61bcd5d4248c15d5cee3d