[INFO] fetching crate pagecache 0.19.4...
[INFO] testing pagecache-0.19.4 against beta-2021-08-01 for beta-1.55-1
[INFO] extracting crate pagecache 0.19.4 into /workspace/builds/worker-80/source
[INFO] validating manifest of crates.io crate pagecache 0.19.4 on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate pagecache 0.19.4
[INFO] finished tweaking crates.io crate pagecache 0.19.4
[INFO] tweaked toml for crates.io crate pagecache 0.19.4 written to /workspace/builds/worker-80/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0e4ad0aad159d1d1d083e5220c1bd537da71e352529e68c61ed11c7c6c470ccb
[INFO] running `Command { std: "docker" "start" "-a" "0e4ad0aad159d1d1d083e5220c1bd537da71e352529e68c61ed11c7c6c470ccb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0e4ad0aad159d1d1d083e5220c1bd537da71e352529e68c61ed11c7c6c470ccb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e4ad0aad159d1d1d083e5220c1bd537da71e352529e68c61ed11c7c6c470ccb", kill_on_drop: false }`
[INFO] [stdout] 0e4ad0aad159d1d1d083e5220c1bd537da71e352529e68c61ed11c7c6c470ccb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/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" "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" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 72abc58d76490481fa972531814e81615f2ca3cc5d9a2e4cd5cabce4d20afda2
[INFO] running `Command { std: "docker" "start" "-a" "72abc58d76490481fa972531814e81615f2ca3cc5d9a2e4cd5cabce4d20afda2", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling syn v1.0.74
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling nodrop v0.1.14
[INFO] [stderr]    Compiling crc32fast v1.2.1
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling crossbeam-channel v0.3.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.7.2
[INFO] [stderr]    Compiling serde_derive v1.0.127
[INFO] [stderr]    Compiling serde v1.0.127
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling pagecache v0.19.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/iterator.rs:257:6
[INFO] [stdout]     |
[INFO] [stdout] 257 |     };
[INFO] [stdout]     |      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/lib.rs:291:31
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let last = atomic_lsn.compare_and_swap(current, to, SeqCst);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/iobuf.rs:899:31
[INFO] [stdout]     |
[INFO] [stdout] 899 |         let res = self.header.compare_and_swap(old, new, SeqCst);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/lazy.rs:57:28
[INFO] [stdout]    |
[INFO] [stdout] 57 |         while self.init_mu.compare_and_swap(false, true, SeqCst) {}
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/result.rs:127:28
[INFO] [stdout]     |
[INFO] [stdout] 127 |             Io(ref e) => e.description(),
[INFO] [stdout]     |                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stdout]    --> src/config.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |         buf.split_off(len - 4);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: use `.truncate()` if you don't need the other half
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stdout]    --> src/snapshot.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     buf.split_off(len - 12);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: use `.truncate()` if you don't need the other half
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 30.55s
[INFO] running `Command { std: "docker" "inspect" "72abc58d76490481fa972531814e81615f2ca3cc5d9a2e4cd5cabce4d20afda2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "72abc58d76490481fa972531814e81615f2ca3cc5d9a2e4cd5cabce4d20afda2", kill_on_drop: false }`
[INFO] [stdout] 72abc58d76490481fa972531814e81615f2ca3cc5d9a2e4cd5cabce4d20afda2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/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" "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" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 66f9c5782386c6f49057e3cb61a7ff4eeba0664c5eb8da62126367269952d87a
[INFO] running `Command { std: "docker" "start" "-a" "66f9c5782386c6f49057e3cb61a7ff4eeba0664c5eb8da62126367269952d87a", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/iterator.rs:257:6
[INFO] [stdout]     |
[INFO] [stdout] 257 |     };
[INFO] [stdout]     |      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/lib.rs:291:31
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let last = atomic_lsn.compare_and_swap(current, to, SeqCst);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/iobuf.rs:899:31
[INFO] [stdout]     |
[INFO] [stdout] 899 |         let res = self.header.compare_and_swap(old, new, SeqCst);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/lazy.rs:57:28
[INFO] [stdout]    |
[INFO] [stdout] 57 |         while self.init_mu.compare_and_swap(false, true, SeqCst) {}
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/result.rs:127:28
[INFO] [stdout]     |
[INFO] [stdout] 127 |             Io(ref e) => e.description(),
[INFO] [stdout]     |                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stdout]    --> src/config.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |         buf.split_off(len - 4);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: use `.truncate()` if you don't need the other half
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stdout]    --> src/snapshot.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     buf.split_off(len - 12);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: use `.truncate()` if you don't need the other half
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling rand_distr v0.2.2
[INFO] [stderr]    Compiling pagecache v0.19.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/iterator.rs:257:6
[INFO] [stdout]     |
[INFO] [stdout] 257 |     };
[INFO] [stdout]     |      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:3:24
[INFO] [stdout]     |
[INFO] [stdout] 3   | #![cfg_attr(test, deny(warnings))]
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/lib.rs:291:31
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let last = atomic_lsn.compare_and_swap(current, to, SeqCst);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:3:24
[INFO] [stdout]     |
[INFO] [stdout] 3   | #![cfg_attr(test, deny(warnings))]
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/iobuf.rs:899:31
[INFO] [stdout]     |
[INFO] [stdout] 899 |         let res = self.header.compare_and_swap(old, new, SeqCst);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/lazy.rs:57:28
[INFO] [stdout]    |
[INFO] [stdout] 57 |         while self.init_mu.compare_and_swap(false, true, SeqCst) {}
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/result.rs:127:28
[INFO] [stdout]     |
[INFO] [stdout] 127 |             Io(ref e) => e.description(),
[INFO] [stdout]     |                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stdout]    --> src/config.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |         buf.split_off(len - 4);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:3:24
[INFO] [stdout]     |
[INFO] [stdout] 3   | #![cfg_attr(test, deny(warnings))]
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` implied by `#[warn(warnings)]`
[INFO] [stdout]     = note: use `.truncate()` if you don't need the other half
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stdout]    --> src/snapshot.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     buf.split_off(len - 12);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: use `.truncate()` if you don't need the other half
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 10.41s
[INFO] running `Command { std: "docker" "inspect" "66f9c5782386c6f49057e3cb61a7ff4eeba0664c5eb8da62126367269952d87a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66f9c5782386c6f49057e3cb61a7ff4eeba0664c5eb8da62126367269952d87a", kill_on_drop: false }`
[INFO] [stdout] 66f9c5782386c6f49057e3cb61a7ff4eeba0664c5eb8da62126367269952d87a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-80/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" "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" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ceb28ece2178fc2c76058de18796e002f639d6efd388c99ce5170c6548a25ff6
[INFO] running `Command { std: "docker" "start" "-a" "ceb28ece2178fc2c76058de18796e002f639d6efd388c99ce5170c6548a25ff6", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/iterator.rs:257:6
[INFO] [stderr]     |
[INFO] [stderr] 257 |     };
[INFO] [stderr]     |      ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/lib.rs:291:31
[INFO] [stderr]     |
[INFO] [stderr] 291 |         let last = atomic_lsn.compare_and_swap(current, to, SeqCst);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/iobuf.rs:899:31
[INFO] [stderr]     |
[INFO] [stderr] 899 |         let res = self.header.compare_and_swap(old, new, SeqCst);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]   --> src/lazy.rs:57:28
[INFO] [stderr]    |
[INFO] [stderr] 57 |         while self.init_mu.compare_and_swap(false, true, SeqCst) {}
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/result.rs:127:28
[INFO] [stderr]     |
[INFO] [stderr] 127 |             Io(ref e) => e.description(),
[INFO] [stderr]     |                            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stderr]    --> src/config.rs:448:9
[INFO] [stderr]     |
[INFO] [stderr] 448 |         buf.split_off(len - 4);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: use `.truncate()` if you don't need the other half
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stderr]    --> src/snapshot.rs:218:5
[INFO] [stderr]     |
[INFO] [stderr] 218 |     buf.split_off(len - 12);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: use `.truncate()` if you don't need the other half
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/iterator.rs:257:6
[INFO] [stderr]     |
[INFO] [stderr] 257 |     };
[INFO] [stderr]     |      ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:3:24
[INFO] [stderr]     |
[INFO] [stderr] 3   | #![cfg_attr(test, deny(warnings))]
[INFO] [stderr]     |                        ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/lib.rs:291:31
[INFO] [stderr]     |
[INFO] [stderr] 291 |         let last = atomic_lsn.compare_and_swap(current, to, SeqCst);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:3:24
[INFO] [stderr]     |
[INFO] [stderr] 3   | #![cfg_attr(test, deny(warnings))]
[INFO] [stderr]     |                        ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `Vec::<T, A>::split_off` that must be used
[INFO] [stderr]    --> src/config.rs:448:9
[INFO] [stderr]     |
[INFO] [stderr] 448 |         buf.split_off(len - 4);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:3:24
[INFO] [stderr]     |
[INFO] [stderr] 3   | #![cfg_attr(test, deny(warnings))]
[INFO] [stderr]     |                        ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` implied by `#[warn(warnings)]`
[INFO] [stderr]     = note: use `.truncate()` if you don't need the other half
[INFO] [stderr] 
[INFO] [stderr] warning: `pagecache` (lib) generated 7 warnings
[INFO] [stderr] warning: `pagecache` (lib test) generated 7 warnings (4 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/pagecache-fcc6c37427f9966e)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test ds::dll::test_dll ... ok
[INFO] [stdout] test ds::pagetable::test_split_fanout ... ok
[INFO] [stdout] test ds::pagetable::basic_functionality ... ok
[INFO] [stdout] test ds::stack::basic_functionality ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pagecache
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/iterator.rs:257:6
[INFO] [stderr]     |
[INFO] [stderr] 257 |     };
[INFO] [stderr]     |      ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/config.rs - config::ConfigBuilder (line 47) ... ok
[INFO] [stdout] test src/config.rs - config::ConfigBuilder (line 55) ... ok
[INFO] [stdout] test src/logger.rs - logger (line 3) ... ok
[INFO] [stdout] test src/pagecache.rs - pagecache::PageCache (line 132) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.60s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ceb28ece2178fc2c76058de18796e002f639d6efd388c99ce5170c6548a25ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ceb28ece2178fc2c76058de18796e002f639d6efd388c99ce5170c6548a25ff6", kill_on_drop: false }`
[INFO] [stdout] ceb28ece2178fc2c76058de18796e002f639d6efd388c99ce5170c6548a25ff6
