[INFO] updating cached repository https://github.com/wspeirs/mem_table [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] f9515e477df3848c93cacd5855bcffacf8105187 [INFO] testing wspeirs/mem_table against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwspeirs%2Fmem_table" "/workspace/builds/worker-9/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/wspeirs/mem_table on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/wspeirs/mem_table [INFO] finished tweaking git repo https://github.com/wspeirs/mem_table [INFO] tweaked toml for git repo https://github.com/wspeirs/mem_table written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/wspeirs/mem_table already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stdout] 707c4c0cf04744a039222503431c7c5920eed40e945c2eb9115b400ac3c8b39e [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "707c4c0cf04744a039222503431c7c5920eed40e945c2eb9115b400ac3c8b39e"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling memchr v2.3.0 [INFO] [stderr] Compiling num-bigint v0.2.5 [INFO] [stderr] Compiling memmap v0.7.0 [INFO] [stderr] Compiling regex-automata v0.1.8 [INFO] [stderr] Compiling ordered-float v1.0.2 [INFO] [stderr] Compiling num-iter v0.1.40 [INFO] [stderr] Compiling crossbeam-queue v0.2.1 [INFO] [stderr] Compiling chrono v0.4.10 [INFO] [stderr] Compiling rayon-core v1.7.0 [INFO] [stderr] Compiling rayon v1.3.0 [INFO] [stderr] Compiling csv-core v0.1.6 [INFO] [stderr] Compiling bstr v0.2.9 [INFO] [stderr] Compiling num-rational v0.2.3 [INFO] [stderr] Compiling csv v1.1.2 [INFO] [stderr] Compiling num v0.2.1 [INFO] [stderr] Compiling rust_decimal v0.10.2 [INFO] [stderr] Compiling dtparse v1.0.3 [INFO] [stderr] Compiling large_table v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error as IOError`, `Read` [INFO] [stderr] --> src/lib.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, Read}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Error as FmtError`, `Formatter` [INFO] [stderr] --> src/lib.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | use std::fmt::{Display, Formatter, Error as FmtError}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Hash`, `Hasher` [INFO] [stderr] --> src/lib.rs:9:17 [INFO] [stderr] | [INFO] [stderr] 9 | use std::hash::{Hash, Hasher}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::Ref` [INFO] [stderr] --> src/lib.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::cell::Ref; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FusedIterator` [INFO] [stderr] --> src/lib.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::iter::FusedIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/lib.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Reader` [INFO] [stderr] --> src/lib.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | use csv::{Reader, Writer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/row.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/row.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/row.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::Table` [INFO] [stderr] --> src/row.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::Table; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/row_table.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stderr] --> src/row_table.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::hash_map::RandomState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::Map` [INFO] [stderr] --> src/row_table.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::iter::Map; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ByteRecord`, `ReaderBuilder`, `Trim` [INFO] [stderr] --> src/row_table.rs:12:33 [INFO] [stderr] | [INFO] [stderr] 12 | use csv::{Reader, StringRecord, ByteRecord, ReaderBuilder, Trim}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Cursor` [INFO] [stderr] --> src/mmap_table.rs:5:44 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, ErrorKind, Cursor}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MmapOptions` [INFO] [stderr] --> src/mmap_table.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | use memmap::{MmapMut, MmapOptions}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/lib.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/row_table.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pos` [INFO] [stderr] --> src/lib.rs:203:13 [INFO] [stderr] | [INFO] [stderr] 203 | let pos = self.column_position(column)?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_pos` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/row.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/row.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:269:56 [INFO] [stderr] | [INFO] [stderr] 269 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:284:40 [INFO] [stderr] | [INFO] [stderr] 284 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:381:40 [INFO] [stderr] | [INFO] [stderr] 381 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_val` [INFO] [stderr] --> src/row_table.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | let new_val = (new_col.to_string(), self.column_map[pos].1); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `update` [INFO] [stderr] --> src/mmap_table.rs:84:59 [INFO] [stderr] | [INFO] [stderr] 84 | fn update_by(&mut self, update: F) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `row` [INFO] [stderr] --> src/mmap_table.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | fn append_row(&mut self, row: R) -> Result<(), TableError> where R: Row { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_row` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column_name` [INFO] [stderr] --> src/mmap_table.rs:92:56 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_column_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/mmap_table.rs:92:75 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:96:48 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:131:24 [INFO] [stderr] | [INFO] [stderr] 131 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:182:56 [INFO] [stderr] | [INFO] [stderr] 182 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read` [INFO] [stderr] --> src/mmap_table.rs:200:19 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:200:25 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:200:34 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:217:40 [INFO] [stderr] | [INFO] [stderr] 217 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:255:40 [INFO] [stderr] | [INFO] [stderr] 255 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:258:24 [INFO] [stderr] | [INFO] [stderr] 258 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:281:29 [INFO] [stderr] | [INFO] [stderr] 281 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `compare` [INFO] [stderr] --> src/mmap_table.rs:287:75 [INFO] [stderr] | [INFO] [stderr] 287 | fn sort_by Ordering>(&self, compare: F) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compare` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:291:29 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:291:44 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mmap_table.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let mut mmap = unsafe { MmapMut::map_mut(&file)? }; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | self.append_row(row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | csv.write_record(self.columns()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | / csv.write_record(self.columns().iter().map(|c| { [INFO] [stderr] 173 | | row.get(c).as_string() [INFO] [stderr] 174 | | })); [INFO] [stderr] | |________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:344:13 [INFO] [stderr] | [INFO] [stderr] 344 | writeln!(f, "{:?}", self.table.lock().unwrap().rows[*row]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 53 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 16.88s [INFO] running `"docker" "inspect" "707c4c0cf04744a039222503431c7c5920eed40e945c2eb9115b400ac3c8b39e"` [INFO] running `"docker" "rm" "-f" "707c4c0cf04744a039222503431c7c5920eed40e945c2eb9115b400ac3c8b39e"` [INFO] [stdout] 707c4c0cf04744a039222503431c7c5920eed40e945c2eb9115b400ac3c8b39e [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 0039dfe438aa4bcd9bf90d675c014c03725f670fbab5cfabb0f42018af22bd63 [INFO] running `"docker" "start" "-a" "0039dfe438aa4bcd9bf90d675c014c03725f670fbab5cfabb0f42018af22bd63"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling regex-syntax v0.6.14 [INFO] [stderr] Compiling oorandom v11.1.0 [INFO] [stderr] Compiling plotters v0.2.12 [INFO] [stderr] Compiling criterion-plot v0.4.1 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling simple_logger v0.5.0 [INFO] [stderr] Compiling serde_json v1.0.45 [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error as IOError`, `Read` [INFO] [stderr] --> src/lib.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, Read}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Error as FmtError`, `Formatter` [INFO] [stderr] --> src/lib.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | use std::fmt::{Display, Formatter, Error as FmtError}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Hash`, `Hasher` [INFO] [stderr] --> src/lib.rs:9:17 [INFO] [stderr] | [INFO] [stderr] 9 | use std::hash::{Hash, Hasher}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::Ref` [INFO] [stderr] --> src/lib.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::cell::Ref; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FusedIterator` [INFO] [stderr] --> src/lib.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::iter::FusedIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/lib.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Reader` [INFO] [stderr] --> src/lib.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | use csv::{Reader, Writer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/row.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/row.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/row.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::Table` [INFO] [stderr] --> src/row.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::Table; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/row_table.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stderr] --> src/row_table.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::hash_map::RandomState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::Map` [INFO] [stderr] --> src/row_table.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::iter::Map; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ByteRecord`, `ReaderBuilder`, `Trim` [INFO] [stderr] --> src/row_table.rs:12:33 [INFO] [stderr] | [INFO] [stderr] 12 | use csv::{Reader, StringRecord, ByteRecord, ReaderBuilder, Trim}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Cursor` [INFO] [stderr] --> src/mmap_table.rs:5:44 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, ErrorKind, Cursor}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MmapOptions` [INFO] [stderr] --> src/mmap_table.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | use memmap::{MmapMut, MmapOptions}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/lib.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/row_table.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pos` [INFO] [stderr] --> src/lib.rs:203:13 [INFO] [stderr] | [INFO] [stderr] 203 | let pos = self.column_position(column)?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_pos` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/row.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/row.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:269:56 [INFO] [stderr] | [INFO] [stderr] 269 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:284:40 [INFO] [stderr] | [INFO] [stderr] 284 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:381:40 [INFO] [stderr] | [INFO] [stderr] 381 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_val` [INFO] [stderr] --> src/row_table.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | let new_val = (new_col.to_string(), self.column_map[pos].1); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `update` [INFO] [stderr] --> src/mmap_table.rs:84:59 [INFO] [stderr] | [INFO] [stderr] 84 | fn update_by(&mut self, update: F) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `row` [INFO] [stderr] --> src/mmap_table.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | fn append_row(&mut self, row: R) -> Result<(), TableError> where R: Row { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_row` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column_name` [INFO] [stderr] --> src/mmap_table.rs:92:56 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_column_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/mmap_table.rs:92:75 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:96:48 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:131:24 [INFO] [stderr] | [INFO] [stderr] 131 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:182:56 [INFO] [stderr] | [INFO] [stderr] 182 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read` [INFO] [stderr] --> src/mmap_table.rs:200:19 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:200:25 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:200:34 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:217:40 [INFO] [stderr] | [INFO] [stderr] 217 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:255:40 [INFO] [stderr] | [INFO] [stderr] 255 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:258:24 [INFO] [stderr] | [INFO] [stderr] 258 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:281:29 [INFO] [stderr] | [INFO] [stderr] 281 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `compare` [INFO] [stderr] --> src/mmap_table.rs:287:75 [INFO] [stderr] | [INFO] [stderr] 287 | fn sort_by Ordering>(&self, compare: F) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compare` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:291:29 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:291:44 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mmap_table.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let mut mmap = unsafe { MmapMut::map_mut(&file)? }; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | self.append_row(row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | csv.write_record(self.columns()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | / csv.write_record(self.columns().iter().map(|c| { [INFO] [stderr] 173 | | row.get(c).as_string() [INFO] [stderr] 174 | | })); [INFO] [stderr] | |________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:344:13 [INFO] [stderr] | [INFO] [stderr] 344 | writeln!(f, "{:?}", self.table.lock().unwrap().rows[*row]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 53 warnings emitted [INFO] [stderr] [INFO] [stderr] Compiling tinytemplate v1.0.3 [INFO] [stderr] Compiling regex v1.3.4 [INFO] [stderr] Compiling criterion v0.3.1 [INFO] [stderr] Compiling large_table v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error as IOError`, `Read` [INFO] [stderr] --> src/lib.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, Read}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Error as FmtError`, `Formatter` [INFO] [stderr] --> src/lib.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | use std::fmt::{Display, Formatter, Error as FmtError}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Hash`, `Hasher` [INFO] [stderr] --> src/lib.rs:9:17 [INFO] [stderr] | [INFO] [stderr] 9 | use std::hash::{Hash, Hasher}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::Ref` [INFO] [stderr] --> src/lib.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::cell::Ref; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FusedIterator` [INFO] [stderr] --> src/lib.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::iter::FusedIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/lib.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Reader` [INFO] [stderr] --> src/lib.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | use csv::{Reader, Writer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/row.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/row.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/row.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::Table` [INFO] [stderr] --> src/row.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::Table; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/row_table.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stderr] --> src/row_table.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::hash_map::RandomState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::Map` [INFO] [stderr] --> src/row_table.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::iter::Map; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ByteRecord`, `ReaderBuilder`, `Trim` [INFO] [stderr] --> src/row_table.rs:12:33 [INFO] [stderr] | [INFO] [stderr] 12 | use csv::{Reader, StringRecord, ByteRecord, ReaderBuilder, Trim}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Cursor` [INFO] [stderr] --> src/mmap_table.rs:5:44 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, ErrorKind, Cursor}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MmapOptions` [INFO] [stderr] --> src/mmap_table.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | use memmap::{MmapMut, MmapOptions}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Duration` [INFO] [stderr] --> src/mmap_table.rs:321:9 [INFO] [stderr] | [INFO] [stderr] 321 | use chrono::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/lib.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/row_table.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pos` [INFO] [stderr] --> src/lib.rs:203:13 [INFO] [stderr] | [INFO] [stderr] 203 | let pos = self.column_position(column)?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_pos` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/row.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/row.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:269:56 [INFO] [stderr] | [INFO] [stderr] 269 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:284:40 [INFO] [stderr] | [INFO] [stderr] 284 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:381:40 [INFO] [stderr] | [INFO] [stderr] 381 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_val` [INFO] [stderr] --> src/row_table.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | let new_val = (new_col.to_string(), self.column_map[pos].1); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `update` [INFO] [stderr] --> src/mmap_table.rs:84:59 [INFO] [stderr] | [INFO] [stderr] 84 | fn update_by(&mut self, update: F) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `row` [INFO] [stderr] --> src/mmap_table.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | fn append_row(&mut self, row: R) -> Result<(), TableError> where R: Row { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_row` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column_name` [INFO] [stderr] --> src/mmap_table.rs:92:56 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_column_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/mmap_table.rs:92:75 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:96:48 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:131:24 [INFO] [stderr] | [INFO] [stderr] 131 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:182:56 [INFO] [stderr] | [INFO] [stderr] 182 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read` [INFO] [stderr] --> src/mmap_table.rs:200:19 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:200:25 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:200:34 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:217:40 [INFO] [stderr] | [INFO] [stderr] 217 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:255:40 [INFO] [stderr] | [INFO] [stderr] 255 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:258:24 [INFO] [stderr] | [INFO] [stderr] 258 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:281:29 [INFO] [stderr] | [INFO] [stderr] 281 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `compare` [INFO] [stderr] --> src/mmap_table.rs:287:75 [INFO] [stderr] | [INFO] [stderr] 287 | fn sort_by Ordering>(&self, compare: F) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compare` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:291:29 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:291:44 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mmap_table.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let mut mmap = unsafe { MmapMut::map_mut(&file)? }; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | self.append_row(row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | csv.write_record(self.columns()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | / csv.write_record(self.columns().iter().map(|c| { [INFO] [stderr] 173 | | row.get(c).as_string() [INFO] [stderr] 174 | | })); [INFO] [stderr] | |________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:344:13 [INFO] [stderr] | [INFO] [stderr] 344 | writeln!(f, "{:?}", self.table.lock().unwrap().rows[*row]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:504:9 [INFO] [stderr] | [INFO] [stderr] 504 | table.find_by(|r| { r.get("B"); true }); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:506:31 [INFO] [stderr] | [INFO] [stderr] 506 | table.update_by(|r| { r.set("B", Value::Integer(7));} ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 56 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 25.78s [INFO] running `"docker" "inspect" "0039dfe438aa4bcd9bf90d675c014c03725f670fbab5cfabb0f42018af22bd63"` [INFO] running `"docker" "rm" "-f" "0039dfe438aa4bcd9bf90d675c014c03725f670fbab5cfabb0f42018af22bd63"` [INFO] [stdout] 0039dfe438aa4bcd9bf90d675c014c03725f670fbab5cfabb0f42018af22bd63 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] c25b34df765052114a278e55fd30939dceec09debaaf4428afa70b7631aaa8a5 [INFO] running `"docker" "start" "-a" "c25b34df765052114a278e55fd30939dceec09debaaf4428afa70b7631aaa8a5"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error as IOError`, `Read` [INFO] [stderr] --> src/lib.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, Read}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Error as FmtError`, `Formatter` [INFO] [stderr] --> src/lib.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | use std::fmt::{Display, Formatter, Error as FmtError}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error as IOError`, `Read` [INFO] [stderr] --> src/lib.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, Read}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Hash`, `Hasher` [INFO] [stderr] --> src/lib.rs:9:17 [INFO] [stderr] | [INFO] [stderr] 9 | use std::hash::{Hash, Hasher}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Error as FmtError`, `Formatter` [INFO] [stderr] --> src/lib.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | use std::fmt::{Display, Formatter, Error as FmtError}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::Ref` [INFO] [stderr] --> src/lib.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::cell::Ref; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Hash`, `Hasher` [INFO] [stderr] --> src/lib.rs:9:17 [INFO] [stderr] | [INFO] [stderr] 9 | use std::hash::{Hash, Hasher}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FusedIterator` [INFO] [stderr] --> src/lib.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::iter::FusedIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::Ref` [INFO] [stderr] --> src/lib.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::cell::Ref; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/lib.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FusedIterator` [INFO] [stderr] --> src/lib.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::iter::FusedIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Reader` [INFO] [stderr] --> src/lib.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | use csv::{Reader, Writer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/lib.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/row.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Reader` [INFO] [stderr] --> src/lib.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | use csv::{Reader, Writer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/row.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/row.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/row.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/row.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::Table` [INFO] [stderr] --> src/row.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::Table; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/row.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/row_table.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::Table` [INFO] [stderr] --> src/row.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::Table; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/row_table.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stderr] --> src/row_table.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::hash_map::RandomState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::Map` [INFO] [stderr] --> src/row_table.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::iter::Map; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stderr] --> src/row_table.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::hash_map::RandomState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::Map` [INFO] [stderr] --> src/row_table.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::iter::Map; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ByteRecord`, `ReaderBuilder`, `Trim` [INFO] [stderr] --> src/row_table.rs:12:33 [INFO] [stderr] | [INFO] [stderr] 12 | use csv::{Reader, StringRecord, ByteRecord, ReaderBuilder, Trim}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Cursor` [INFO] [stderr] --> src/mmap_table.rs:5:44 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, ErrorKind, Cursor}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ByteRecord`, `ReaderBuilder`, `Trim` [INFO] [stderr] --> src/row_table.rs:12:33 [INFO] [stderr] | [INFO] [stderr] 12 | use csv::{Reader, StringRecord, ByteRecord, ReaderBuilder, Trim}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MmapOptions` [INFO] [stderr] --> src/mmap_table.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | use memmap::{MmapMut, MmapOptions}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Cursor` [INFO] [stderr] --> src/mmap_table.rs:5:44 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::{Error as IOError, ErrorKind, Cursor}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/lib.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MmapOptions` [INFO] [stderr] --> src/mmap_table.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | use memmap::{MmapMut, MmapOptions}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/row_table.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Duration` [INFO] [stderr] --> src/mmap_table.rs:321:9 [INFO] [stderr] | [INFO] [stderr] 321 | use chrono::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/lib.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pos` [INFO] [stderr] --> src/lib.rs:203:13 [INFO] [stderr] | [INFO] [stderr] 203 | let pos = self.column_position(column)?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_pos` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/row_table.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/row.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pos` [INFO] [stderr] --> src/lib.rs:203:13 [INFO] [stderr] | [INFO] [stderr] 203 | let pos = self.column_position(column)?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_pos` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/row.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/row.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:269:56 [INFO] [stderr] | [INFO] [stderr] 269 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/row.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | fn set(&mut self, column :&str, value :Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:284:40 [INFO] [stderr] | [INFO] [stderr] 284 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:269:56 [INFO] [stderr] | [INFO] [stderr] 269 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:381:40 [INFO] [stderr] | [INFO] [stderr] 381 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:284:40 [INFO] [stderr] | [INFO] [stderr] 284 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_val` [INFO] [stderr] --> src/row_table.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | let new_val = (new_col.to_string(), self.column_map[pos].1); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/row_table.rs:381:40 [INFO] [stderr] | [INFO] [stderr] 381 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_val` [INFO] [stderr] --> src/row_table.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | let new_val = (new_col.to_string(), self.column_map[pos].1); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `update` [INFO] [stderr] --> src/mmap_table.rs:84:59 [INFO] [stderr] | [INFO] [stderr] 84 | fn update_by(&mut self, update: F) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let (res, read, written, num_ends) = reader.read_record(&mmap[pos..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `row` [INFO] [stderr] --> src/mmap_table.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | fn append_row(&mut self, row: R) -> Result<(), TableError> where R: Row { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_row` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `update` [INFO] [stderr] --> src/mmap_table.rs:84:59 [INFO] [stderr] | [INFO] [stderr] 84 | fn update_by(&mut self, update: F) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column_name` [INFO] [stderr] --> src/mmap_table.rs:92:56 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_column_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `row` [INFO] [stderr] --> src/mmap_table.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | fn append_row(&mut self, row: R) -> Result<(), TableError> where R: Row { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_row` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/mmap_table.rs:92:75 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column_name` [INFO] [stderr] --> src/mmap_table.rs:92:56 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_column_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/mmap_table.rs:92:75 [INFO] [stderr] | [INFO] [stderr] 92 | fn add_column_with Value>(&mut self, column_name: &str, f: F) -> Result<(), TableError> { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:96:48 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:96:48 [INFO] [stderr] | [INFO] [stderr] 96 | fn rename_column(&mut self, old_col :&str, new_col :&str) -> Result<(), TableError> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:131:24 [INFO] [stderr] | [INFO] [stderr] 131 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:182:56 [INFO] [stderr] | [INFO] [stderr] 182 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read` [INFO] [stderr] --> src/mmap_table.rs:200:19 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:200:25 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:200:34 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:217:40 [INFO] [stderr] | [INFO] [stderr] 217 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:255:40 [INFO] [stderr] | [INFO] [stderr] 255 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:258:24 [INFO] [stderr] | [INFO] [stderr] 258 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:281:29 [INFO] [stderr] | [INFO] [stderr] 281 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `compare` [INFO] [stderr] --> src/mmap_table.rs:287:75 [INFO] [stderr] | [INFO] [stderr] 287 | fn sort_by Ordering>(&self, compare: F) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compare` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:291:29 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:291:44 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mmap_table.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let mut mmap = unsafe { MmapMut::map_mut(&file)? }; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | self.append_row(row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | csv.write_record(self.columns()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | / csv.write_record(self.columns().iter().map(|c| { [INFO] [stderr] 173 | | row.get(c).as_string() [INFO] [stderr] 174 | | })); [INFO] [stderr] | |________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:344:13 [INFO] [stderr] | [INFO] [stderr] 344 | writeln!(f, "{:?}", self.table.lock().unwrap().rows[*row]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:504:9 [INFO] [stderr] | [INFO] [stderr] 504 | table.find_by(|r| { r.get("B"); true }); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:506:31 [INFO] [stderr] | [INFO] [stderr] 506 | table.update_by(|r| { r.set("B", Value::Integer(7));} ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 56 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:131:24 [INFO] [stderr] | [INFO] [stderr] 131 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:182:56 [INFO] [stderr] | [INFO] [stderr] 182 | let pos = self.column_map.iter().position(|(c, i)| c == column); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read` [INFO] [stderr] --> src/mmap_table.rs:200:19 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_read` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `written` [INFO] [stderr] --> src/mmap_table.rs:200:25 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_written` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_ends` [INFO] [stderr] --> src/mmap_table.rs:200:34 [INFO] [stderr] | [INFO] [stderr] 200 | let (res, read, written, num_ends) = reader.read_record(&table.mmap[offset..], &mut output, &mut ends); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_ends` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:217:40 [INFO] [stderr] | [INFO] [stderr] 217 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mmap_table.rs:255:40 [INFO] [stderr] | [INFO] [stderr] 255 | self.column_map.iter().map(|(c,i)| c.clone()).collect() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `column` [INFO] [stderr] --> src/mmap_table.rs:258:24 [INFO] [stderr] | [INFO] [stderr] 258 | fn group_by(&self, column: &str) -> Result, TableError> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_column` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mid` [INFO] [stderr] --> src/mmap_table.rs:281:29 [INFO] [stderr] | [INFO] [stderr] 281 | fn split_rows_at(&self, mid: usize) -> Result<(Self::TableSliceType, Self::TableSliceType), TableError> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `compare` [INFO] [stderr] --> src/mmap_table.rs:287:75 [INFO] [stderr] | [INFO] [stderr] 287 | fn sort_by Ordering>(&self, compare: F) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compare` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_col` [INFO] [stderr] --> src/mmap_table.rs:291:29 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_col` [INFO] [stderr] --> src/mmap_table.rs:291:44 [INFO] [stderr] | [INFO] [stderr] 291 | fn rename_column(&self, old_col :&str, new_col :&str) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_col` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mmap_table.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let mut mmap = unsafe { MmapMut::map_mut(&file)? }; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | self.append_row(row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | csv.write_record(self.columns()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | / csv.write_record(self.columns().iter().map(|c| { [INFO] [stderr] 173 | | row.get(c).as_string() [INFO] [stderr] 174 | | })); [INFO] [stderr] | |________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/row_table.rs:344:13 [INFO] [stderr] | [INFO] [stderr] 344 | writeln!(f, "{:?}", self.table.lock().unwrap().rows[*row]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 53 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/large_table-9eac192194c0c896 [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test value::test::integer ... ok [INFO] [stdout] test value::test::float ... ok [INFO] [stdout] test value::test::date_time ... ok [INFO] [stdout] test row_table::tests::to_from_csv ... ok [INFO] [stdout] test mmap_table::tests::new ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- mmap_table::tests::new stdout ---- [INFO] [stdout] thread 'mmap_table::tests::new' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/mmap_table.rs:335:21 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x564e52986d15 - backtrace::backtrace::libunwind::trace::h07c956be65d9b461 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x564e52986d15 - backtrace::backtrace::trace_unsynchronized::h2fdb9e4177ad4d20 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x564e52986d15 - std::sys_common::backtrace::_print_fmt::ha62d8426311107ac [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x564e52986d15 - ::fmt::h3ec6bdab62f1e8d9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x564e529b04cc - core::fmt::write::h935cb0ed4078a853 [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x564e528a2cc5 - std::io::Write::write_fmt::h944a31ab04b0dfe4 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/io/mod.rs:1537 [INFO] [stdout] 6: 0x564e52981251 - std::io::impls::>::write_fmt::h6bd94c41a9c566d2 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x564e52989540 - std::sys_common::backtrace::_print::h460db802d801ccf8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x564e52989540 - std::sys_common::backtrace::print::h399d664f56640530 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x564e52989540 - std::panicking::default_hook::{{closure}}::hc6dfd87957c765b8 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x564e5298923a - std::panicking::default_hook::hfdceba6d6d1a18ae [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x564e52989b77 - std::panicking::rust_panic_with_hook::hd01e282bff1b1e63 [INFO] [stdout] at src/libstd/panicking.rs:486 [INFO] [stdout] 12: 0x564e5298977b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:388 [INFO] [stdout] 13: 0x564e529aee61 - core::panicking::panic_fmt::habd7df443069602c [INFO] [stdout] at src/libcore/panicking.rs:101 [INFO] [stdout] 14: 0x564e529aec83 - core::option::expect_none_failed::h721078758a086285 [INFO] [stdout] at src/libcore/option.rs:1272 [INFO] [stdout] 15: 0x564e5289b4ea - core::result::Result::unwrap::he9ce1f30be9e1e92 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x564e52898486 - large_table::mmap_table::tests::new::h865dd34c77de5887 [INFO] [stdout] at src/mmap_table.rs:335 [INFO] [stdout] 17: 0x564e5289840a - large_table::mmap_table::tests::new::{{closure}}::h78461867dd0d9a5b [INFO] [stdout] at src/mmap_table.rs:331 [INFO] [stdout] 18: 0x564e5289c47e - core::ops::function::FnOnce::call_once::h6068cfe327c18eca [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x564e528ca0b2 - as core::ops::function::FnOnce>::call_once::hd23431bd7b767a0c [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/liballoc/boxed.rs:1076 [INFO] [stdout] 20: 0x564e528ca0b2 - as core::ops::function::FnOnce<()>>::call_once::h6986d2e83b783a4e [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x564e528ca0b2 - std::panicking::try::do_call::haee67871ebe8ee92 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panicking.rs:297 [INFO] [stdout] 22: 0x564e528ca0b2 - std::panicking::try::hcba534043f17f42d [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x564e528ca0b2 - std::panic::catch_unwind::h6908c2ae7517b434 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x564e528ca0b2 - test::run_test_in_process::h66277a63b8267865 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x564e528ca0b2 - test::run_test::run_test_inner::{{closure}}::h591f321b83c3f302 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x564e528a2186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h843e47ea29613666 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x564e528a7725 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::ha6c43669df0cbe25 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x564e528a7725 - as core::ops::function::FnOnce<()>>::call_once::hc86e5439e615a14a [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x564e528a7725 - std::panicking::try::do_call::h4b45bcf4d5d82a80 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panicking.rs:297 [INFO] [stdout] 30: 0x564e528a7725 - std::panicking::try::h297c0c407d3f8196 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x564e528a7725 - std::panic::catch_unwind::h877baa9fbef2eafe [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x564e528a7725 - std::thread::Builder::spawn_unchecked::{{closure}}::hdb000626ad29158a [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x564e528a7725 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h87e786b011f05b5c [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x564e5298fe4a - as core::ops::function::FnOnce>::call_once::hfc5c0e64036d1b09 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/liballoc/boxed.rs:1076 [INFO] [stdout] 35: 0x564e5298fe4a - as core::ops::function::FnOnce>::call_once::hf3d73184efc070c1 [INFO] [stdout] at /rustc/b7dc83a3f6ca9746fb3d121761c3605477b77d90/src/liballoc/boxed.rs:1076 [INFO] [stdout] 36: 0x564e5298fe4a - std::sys::unix::thread::Thread::new::thread_start::hb9eb749d91dfe8e2 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f6d4dbf9609 - start_thread [INFO] [stdout] 38: 0x7f6d4db05103 - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] mmap_table::tests::new [INFO] [stdout] [INFO] [stdout] test result: FAILED. 4 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] running `"docker" "inspect" "c25b34df765052114a278e55fd30939dceec09debaaf4428afa70b7631aaa8a5"` [INFO] running `"docker" "rm" "-f" "c25b34df765052114a278e55fd30939dceec09debaaf4428afa70b7631aaa8a5"` [INFO] [stdout] c25b34df765052114a278e55fd30939dceec09debaaf4428afa70b7631aaa8a5