[INFO] crate cuckoocache 0.1.2 is already in cache [INFO] testing cuckoocache-0.1.2 against beta-2020-06-03 for beta-1.45-1 [INFO] extracting crate cuckoocache 0.1.2 into /workspace/builds/worker-8/source [INFO] validating manifest of crates.io crate cuckoocache 0.1.2 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 crates.io crate cuckoocache 0.1.2 [INFO] finished tweaking crates.io crate cuckoocache 0.1.2 [INFO] tweaked toml for crates.io crate cuckoocache 0.1.2 written to /workspace/builds/worker-8/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [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-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] b01a5d74cb534cdc283b430d5c2bfc0dba39efa44c6515d551d11493bada40d6 [INFO] running `"docker" "start" "-a" "b01a5d74cb534cdc283b430d5c2bfc0dba39efa44c6515d551d11493bada40d6"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling cuckoocache v0.1.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.62s [INFO] running `"docker" "inspect" "b01a5d74cb534cdc283b430d5c2bfc0dba39efa44c6515d551d11493bada40d6"` [INFO] running `"docker" "rm" "-f" "b01a5d74cb534cdc283b430d5c2bfc0dba39efa44c6515d551d11493bada40d6"` [INFO] [stdout] b01a5d74cb534cdc283b430d5c2bfc0dba39efa44c6515d551d11493bada40d6 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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] e27e629b56d66fa6689945917347d3b16553efc2fda4507401538508b911ff1c [INFO] running `"docker" "start" "-a" "e27e629b56d66fa6689945917347d3b16553efc2fda4507401538508b911ff1c"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling byte-tools v0.3.1 [INFO] [stderr] Compiling opaque-debug v0.2.3 [INFO] [stderr] Compiling fake-simd v0.1.2 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling rand v0.5.6 [INFO] [stderr] Compiling block-padding v0.1.5 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling sha2 v0.8.2 [INFO] [stderr] Compiling cuckoocache v0.1.2 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `std::sync::RwLock` [INFO] [stderr] --> src/lib.rs:117:9 [INFO] [stderr] | [INFO] [stderr] 117 | use std::sync::RwLock; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:171:9 [INFO] [stderr] | [INFO] [stderr] 171 | /** Do the insert */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 172 | hashes.iter().for_each(|h| set.insert(h)); [INFO] [stderr] | ----------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | /** Count the hits */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 174 | let count: usize = hashes.iter().map(|h| set.contains(h, false) as usize).sum(); [INFO] [stderr] | -------------------------------------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / /** Arbitrarily selected Hit Rate threshold that happens to work for this test [INFO] [stderr] 203 | | * as a lower bound on performance. [INFO] [stderr] 204 | | */ [INFO] [stderr] | |___________^ [INFO] [stderr] 205 | let hit_rate_thresh = 0.98; [INFO] [stderr] | --------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:229:9 [INFO] [stderr] | [INFO] [stderr] 229 | /** Insert the first half */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 230 | hashes[0..(n_insert / 2)].iter().for_each(|h| set.insert(h)); [INFO] [stderr] | ------------------------------------------------------------ rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:231:9 [INFO] [stderr] | [INFO] [stderr] 231 | /** Erase the first quarter */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 232 | / hashes[0..(n_insert / 4)].iter().for_each(|h| { [INFO] [stderr] 233 | | set.contains(h, true); [INFO] [stderr] 234 | | }); [INFO] [stderr] | |__________- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:235:9 [INFO] [stderr] | [INFO] [stderr] 235 | /** Insert the second half */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 236 | hashes[(n_insert / 2)..].iter().for_each(|h| set.insert(h)); [INFO] [stderr] | ----------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:238:9 [INFO] [stderr] | [INFO] [stderr] 238 | /** elements that we marked erased but that are still there */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 239 | / let count_erased_but_contained: usize = hashes[..(n_insert / 4)] [INFO] [stderr] 240 | | .iter() [INFO] [stderr] 241 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 242 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:243:9 [INFO] [stderr] | [INFO] [stderr] 243 | /** elements that we did not erase but are older */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 244 | / let count_stale: usize = hashes[(n_insert / 4)..(n_insert / 2)] [INFO] [stderr] 245 | | .iter() [INFO] [stderr] 246 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 247 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | /** elements that were most recently inserted */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 249 | / let count_fresh: usize = hashes[(n_insert / 2)..] [INFO] [stderr] 250 | | .iter() [INFO] [stderr] 251 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 252 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:282:9 [INFO] [stderr] | [INFO] [stderr] 282 | /** Insert the first half */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 283 | / for hash in hashes.iter().take(n_insert / 2) { [INFO] [stderr] 284 | | set.insert(hash); [INFO] [stderr] 285 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:297:21 [INFO] [stderr] | [INFO] [stderr] 297 | /** Erase the first quarter */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 298 | let ntodo = (n_insert / 4) / 3; [INFO] [stderr] | ------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:311:9 [INFO] [stderr] | [INFO] [stderr] 311 | / /** Wait for all threads to finish [INFO] [stderr] 312 | | */ [INFO] [stderr] 313 | | /** Grab lock to make sure we observe erases */ [INFO] [stderr] 314 | | /** Insert the second half */ [INFO] [stderr] | |_____________________________________^ [INFO] [stderr] 315 | / for hash in hashes.iter().skip(n_insert / 2) { [INFO] [stderr] 316 | | Arc::get_mut(&mut set).map(|m| m.insert(hash)); [INFO] [stderr] 317 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:319:9 [INFO] [stderr] | [INFO] [stderr] 319 | /** elements that we marked erased but that are still there */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 320 | / let count_erased_but_contained: usize = hashes[..(n_insert / 4)] [INFO] [stderr] 321 | | .iter() [INFO] [stderr] 322 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 323 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | /** elements that we did not erase but are older */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 325 | / let count_stale: usize = hashes[(n_insert / 4)..(n_insert / 2)] [INFO] [stderr] 326 | | .iter() [INFO] [stderr] 327 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 328 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:329:9 [INFO] [stderr] | [INFO] [stderr] 329 | /** elements that were most recently inserted */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 330 | / let count_fresh: usize = hashes[(n_insert / 2)..] [INFO] [stderr] 331 | | .iter() [INFO] [stderr] 332 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 333 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: type `block_activity` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:357:12 [INFO] [stderr] | [INFO] [stderr] 357 | struct block_activity { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BlockActivity` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/lib.rs:410:16 [INFO] [stderr] | [INFO] [stderr] 410 | if (last_few.len() == WINDOW_SIZE) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:168:13 [INFO] [stderr] | [INFO] [stderr] 168 | for i in 0..n_insert { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:225:13 [INFO] [stderr] | [INFO] [stderr] 225 | for i in 0..n_insert { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:148:13 [INFO] [stderr] | [INFO] [stderr] 148 | for i in 0..100000 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:409:13 [INFO] [stderr] | [INFO] [stderr] 409 | for i in 0..total { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:363:17 [INFO] [stderr] | [INFO] [stderr] 363 | for i in 0..n_insert / 4 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:367:17 [INFO] [stderr] | [INFO] [stderr] 367 | for i in 0..n_insert / 2 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:370:17 [INFO] [stderr] | [INFO] [stderr] 370 | for i in 0..n_insert / 4 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `insecure_GetRandHash` [INFO] [stderr] --> src/lib.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | fn insecure_GetRandHash() -> [u32; 8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `insecure_GetRandHash` should have a snake case name [INFO] [stderr] --> src/lib.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | fn insecure_GetRandHash() -> [u32; 8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `insecure_get_rand_hash` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:308:13 [INFO] [stderr] | [INFO] [stderr] 308 | thread.join(); [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: variable `BLOCK_SIZE` should have a snake case name [INFO] [stderr] --> src/lib.rs:391:13 [INFO] [stderr] | [INFO] [stderr] 391 | let BLOCK_SIZE = 1000; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `block_size` [INFO] [stderr] [INFO] [stderr] warning: variable `WINDOW_SIZE` should have a snake case name [INFO] [stderr] --> src/lib.rs:394:13 [INFO] [stderr] | [INFO] [stderr] 394 | let WINDOW_SIZE = 60; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `window_size` [INFO] [stderr] [INFO] [stderr] warning: variable `POP_AMOUNT` should have a snake case name [INFO] [stderr] --> src/lib.rs:395:13 [INFO] [stderr] | [INFO] [stderr] 395 | let POP_AMOUNT = (BLOCK_SIZE / WINDOW_SIZE) / 2; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `pop_amount` [INFO] [stderr] [INFO] [stderr] warning: 31 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 5.78s [INFO] running `"docker" "inspect" "e27e629b56d66fa6689945917347d3b16553efc2fda4507401538508b911ff1c"` [INFO] running `"docker" "rm" "-f" "e27e629b56d66fa6689945917347d3b16553efc2fda4507401538508b911ff1c"` [INFO] [stdout] e27e629b56d66fa6689945917347d3b16553efc2fda4507401538508b911ff1c [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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] aab1a01b7bf10d090a1fcfcf4062bf20fd59bd4d6d97bd7eb03ae0fe91d2373a [INFO] running `"docker" "start" "-a" "aab1a01b7bf10d090a1fcfcf4062bf20fd59bd4d6d97bd7eb03ae0fe91d2373a"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unused import: `std::sync::RwLock` [INFO] [stderr] --> src/lib.rs:117:9 [INFO] [stderr] | [INFO] [stderr] 117 | use std::sync::RwLock; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:171:9 [INFO] [stderr] | [INFO] [stderr] 171 | /** Do the insert */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 172 | hashes.iter().for_each(|h| set.insert(h)); [INFO] [stderr] | ----------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | /** Count the hits */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 174 | let count: usize = hashes.iter().map(|h| set.contains(h, false) as usize).sum(); [INFO] [stderr] | -------------------------------------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / /** Arbitrarily selected Hit Rate threshold that happens to work for this test [INFO] [stderr] 203 | | * as a lower bound on performance. [INFO] [stderr] 204 | | */ [INFO] [stderr] | |___________^ [INFO] [stderr] 205 | let hit_rate_thresh = 0.98; [INFO] [stderr] | --------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:229:9 [INFO] [stderr] | [INFO] [stderr] 229 | /** Insert the first half */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 230 | hashes[0..(n_insert / 2)].iter().for_each(|h| set.insert(h)); [INFO] [stderr] | ------------------------------------------------------------ rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:231:9 [INFO] [stderr] | [INFO] [stderr] 231 | /** Erase the first quarter */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 232 | / hashes[0..(n_insert / 4)].iter().for_each(|h| { [INFO] [stderr] 233 | | set.contains(h, true); [INFO] [stderr] 234 | | }); [INFO] [stderr] | |__________- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:235:9 [INFO] [stderr] | [INFO] [stderr] 235 | /** Insert the second half */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 236 | hashes[(n_insert / 2)..].iter().for_each(|h| set.insert(h)); [INFO] [stderr] | ----------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:238:9 [INFO] [stderr] | [INFO] [stderr] 238 | /** elements that we marked erased but that are still there */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 239 | / let count_erased_but_contained: usize = hashes[..(n_insert / 4)] [INFO] [stderr] 240 | | .iter() [INFO] [stderr] 241 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 242 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:243:9 [INFO] [stderr] | [INFO] [stderr] 243 | /** elements that we did not erase but are older */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 244 | / let count_stale: usize = hashes[(n_insert / 4)..(n_insert / 2)] [INFO] [stderr] 245 | | .iter() [INFO] [stderr] 246 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 247 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | /** elements that were most recently inserted */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 249 | / let count_fresh: usize = hashes[(n_insert / 2)..] [INFO] [stderr] 250 | | .iter() [INFO] [stderr] 251 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 252 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:282:9 [INFO] [stderr] | [INFO] [stderr] 282 | /** Insert the first half */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 283 | / for hash in hashes.iter().take(n_insert / 2) { [INFO] [stderr] 284 | | set.insert(hash); [INFO] [stderr] 285 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:297:21 [INFO] [stderr] | [INFO] [stderr] 297 | /** Erase the first quarter */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 298 | let ntodo = (n_insert / 4) / 3; [INFO] [stderr] | ------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:311:9 [INFO] [stderr] | [INFO] [stderr] 311 | / /** Wait for all threads to finish [INFO] [stderr] 312 | | */ [INFO] [stderr] 313 | | /** Grab lock to make sure we observe erases */ [INFO] [stderr] 314 | | /** Insert the second half */ [INFO] [stderr] | |_____________________________________^ [INFO] [stderr] 315 | / for hash in hashes.iter().skip(n_insert / 2) { [INFO] [stderr] 316 | | Arc::get_mut(&mut set).map(|m| m.insert(hash)); [INFO] [stderr] 317 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:319:9 [INFO] [stderr] | [INFO] [stderr] 319 | /** elements that we marked erased but that are still there */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 320 | / let count_erased_but_contained: usize = hashes[..(n_insert / 4)] [INFO] [stderr] 321 | | .iter() [INFO] [stderr] 322 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 323 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | /** elements that we did not erase but are older */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 325 | / let count_stale: usize = hashes[(n_insert / 4)..(n_insert / 2)] [INFO] [stderr] 326 | | .iter() [INFO] [stderr] 327 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 328 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/lib.rs:329:9 [INFO] [stderr] | [INFO] [stderr] 329 | /** elements that were most recently inserted */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 330 | / let count_fresh: usize = hashes[(n_insert / 2)..] [INFO] [stderr] 331 | | .iter() [INFO] [stderr] 332 | | .map(|h| set.contains(h, false) as usize) [INFO] [stderr] 333 | | .sum(); [INFO] [stderr] | |___________________- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: type `block_activity` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:357:12 [INFO] [stderr] | [INFO] [stderr] 357 | struct block_activity { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BlockActivity` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/lib.rs:410:16 [INFO] [stderr] | [INFO] [stderr] 410 | if (last_few.len() == WINDOW_SIZE) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:168:13 [INFO] [stderr] | [INFO] [stderr] 168 | for i in 0..n_insert { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:225:13 [INFO] [stderr] | [INFO] [stderr] 225 | for i in 0..n_insert { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:148:13 [INFO] [stderr] | [INFO] [stderr] 148 | for i in 0..100000 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:409:13 [INFO] [stderr] | [INFO] [stderr] 409 | for i in 0..total { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:363:17 [INFO] [stderr] | [INFO] [stderr] 363 | for i in 0..n_insert / 4 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:367:17 [INFO] [stderr] | [INFO] [stderr] 367 | for i in 0..n_insert / 2 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/lib.rs:370:17 [INFO] [stderr] | [INFO] [stderr] 370 | for i in 0..n_insert / 4 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `insecure_GetRandHash` [INFO] [stderr] --> src/lib.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | fn insecure_GetRandHash() -> [u32; 8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `insecure_GetRandHash` should have a snake case name [INFO] [stderr] --> src/lib.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | fn insecure_GetRandHash() -> [u32; 8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `insecure_get_rand_hash` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:308:13 [INFO] [stderr] | [INFO] [stderr] 308 | thread.join(); [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: variable `BLOCK_SIZE` should have a snake case name [INFO] [stderr] --> src/lib.rs:391:13 [INFO] [stderr] | [INFO] [stderr] 391 | let BLOCK_SIZE = 1000; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `block_size` [INFO] [stderr] [INFO] [stderr] warning: variable `WINDOW_SIZE` should have a snake case name [INFO] [stderr] --> src/lib.rs:394:13 [INFO] [stderr] | [INFO] [stderr] 394 | let WINDOW_SIZE = 60; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `window_size` [INFO] [stderr] [INFO] [stderr] warning: variable `POP_AMOUNT` should have a snake case name [INFO] [stderr] --> src/lib.rs:395:13 [INFO] [stderr] | [INFO] [stderr] 395 | let POP_AMOUNT = (BLOCK_SIZE / WINDOW_SIZE) / 2; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `pop_amount` [INFO] [stderr] [INFO] [stderr] warning: 31 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/cuckoocache-5cb56785e89d4bc3 [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test tests::basic_cache_works ... ok [INFO] [stdout] test tests::cuckoocache_erase_parallel_ok ... ok [INFO] [stdout] test tests::cuckoocache_erase_ok ... ok [INFO] [stdout] test tests::test_cuckoocache_no_fakes ... ok [INFO] [stdout] test tests::cuckoocache_hit_rate_ok ... ok [INFO] [stdout] test tests::test_cache_generations ... test tests::test_cache_generations has been running for over 60 seconds [INFO] [stdout] test tests::test_cache_generations ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests cuckoocache [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/cache.rs - cache::Cache::contains (line 350) ... ignored [INFO] [stdout] test src/cache.rs - cache::Cache::insert (line 274) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "aab1a01b7bf10d090a1fcfcf4062bf20fd59bd4d6d97bd7eb03ae0fe91d2373a"` [INFO] running `"docker" "rm" "-f" "aab1a01b7bf10d090a1fcfcf4062bf20fd59bd4d6d97bd7eb03ae0fe91d2373a"` [INFO] [stdout] aab1a01b7bf10d090a1fcfcf4062bf20fd59bd4d6d97bd7eb03ae0fe91d2373a