[INFO] cloning repository https://github.com/Axmouth/keratin
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Axmouth/keratin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAxmouth%2Fkeratin", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAxmouth%2Fkeratin'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e0a64d8c27f231211da3a0d93d86affdb97e7a75
[INFO] testing Axmouth/keratin against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAxmouth%2Fkeratin" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Axmouth/keratin
[INFO] finished tweaking git repo https://github.com/Axmouth/keratin
[INFO] tweaked toml for git repo https://github.com/Axmouth/keratin written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Axmouth/keratin on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Axmouth/keratin already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded similar-asserts v1.7.0
[INFO] [stderr]   Downloaded similar v2.7.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 87977ec3d70990f0db5c8ce289c1abc6c3c089301722032c55d629e55aaca97c
[INFO] running `Command { std: "docker" "start" "-a" "87977ec3d70990f0db5c8ce289c1abc6c3c089301722032c55d629e55aaca97c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "87977ec3d70990f0db5c8ce289c1abc6c3c089301722032c55d629e55aaca97c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "87977ec3d70990f0db5c8ce289c1abc6c3c089301722032c55d629e55aaca97c", kill_on_drop: false }`
[INFO] [stdout] 87977ec3d70990f0db5c8ce289c1abc6c3c089301722032c55d629e55aaca97c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8714593cab40ce9291b42f6f43628b8cfc19f06d4f2ade3ca23577c9e87a7500
[INFO] running `Command { std: "docker" "start" "-a" "8714593cab40ce9291b42f6f43628b8cfc19f06d4f2ade3ca23577c9e87a7500", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling zmij v1.0.8
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling serde_json v1.0.148
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling bytes v1.11.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.6
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling crc32c v0.6.8
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling cc v1.2.51
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.7
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling similar-asserts v1.7.0
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling keratin-log v0.1.0 (/opt/rustwide/workdir/keratin-log)
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> keratin-log/src/reader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ByteRemainder` and `decode_header_prefix`
[INFO] [stdout]   --> keratin-log/src/reader.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ByteRemainder, DecodedRecord, RECORD_HEADER_LEN, decode_header_prefix, decode_record_prefix,
[INFO] [stdout]    |     ^^^^^^^^^^^^^                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seg_dir`
[INFO] [stdout]    --> keratin-log/src/log.rs:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 |         let seg_dir = self.root.join("segments");
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seg_dir`
[INFO] [stdout]    --> keratin-log/src/log.rs:616:24
[INFO] [stdout]     |
[INFO] [stdout] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stdout]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `i` is assigned to, but never used
[INFO] [stdout]   --> keratin-log/src/reader.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut i = 0;
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_i` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]   --> keratin-log/src/reader.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             i += 1;
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `records` and `bytes` are never read
[INFO] [stdout]   --> keratin-log/src/batcher.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Entry<T> {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout] 28 |     item: T,
[INFO] [stdout] 29 |     records: usize,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 30 |     bytes: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty`, `time_until_deadline`, and `has_active_batch` are never used
[INFO] [stdout]    --> keratin-log/src/batcher.rs:88:12
[INFO] [stdout]     |
[INFO] [stdout]  73 | / impl<T, W> BatcherCore<T, W>
[INFO] [stdout]  74 | | where
[INFO] [stdout]  75 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stdout]     | |___________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  88 |       pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |       pub fn time_until_deadline(&self, now: Instant) -> Option<Duration> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |       pub fn has_active_batch(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BatcherDriver` is never constructed
[INFO] [stdout]    --> keratin-log/src/batcher.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub struct BatcherDriver<T, W>
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next_batch`, and `drain` are never used
[INFO] [stdout]    --> keratin-log/src/batcher.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | / impl<T, W> BatcherDriver<T, W>
[INFO] [stdout] 219 | | where
[INFO] [stdout] 220 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stdout]     | |___________________________________- associated items in this implementation
[INFO] [stdout] 221 |   {
[INFO] [stdout] 222 |       pub fn new(cfg: BatcherConfig, weight: W) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |       pub fn next_batch(
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |       pub fn drain(&mut self) -> Vec<T> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IdxEntry` is never constructed
[INFO] [stdout]   --> keratin-log/src/index.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct IdxEntry {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `base_offset` and `last_rel_offset` are never read
[INFO] [stdout]   --> keratin-log/src/index.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Index {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 16 |     pub base_offset: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 17 |     file: File,
[INFO] [stdout] 18 |     pub last_rel_offset: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `append_entry` is never used
[INFO] [stdout]   --> keratin-log/src/index.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Index {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn append_entry(&mut self, e: IdxEntry) -> io::Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Shutdown` is never constructed
[INFO] [stdout]   --> keratin-log/src/keratin.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum WriterCmd {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     Shutdown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `flush`, `readable_watermark`, `flushed_watermark`, and `cleanup_orphans` are never used
[INFO] [stdout]    --> keratin-log/src/log.rs:431:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl Log {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 431 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 464 |     pub fn readable_watermark(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     pub fn flushed_watermark(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ByteRemainder` is never used
[INFO] [stdout]   --> keratin-log/src/record.rs:75:10
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub enum ByteRemainder {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_header_prefix` is never used
[INFO] [stdout]   --> keratin-log/src/record.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn decode_header_prefix<'a>(buf: &[u8]) -> Result<(DecodedHeader, ByteRemainder), RecordError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DecodedHeader` is never constructed
[INFO] [stdout]    --> keratin-log/src/record.rs:140:12
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct DecodedHeader {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `flush` is never used
[INFO] [stdout]   --> keratin-log/src/segment.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Segment {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling stroma-core v0.1.0 (/opt/rustwide/workdir/stroma/core)
[INFO] [stdout] warning: struct `InflightEntry` is never constructed
[INFO] [stdout]   --> stroma/core/src/state.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct InflightEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpiryItem` is never constructed
[INFO] [stdout]   --> stroma/core/src/state.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ExpiryItem {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AckOutcome` is never used
[INFO] [stdout]   --> stroma/core/src/state.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub enum AckOutcome {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `part` is never used
[INFO] [stdout]    --> stroma/core/src/stroma.rs:955:8
[INFO] [stdout]     |
[INFO] [stdout] 953 | trait EventView {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] 954 |     fn tp(&self) -> &str;
[INFO] [stdout] 955 |     fn part(&self) -> u32;
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> keratin-log/src/bin/keratin_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::PathBuf`
[INFO] [stdout]  --> keratin-log/src/bin/keratin_crash.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{path::PathBuf, process::Command};
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seen_eos`
[INFO] [stdout]    --> keratin-log/src/bin/keratin_bench_e2e.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let seen_eos = seen_eos.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seen_eos`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eos_record` is never used
[INFO] [stdout]   --> keratin-log/src/bin/keratin_bench_e2e.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn eos_record(pid: u32) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.73s
[INFO] running `Command { std: "docker" "inspect" "8714593cab40ce9291b42f6f43628b8cfc19f06d4f2ade3ca23577c9e87a7500", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8714593cab40ce9291b42f6f43628b8cfc19f06d4f2ade3ca23577c9e87a7500", kill_on_drop: false }`
[INFO] [stdout] 8714593cab40ce9291b42f6f43628b8cfc19f06d4f2ade3ca23577c9e87a7500
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c0780bd88eaa3a0ee43ceb7468b917caddda9792434ab284533ebc52d272435e
[INFO] running `Command { std: "docker" "start" "-a" "c0780bd88eaa3a0ee43ceb7468b917caddda9792434ab284533ebc52d272435e", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> keratin-log/src/reader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling keratin-log v0.1.0 (/opt/rustwide/workdir/keratin-log)
[INFO] [stdout] warning: unused imports: `ByteRemainder` and `decode_header_prefix`
[INFO] [stdout]   --> keratin-log/src/reader.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ByteRemainder, DecodedRecord, RECORD_HEADER_LEN, decode_header_prefix, decode_record_prefix,
[INFO] [stdout]    |     ^^^^^^^^^^^^^                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seg_dir`
[INFO] [stdout]    --> keratin-log/src/log.rs:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 |         let seg_dir = self.root.join("segments");
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seg_dir`
[INFO] [stdout]    --> keratin-log/src/log.rs:616:24
[INFO] [stdout]     |
[INFO] [stdout] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stdout]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `i` is assigned to, but never used
[INFO] [stdout]   --> keratin-log/src/reader.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut i = 0;
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_i` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]   --> keratin-log/src/reader.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             i += 1;
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `records` and `bytes` are never read
[INFO] [stdout]   --> keratin-log/src/batcher.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Entry<T> {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout] 28 |     item: T,
[INFO] [stdout] 29 |     records: usize,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 30 |     bytes: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty`, `time_until_deadline`, and `has_active_batch` are never used
[INFO] [stdout]    --> keratin-log/src/batcher.rs:88:12
[INFO] [stdout]     |
[INFO] [stdout]  73 | / impl<T, W> BatcherCore<T, W>
[INFO] [stdout]  74 | | where
[INFO] [stdout]  75 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stdout]     | |___________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  88 |       pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |       pub fn time_until_deadline(&self, now: Instant) -> Option<Duration> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |       pub fn has_active_batch(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BatcherDriver` is never constructed
[INFO] [stdout]    --> keratin-log/src/batcher.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub struct BatcherDriver<T, W>
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next_batch`, and `drain` are never used
[INFO] [stdout]    --> keratin-log/src/batcher.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | / impl<T, W> BatcherDriver<T, W>
[INFO] [stdout] 219 | | where
[INFO] [stdout] 220 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stdout]     | |___________________________________- associated items in this implementation
[INFO] [stdout] 221 |   {
[INFO] [stdout] 222 |       pub fn new(cfg: BatcherConfig, weight: W) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |       pub fn next_batch(
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |       pub fn drain(&mut self) -> Vec<T> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IdxEntry` is never constructed
[INFO] [stdout]   --> keratin-log/src/index.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct IdxEntry {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `base_offset` and `last_rel_offset` are never read
[INFO] [stdout]   --> keratin-log/src/index.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Index {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 16 |     pub base_offset: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 17 |     file: File,
[INFO] [stdout] 18 |     pub last_rel_offset: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `append_entry` is never used
[INFO] [stdout]   --> keratin-log/src/index.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Index {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn append_entry(&mut self, e: IdxEntry) -> io::Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Shutdown` is never constructed
[INFO] [stdout]   --> keratin-log/src/keratin.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum WriterCmd {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     Shutdown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `flush`, `readable_watermark`, `flushed_watermark`, and `cleanup_orphans` are never used
[INFO] [stdout]    --> keratin-log/src/log.rs:431:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl Log {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 431 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 464 |     pub fn readable_watermark(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     pub fn flushed_watermark(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ByteRemainder` is never used
[INFO] [stdout]   --> keratin-log/src/record.rs:75:10
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub enum ByteRemainder {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_header_prefix` is never used
[INFO] [stdout]   --> keratin-log/src/record.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn decode_header_prefix<'a>(buf: &[u8]) -> Result<(DecodedHeader, ByteRemainder), RecordError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DecodedHeader` is never constructed
[INFO] [stdout]    --> keratin-log/src/record.rs:140:12
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct DecodedHeader {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `flush` is never used
[INFO] [stdout]   --> keratin-log/src/segment.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Segment {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InflightEntry` is never constructed
[INFO] [stdout]   --> stroma/core/src/state.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct InflightEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpiryItem` is never constructed
[INFO] [stdout]   --> stroma/core/src/state.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ExpiryItem {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AckOutcome` is never used
[INFO] [stdout]   --> stroma/core/src/state.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub enum AckOutcome {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `part` is never used
[INFO] [stdout]    --> stroma/core/src/stroma.rs:955:8
[INFO] [stdout]     |
[INFO] [stdout] 953 | trait EventView {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] 954 |     fn tp(&self) -> &str;
[INFO] [stdout] 955 |     fn part(&self) -> u32;
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seen_eos`
[INFO] [stdout]    --> keratin-log/src/bin/keratin_bench_e2e.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let seen_eos = seen_eos.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seen_eos`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eos_record` is never used
[INFO] [stdout]   --> keratin-log/src/bin/keratin_bench_e2e.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn eos_record(pid: u32) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::PathBuf`
[INFO] [stdout]  --> keratin-log/src/bin/keratin_crash.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{path::PathBuf, process::Command};
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> keratin-log/src/bin/keratin_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling stroma-core v0.1.0 (/opt/rustwide/workdir/stroma/core)
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> keratin-log/src/bin/keratin_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::PathBuf`
[INFO] [stdout]  --> keratin-log/src/bin/keratin_crash.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{path::PathBuf, process::Command};
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seen_eos`
[INFO] [stdout]    --> keratin-log/src/bin/keratin_bench_e2e.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let seen_eos = seen_eos.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seen_eos`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eos_record` is never used
[INFO] [stdout]   --> keratin-log/src/bin/keratin_bench_e2e.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn eos_record(pid: u32) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> keratin-log/src/reader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ByteRemainder` and `decode_header_prefix`
[INFO] [stdout]   --> keratin-log/src/reader.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ByteRemainder, DecodedRecord, RECORD_HEADER_LEN, decode_header_prefix, decode_record_prefix,
[INFO] [stdout]    |     ^^^^^^^^^^^^^                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seg_dir`
[INFO] [stdout]    --> keratin-log/src/log.rs:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 |         let seg_dir = self.root.join("segments");
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seg_dir`
[INFO] [stdout]    --> keratin-log/src/log.rs:616:24
[INFO] [stdout]     |
[INFO] [stdout] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stdout]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `i` is assigned to, but never used
[INFO] [stdout]   --> keratin-log/src/reader.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut i = 0;
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_i` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i` is never read
[INFO] [stdout]   --> keratin-log/src/reader.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             i += 1;
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InflightEntry` is never constructed
[INFO] [stdout]   --> stroma/core/src/state.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct InflightEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpiryItem` is never constructed
[INFO] [stdout]   --> stroma/core/src/state.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ExpiryItem {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AckOutcome` is never used
[INFO] [stdout]   --> stroma/core/src/state.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub enum AckOutcome {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `part` is never used
[INFO] [stdout]    --> stroma/core/src/stroma.rs:955:8
[INFO] [stdout]     |
[INFO] [stdout] 953 | trait EventView {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] 954 |     fn tp(&self) -> &str;
[INFO] [stdout] 955 |     fn part(&self) -> u32;
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `records` and `bytes` are never read
[INFO] [stdout]   --> keratin-log/src/batcher.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Entry<T> {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout] 28 |     item: T,
[INFO] [stdout] 29 |     records: usize,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 30 |     bytes: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `time_until_deadline` and `has_active_batch` are never used
[INFO] [stdout]    --> keratin-log/src/batcher.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout]  73 | / impl<T, W> BatcherCore<T, W>
[INFO] [stdout]  74 | | where
[INFO] [stdout]  75 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stdout]     | |___________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |       pub fn time_until_deadline(&self, now: Instant) -> Option<Duration> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |       pub fn has_active_batch(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `drain` is never used
[INFO] [stdout]    --> keratin-log/src/batcher.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | / impl<T, W> BatcherDriver<T, W>
[INFO] [stdout] 219 | | where
[INFO] [stdout] 220 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stdout]     | |___________________________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 278 |       pub fn drain(&mut self) -> Vec<T> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IdxEntry` is never constructed
[INFO] [stdout]   --> keratin-log/src/index.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct IdxEntry {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `base_offset` and `last_rel_offset` are never read
[INFO] [stdout]   --> keratin-log/src/index.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Index {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 16 |     pub base_offset: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 17 |     file: File,
[INFO] [stdout] 18 |     pub last_rel_offset: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `append_entry` is never used
[INFO] [stdout]   --> keratin-log/src/index.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Index {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn append_entry(&mut self, e: IdxEntry) -> io::Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Shutdown` is never constructed
[INFO] [stdout]   --> keratin-log/src/keratin.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum WriterCmd {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     Shutdown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `flush`, `readable_watermark`, `flushed_watermark`, and `cleanup_orphans` are never used
[INFO] [stdout]    --> keratin-log/src/log.rs:431:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl Log {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 431 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 464 |     pub fn readable_watermark(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     pub fn flushed_watermark(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ByteRemainder` is never used
[INFO] [stdout]   --> keratin-log/src/record.rs:75:10
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub enum ByteRemainder {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_header_prefix` is never used
[INFO] [stdout]   --> keratin-log/src/record.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn decode_header_prefix<'a>(buf: &[u8]) -> Result<(DecodedHeader, ByteRemainder), RecordError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DecodedHeader` is never constructed
[INFO] [stdout]    --> keratin-log/src/record.rs:140:12
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct DecodedHeader {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `flush` is never used
[INFO] [stdout]   --> keratin-log/src/segment.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Segment {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> keratin-log/src/batcher.rs:297:29
[INFO] [stdout]     |
[INFO] [stdout] 297 |                     assert!(self >= 0, "negative duration literal");
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     impl_ms!(u8, u16, u32, u64, usize, i8, i16, i32, i64, isize);
[INFO] [stdout]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_ms` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.48s
[INFO] running `Command { std: "docker" "inspect" "c0780bd88eaa3a0ee43ceb7468b917caddda9792434ab284533ebc52d272435e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c0780bd88eaa3a0ee43ceb7468b917caddda9792434ab284533ebc52d272435e", kill_on_drop: false }`
[INFO] [stdout] c0780bd88eaa3a0ee43ceb7468b917caddda9792434ab284533ebc52d272435e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9b50c6ec02db709e605542b26d38099aa4b543385c1e1af0984e7ca6625cd247
[INFO] running `Command { std: "docker" "start" "-a" "9b50c6ec02db709e605542b26d38099aa4b543385c1e1af0984e7ca6625cd247", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> keratin-log/src/reader.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ByteRemainder` and `decode_header_prefix`
[INFO] [stderr]   --> keratin-log/src/reader.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     ByteRemainder, DecodedRecord, RECORD_HEADER_LEN, decode_header_prefix, decode_record_prefix,
[INFO] [stderr]    |     ^^^^^^^^^^^^^                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `seg_dir`
[INFO] [stderr]    --> keratin-log/src/log.rs:520:13
[INFO] [stderr]     |
[INFO] [stderr] 520 |         let seg_dir = self.root.join("segments");
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `seg_dir`
[INFO] [stderr]    --> keratin-log/src/log.rs:616:24
[INFO] [stderr]     |
[INFO] [stderr] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stderr]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seg_dir`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `i` is assigned to, but never used
[INFO] [stderr]   --> keratin-log/src/reader.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |         let mut i = 0;
[INFO] [stderr]    |             ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: consider using `_i` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `i` is never read
[INFO] [stderr]   --> keratin-log/src/reader.rs:60:13
[INFO] [stderr]    |
[INFO] [stderr] 60 |             i += 1;
[INFO] [stderr]    |             ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `records` and `bytes` are never read
[INFO] [stderr]   --> keratin-log/src/batcher.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 27 | struct Entry<T> {
[INFO] [stderr]    |        ----- fields in this struct
[INFO] [stderr] 28 |     item: T,
[INFO] [stderr] 29 |     records: usize,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 30 |     bytes: usize,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `is_empty`, `time_until_deadline`, and `has_active_batch` are never used
[INFO] [stderr]    --> keratin-log/src/batcher.rs:88:12
[INFO] [stderr]     |
[INFO] [stderr]  73 | / impl<T, W> BatcherCore<T, W>
[INFO] [stderr]  74 | | where
[INFO] [stderr]  75 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stderr]     | |___________________________________- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  88 |       pub fn is_empty(&self) -> bool {
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 104 |       pub fn time_until_deadline(&self, now: Instant) -> Option<Duration> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 206 |       pub fn has_active_batch(&self) -> bool {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BatcherDriver` is never constructed
[INFO] [stderr]    --> keratin-log/src/batcher.rs:211:12
[INFO] [stderr]     |
[INFO] [stderr] 211 | pub struct BatcherDriver<T, W>
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `next_batch`, and `drain` are never used
[INFO] [stderr]    --> keratin-log/src/batcher.rs:222:12
[INFO] [stderr]     |
[INFO] [stderr] 218 | / impl<T, W> BatcherDriver<T, W>
[INFO] [stderr] 219 | | where
[INFO] [stderr] 220 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stderr]     | |___________________________________- associated items in this implementation
[INFO] [stderr] 221 |   {
[INFO] [stderr] 222 |       pub fn new(cfg: BatcherConfig, weight: W) -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 228 |       pub fn next_batch(
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 278 |       pub fn drain(&mut self) -> Vec<T> {
[INFO] [stderr]     |              ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `IdxEntry` is never constructed
[INFO] [stderr]   --> keratin-log/src/index.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct IdxEntry {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `base_offset` and `last_rel_offset` are never read
[INFO] [stderr]   --> keratin-log/src/index.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct Index {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 16 |     pub base_offset: u64,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 17 |     file: File,
[INFO] [stderr] 18 |     pub last_rel_offset: Option<u32>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `append_entry` is never used
[INFO] [stderr]   --> keratin-log/src/index.rs:86:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | impl Index {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 86 |     pub fn append_entry(&mut self, e: IdxEntry) -> io::Result<()> {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Shutdown` is never constructed
[INFO] [stderr]   --> keratin-log/src/keratin.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub enum WriterCmd {
[INFO] [stderr]    |          --------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 29 |     Shutdown,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `flush`, `readable_watermark`, `flushed_watermark`, and `cleanup_orphans` are never used
[INFO] [stderr]    --> keratin-log/src/log.rs:431:12
[INFO] [stderr]     |
[INFO] [stderr] 102 | impl Log {
[INFO] [stderr]     | -------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 431 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 464 |     pub fn readable_watermark(&self) -> u64 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 468 |     pub fn flushed_watermark(&self) -> u64 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 616 |     fn cleanup_orphans(seg_dir: &Path) -> io::Result<()> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ByteRemainder` is never used
[INFO] [stderr]   --> keratin-log/src/record.rs:75:10
[INFO] [stderr]    |
[INFO] [stderr] 75 | pub enum ByteRemainder {
[INFO] [stderr]    |          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `decode_header_prefix` is never used
[INFO] [stderr]   --> keratin-log/src/record.rs:85:8
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub fn decode_header_prefix<'a>(buf: &[u8]) -> Result<(DecodedHeader, ByteRemainder), RecordError> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DecodedHeader` is never constructed
[INFO] [stderr]    --> keratin-log/src/record.rs:140:12
[INFO] [stderr]     |
[INFO] [stderr] 140 | pub struct DecodedHeader {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `flush` is never used
[INFO] [stderr]   --> keratin-log/src/segment.rs:77:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | impl Segment {
[INFO] [stderr]    | ------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `time_until_deadline` and `has_active_batch` are never used
[INFO] [stderr]    --> keratin-log/src/batcher.rs:104:12
[INFO] [stderr]     |
[INFO] [stderr]  73 | / impl<T, W> BatcherCore<T, W>
[INFO] [stderr]  74 | | where
[INFO] [stderr]  75 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stderr]     | |___________________________________- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 104 |       pub fn time_until_deadline(&self, now: Instant) -> Option<Duration> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 206 |       pub fn has_active_batch(&self) -> bool {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `drain` is never used
[INFO] [stderr]    --> keratin-log/src/batcher.rs:278:12
[INFO] [stderr]     |
[INFO] [stderr] 218 | / impl<T, W> BatcherDriver<T, W>
[INFO] [stderr] 219 | | where
[INFO] [stderr] 220 | |     W: FnMut(&T) -> (usize, usize),
[INFO] [stderr]     | |___________________________________- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 278 |       pub fn drain(&mut self) -> Vec<T> {
[INFO] [stderr]     |              ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]    --> keratin-log/src/batcher.rs:297:29
[INFO] [stderr]     |
[INFO] [stderr] 297 |                     assert!(self >= 0, "negative duration literal");
[INFO] [stderr]     |                             ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 304 |     impl_ms!(u8, u16, u32, u64, usize, i8, i16, i32, i64, isize);
[INFO] [stderr]     |     ------------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `impl_ms` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `keratin-log` (lib) generated 19 warnings (run `cargo fix --lib -p keratin-log` to apply 4 suggestions)
[INFO] [stderr] warning: `keratin-log` (lib test) generated 19 warnings (16 duplicates)
[INFO] [stderr] warning: unused variable: `seen_eos`
[INFO] [stderr]    --> keratin-log/src/bin/keratin_bench_e2e.rs:112:13
[INFO] [stderr]     |
[INFO] [stderr] 112 |         let seen_eos = seen_eos.clone();
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seen_eos`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `eos_record` is never used
[INFO] [stderr]   --> keratin-log/src/bin/keratin_bench_e2e.rs:19:4
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn eos_record(pid: u32) -> Vec<u8> {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::PathBuf`
[INFO] [stderr]  --> keratin-log/src/bin/keratin_test.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::path::PathBuf;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `path::PathBuf`
[INFO] [stderr]  --> keratin-log/src/bin/keratin_crash.rs:2:11
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::{path::PathBuf, process::Command};
[INFO] [stderr]   |           ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `keratin-log` (bin "keratin_bench_e2e") generated 2 warnings (run `cargo fix --bin "keratin_bench_e2e" -p keratin-log` to apply 1 suggestion)
[INFO] [stderr] warning: `keratin-log` (bin "keratin_test" test) generated 1 warning (run `cargo fix --bin "keratin_test" -p keratin-log --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `keratin-log` (bin "keratin_test") generated 1 warning (1 duplicate)
[INFO] [stderr] warning: `keratin-log` (bin "keratin_bench_e2e" test) generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: `keratin-log` (bin "keratin_crash") generated 1 warning (run `cargo fix --bin "keratin_crash" -p keratin-log` to apply 1 suggestion)
[INFO] [stderr] warning: `keratin-log` (bin "keratin_crash" test) generated 1 warning (1 duplicate)
[INFO] [stderr] warning: struct `InflightEntry` is never constructed
[INFO] [stderr]   --> stroma/core/src/state.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub struct InflightEntry {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ExpiryItem` is never constructed
[INFO] [stderr]   --> stroma/core/src/state.rs:46:8
[INFO] [stderr]    |
[INFO] [stderr] 46 | struct ExpiryItem {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `AckOutcome` is never used
[INFO] [stderr]   --> stroma/core/src/state.rs:69:10
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub enum AckOutcome {
[INFO] [stderr]    |          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `part` is never used
[INFO] [stderr]    --> stroma/core/src/stroma.rs:955:8
[INFO] [stderr]     |
[INFO] [stderr] 953 | trait EventView {
[INFO] [stderr]     |       --------- method in this trait
[INFO] [stderr] 954 |     fn tp(&self) -> &str;
[INFO] [stderr] 955 |     fn part(&self) -> u32;
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `stroma-core` (lib) generated 4 warnings
[INFO] [stderr] warning: `stroma-core` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/keratin_log-916d42d2d3a31be0)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test batcher::tests::adversarial_schedule_preserves_order ... ok
[INFO] [stdout] test batcher::tests::drip_feed_never_starves ... ok
[INFO] [stdout] test batcher::tests::drop_drains_batch ... ok
[INFO] [stdout] test batcher::tests::deterministic_fuzz_seed ... ok
[INFO] [stdout] test batcher::tests::stale_arrival_can_produce_two_flushes ... ok
[INFO] [stdout] test batcher::tests::flushes_exactly_on_deadline ... ok
[INFO] [stdout] test batcher::tests::stale_arrival_flushes_before_size ... ok
[INFO] [stdout] test batcher::tests::stale_batch_flushes_on_next_arrival ... ok
[INFO] [stdout] test batcher::tests::successive_batches_do_not_mix ... ok
[INFO] [stdout] test batcher::tests::burst_batches_until_limit ... ok
[INFO] [stdout] test batcher::tests::zero_linger_flushes_immediately ... ok
[INFO] [stdout] test batcher::tests::driver_wait_rule_treats_none_as_due_when_batch_nonempty ... ok
[INFO] [stdout] test batcher::tests::large_batches_are_linear ... ok
[INFO] [stdout] test batcher::tests::driver_flushes_on_timeout ... ok
[INFO] [stdout] test batcher::tests::zero_weight_with_unbounded_max_items_panics - should panic ... ok
[INFO] [stdout] test manifest::manifest_roundtrip ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- manifest::manifest_roundtrip stdout ----
[INFO] [stdout] Temp path: test_data/test_data/manifest_roundtrip-17685646632231094102
[INFO] [stdout] 
[INFO] [stdout] thread 'manifest::manifest_roundtrip' (40) panicked at keratin-log/src/util.rs:24:36:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56c996b3a3d2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56c996b3a3d2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56c996b3a3d2 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x56c996b3a3d2 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x56c996b4f45a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x56c996b4f45a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x56c996b3f2e6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x56c996b3f2e6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x56c996b1777f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x56c996b1777f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x56c996b31b29 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x56c996abe45e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x56c996abe45e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x56c996b31ce2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x56c996b31ce2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x56c996b17838 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x56c996b0c9a9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x56c996b1874d - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x56c996b4fb2c - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x56c996b4f8a2 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x56c996aa6d49 - <core[27de1724e4349be2]::result::Result<(), std[3b51380354919863]::io::error::Error>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x56c996aa6d49 - keratin_log[9d8471280ab7fdde]::util::test_dir
[INFO] [stdout]                                at /opt/rustwide/workdir/keratin-log/src/util.rs:24:36
[INFO] [stdout]   22:     0x56c996aa6e2d - keratin_log[9d8471280ab7fdde]::manifest::manifest_roundtrip
[INFO] [stdout]                                at /opt/rustwide/workdir/keratin-log/src/manifest.rs:174:15
[INFO] [stdout]   23:     0x56c996aa33e7 - keratin_log[9d8471280ab7fdde]::manifest::manifest_roundtrip::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/keratin-log/src/manifest.rs:173:24
[INFO] [stdout]   24:     0x56c996a9f586 - <keratin_log[9d8471280ab7fdde]::manifest::manifest_roundtrip::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56c996ab280b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x56c996ab280b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x56c996abf06a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x56c996abf06a - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x56c996abf06a - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x56c996abf06a - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x56c996abf06a - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x56c996abf06a - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x56c996abf06a - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x56c996aba614 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x56c996aba614 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x56c996ac1b62 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x56c996ac1b62 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x56c996ac1b62 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x56c996ac1b62 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x56c996ac1b62 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x56c996ac1b62 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x56c996ac1b62 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x56c996b39c4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   44:     0x56c996b39c4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   45:     0x7b598bd08aa4 - <unknown>
[INFO] [stdout]   46:     0x7b598bd95a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     manifest::manifest_roundtrip
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 15 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p keratin-log --lib`
[INFO] running `Command { std: "docker" "inspect" "9b50c6ec02db709e605542b26d38099aa4b543385c1e1af0984e7ca6625cd247", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b50c6ec02db709e605542b26d38099aa4b543385c1e1af0984e7ca6625cd247", kill_on_drop: false }`
[INFO] [stdout] 9b50c6ec02db709e605542b26d38099aa4b543385c1e1af0984e7ca6625cd247
