[INFO] cloning repository https://github.com/dholroyd/lowly
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dholroyd/lowly" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdholroyd%2Flowly", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdholroyd%2Flowly'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 52ccb6cf7bf26fc0cf56791bd4afa5d2c78b5b46
[INFO] checking dholroyd/lowly against master#8f21a5c92ea55c348c275a1bc4fedbdf181e0d64 for pr-143011
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdholroyd%2Flowly" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dholroyd/lowly
[INFO] finished tweaking git repo https://github.com/dholroyd/lowly
[INFO] tweaked toml for git repo https://github.com/dholroyd/lowly written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dholroyd/lowly on toolchain 8f21a5c92ea55c348c275a1bc4fedbdf181e0d64
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dholroyd/lowly 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" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/dholroyd/mse_fmp4.git`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded mpeg2ts v0.1.1
[INFO] [stderr]   Downloaded arrayvec v0.3.25
[INFO] [stderr]   Downloaded adts-reader v0.3.0
[INFO] [stderr]   Downloaded bitreader v0.3.1
[INFO] [stderr]   Downloaded h2 v0.1.21
[INFO] [stderr]   Downloaded hexdump v0.1.0
[INFO] [stderr]   Downloaded trackable v0.2.22
[INFO] [stderr]   Downloaded trackable_derive v0.1.2
[INFO] [stderr]   Downloaded h264-reader v0.3.0
[INFO] [stderr]   Downloaded rtp-rs v0.3.0
[INFO] [stderr]   Downloaded mpeg2ts-reader v0.13.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6e47c7916762c187d2b89c7b3c516d31be0dc1a6686ea9c6236a14286759f738
[INFO] running `Command { std: "docker" "start" "-a" "6e47c7916762c187d2b89c7b3c516d31be0dc1a6686ea9c6236a14286759f738", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6e47c7916762c187d2b89c7b3c516d31be0dc1a6686ea9c6236a14286759f738", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e47c7916762c187d2b89c7b3c516d31be0dc1a6686ea9c6236a14286759f738", kill_on_drop: false }`
[INFO] [stdout] 6e47c7916762c187d2b89c7b3c516d31be0dc1a6686ea9c6236a14286759f738
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7ff9e4b8a66cd9e1bf6b72a7193b23a0f0e775b14612156b484f6f9dd667c2a1
[INFO] running `Command { std: "docker" "start" "-a" "7ff9e4b8a66cd9e1bf6b72a7193b23a0f0e775b14612156b484f6f9dd667c2a1", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.58
[INFO] [stderr]    Compiling autocfg v0.1.4
[INFO] [stderr]     Checking cfg-if v0.1.9
[INFO] [stderr]     Checking rand_core v0.4.0
[INFO] [stderr]     Checking futures v0.1.27
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]     Checking lazy_static v1.3.0
[INFO] [stderr]     Checking either v1.5.2
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking smallvec v0.6.9
[INFO] [stderr]     Checking fnv v1.0.6
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]    Compiling arrayvec v0.4.10
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]     Checking crossbeam-utils v0.6.5
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking owning_ref v0.4.0
[INFO] [stderr]     Checking encoding_index_tests v0.1.4
[INFO] [stderr]    Compiling syn v0.15.34
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking tokio-trace-core v0.2.0
[INFO] [stderr]    Compiling httparse v1.3.3
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling memchr v2.2.0
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking crossbeam-epoch v0.7.1
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]     Checking unicode-normalization v0.1.8
[INFO] [stderr]     Checking encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-japanese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]     Checking encoding-index-korean v1.20141219.5
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]     Checking try-lock v0.2.2
[INFO] [stderr]     Checking indexmap v1.0.2
[INFO] [stderr]     Checking string v0.1.3
[INFO] [stderr]    Compiling quote v0.6.12
[INFO] [stderr]     Checking odds v0.2.26
[INFO] [stderr]     Checking crossbeam-deque v0.7.1
[INFO] [stderr]     Checking itertools v0.4.19
[INFO] [stderr]     Checking bitreader v0.3.1
[INFO] [stderr]     Checking fixedbitset v0.1.9
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking scoped-tls v0.1.2
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking num_cpus v1.10.0
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking arrayvec v0.3.25
[INFO] [stderr]     Checking h264-reader v0.3.0
[INFO] [stderr]     Checking adts-reader v0.3.0
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking encoding v0.2.33
[INFO] [stderr]     Checking rtp-rs v0.3.0
[INFO] [stderr]     Checking mio v0.6.19
[INFO] [stderr]     Checking mpeg2ts-reader v0.13.0
[INFO] [stderr]     Checking http v0.1.17
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking hexdump v0.1.0
[INFO] [stderr]     Checking tokio-executor v0.1.7
[INFO] [stderr]     Checking tokio-io v0.1.12
[INFO] [stderr]     Checking tokio-sync v0.1.6
[INFO] [stderr]     Checking tokio-buf v0.1.1
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking want v0.0.6
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]     Checking tokio-timer v0.2.11
[INFO] [stderr]     Checking tokio-current-thread v0.1.6
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking tokio-codec v0.1.1
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]     Checking tokio-threadpool v0.1.14
[INFO] [stderr]     Checking parking_lot v0.7.1
[INFO] [stderr]     Checking h2 v0.1.21
[INFO] [stderr]     Checking http-body v0.1.0
[INFO] [stderr]     Checking tokio-reactor v0.1.9
[INFO] [stderr]     Checking tokio-fs v0.1.6
[INFO] [stderr]     Checking tokio-tcp v0.1.3
[INFO] [stderr]     Checking tokio-uds v0.2.5
[INFO] [stderr]     Checking tokio-udp v0.1.3
[INFO] [stderr]    Compiling trackable_derive v0.1.2
[INFO] [stderr]     Checking tokio v0.1.21
[INFO] [stderr]     Checking trackable v0.2.22
[INFO] [stderr]     Checking tokio-core v0.1.17
[INFO] [stderr]     Checking mpeg2ts v0.1.1
[INFO] [stderr]     Checking hyper v0.12.29
[INFO] [stderr]     Checking mse_fmp4 v0.1.2 (https://github.com/dholroyd/mse_fmp4.git#8baeeef4)
[INFO] [stderr]     Checking lowly v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/mpegts/h264.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::{SystemTime, SystemTimeError, Duration};
[INFO] [stdout]    |                                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mpegts/mod.rs:121:31
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 self.carry += (Timestamp::MAX.value() + 1);
[INFO] [stdout]     |                               ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 121 -                 self.carry += (Timestamp::MAX.value() + 1);
[INFO] [stdout] 121 +                 self.carry += Timestamp::MAX.value() + 1;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::Ipv4Addr`
[INFO] [stdout]  --> src/net.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::Ipv4Addr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/store.rs:156:20
[INFO] [stdout]     |
[INFO] [stdout] 156 |             .map(|(i, sample)| sample )
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/mpegts/h264.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::{SystemTime, SystemTimeError, Duration};
[INFO] [stdout]    |                                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mpegts/mod.rs:121:31
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 self.carry += (Timestamp::MAX.value() + 1);
[INFO] [stdout]     |                               ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 121 -                 self.carry += (Timestamp::MAX.value() + 1);
[INFO] [stdout] 121 +                 self.carry += Timestamp::MAX.value() + 1;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::Ipv4Addr`
[INFO] [stdout]  --> src/net.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::Ipv4Addr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sample`
[INFO] [stdout]    --> src/store.rs:476:32
[INFO] [stdout]     |
[INFO] [stdout] 476 |             .map(move |(index, sample)| {
[INFO] [stdout]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]    --> src/store.rs:758:27
[INFO] [stdout]     |
[INFO] [stdout] 758 |             .map(|(index, track)| TrackInfo { track_id: TrackId(index) } )
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http.rs:253:21
[INFO] [stdout]     |
[INFO] [stdout] 253 |                 let mut track_ref = store.get_track(id).unwrap();
[INFO] [stdout]     |                     ----^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/store.rs:156:20
[INFO] [stdout]     |
[INFO] [stdout] 156 |             .map(|(i, sample)| sample )
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sample`
[INFO] [stdout]    --> src/store.rs:476:32
[INFO] [stdout]     |
[INFO] [stdout] 476 |             .map(move |(index, sample)| {
[INFO] [stdout]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]    --> src/store.rs:758:27
[INFO] [stdout]     |
[INFO] [stdout] 758 |             .map(|(index, track)| TrackInfo { track_id: TrackId(index) } )
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http.rs:253:21
[INFO] [stdout]     |
[INFO] [stdout] 253 |                 let mut track_ref = store.get_track(id).unwrap();
[INFO] [stdout]     |                     ----^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::misc::Slice`
[INFO] [stdout]   --> src/store.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use itertools::misc::Slice;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:38:25
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: h264_reader::nal::NalHeader) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:47:24
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/mpegts/h264.rs:95:68
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]    |                                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:99:24
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:103:23
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn end(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>) {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `date_part`
[INFO] [stdout]    --> src/mpegts/h264.rs:165:25
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     let date_part = if time_diff < -(DateTime::DAY_MICROS as i64 / 2) {
[INFO] [stdout]     |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_date_part`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:325:25
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:332:24
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:360:25
[INFO] [stdout]     |
[INFO] [stdout] 360 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:367:24
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `private_bit`
[INFO] [stdout]   --> src/mpegts/adts.rs:31:189
[INFO] [stdout]    |
[INFO] [stdout] 31 | ...der::SamplingFrequency, private_bit: u8, channels: adts_reader::ChannelConfiguration, originality: adts_reader::Originality, home: u8) {
[INFO] [stdout]    |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_private_bit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer_fullness`
[INFO] [stdout]   --> src/mpegts/adts.rs:35:27
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn payload(&mut self, buffer_fullness: u16, no_of_blocks: u8, buf: &[u8]) {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer_fullness`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `no_of_blocks`
[INFO] [stdout]   --> src/mpegts/adts.rs:35:49
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn payload(&mut self, buffer_fullness: u16, no_of_blocks: u8, buf: &[u8]) {
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_no_of_blocks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program_pid`
[INFO] [stdout]   --> src/mpegts/mod.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |                 program_pid, stream_type: StreamType::H264, pmt, stream_info,
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: try ignoring the field: `program_pid: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pmt`
[INFO] [stdout]   --> src/mpegts/mod.rs:57:61
[INFO] [stdout]    |
[INFO] [stdout] 57 |                 program_pid, stream_type: StreamType::H264, pmt, stream_info,
[INFO] [stdout]    |                                                             ^^^ help: try ignoring the field: `pmt: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program_pid`
[INFO] [stdout]   --> src/mpegts/mod.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 program_pid, stream_type: StreamType::Adts, pmt, stream_info,
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: try ignoring the field: `program_pid: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pmt`
[INFO] [stdout]   --> src/mpegts/mod.rs:61:61
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 program_pid, stream_type: StreamType::Adts, pmt, stream_info,
[INFO] [stdout]    |                                                             ^^^ help: try ignoring the field: `pmt: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/net.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         Err(e) => panic!("Core::run() failed"),
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/store.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |             .find(|(i, seg)| seg.dts == dts)
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_ts`
[INFO] [stdout]    --> src/store.rs:295:13
[INFO] [stdout]     |
[INFO] [stdout] 295 |         let max_ts = self.max_ts.unwrap();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `skipped`
[INFO] [stdout]    --> src/store.rs:297:17
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut skipped = false;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_skipped`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `discontinuity`
[INFO] [stdout]    --> src/store.rs:298:17
[INFO] [stdout]     |
[INFO] [stdout] 298 |         let mut discontinuity = false;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_discontinuity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/store.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut skipped = false;
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/store.rs:298:13
[INFO] [stdout]     |
[INFO] [stdout] 298 |         let mut discontinuity = false;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/store.rs:497:21
[INFO] [stdout]     |
[INFO] [stdout] 497 |             .find(|(i, seg)| seg.dts == dts)
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/http.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn master_manifest(&mut self, req: Request<Body>) -> ImmediateFut {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let mut track_ref = store.get_track(id).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/http.rs:317:33
[INFO] [stdout]     |
[INFO] [stdout] 317 | ...                   Err(e) => (),
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/http.rs:358:33
[INFO] [stdout]     |
[INFO] [stdout] 358 | ...                   Err(e) => (),
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/http.rs:386:31
[INFO] [stdout]     |
[INFO] [stdout] 386 |     fn initialisation_segment(req: Request<Body>, track_ref: store::TrackRef) -> ImmediateFut {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/http.rs:511:21
[INFO] [stdout]     |
[INFO] [stdout] 511 |     fn fmp4_segment(req: Request<Body>, track_ref: store::TrackRef, sample_id: String, rest: Option<String>) -> Response<Body> {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `slice_type` is never read
[INFO] [stdout]   --> src/mpegts/h264.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct SliceIngest {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] 24 |     slice_type: SliceType,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `local_time_datum` and `pts_to_utc_offset` are never read
[INFO] [stdout]    --> src/mpegts/h264.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 125 | struct PicTimingIngest {
[INFO] [stdout]     |        --------------- fields in this struct
[INFO] [stdout] 126 |     local_time_datum: Option<DateTime>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 127 |     /// in 90-thousandths of a second (mpegts timebase)
[INFO] [stdout] 128 |     pts_to_utc_offset: i64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `adjust_pts_to_utc` is never used
[INFO] [stdout]    --> src/mpegts/h264.rs:139:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl PicTimingIngest {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 139 |     pub fn adjust_pts_to_utc(&self, pts_dts: i64) -> i64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `1` is never read
[INFO] [stdout]   --> src/store.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Avc(nal::NalHeader, nal::slice::SliceHeader),
[INFO] [stdout]    |     ---                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 24 -     Avc(nal::NalHeader, nal::slice::SliceHeader),
[INFO] [stdout] 24 +     Avc(nal::NalHeader, ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/store.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |     NotAnIdrSample(i64),
[INFO] [stdout]    |     -------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 30 -     NotAnIdrSample(i64),
[INFO] [stdout] 30 +     NotAnIdrSample(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/store.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |     SampleNotFound(i64),
[INFO] [stdout]    |     -------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 31 -     SampleNotFound(i64),
[INFO] [stdout] 31 +     SampleNotFound(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NoPartsForSegment` is never constructed
[INFO] [stdout]   --> src/store.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum SegmentError {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 36 |     NoPartsForSegment,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pps` is never read
[INFO] [stdout]   --> src/store.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct AvcTrack {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 47 |     sps: nal::sps::SeqParameterSet,
[INFO] [stdout] 48 |     pps: nal::pps::PicParameterSet,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pps`, `sample`, and `rfc6381_codec` are never used
[INFO] [stdout]    --> src/store.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl AvcTrack {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn pps(&self) -> &h264_reader::nal::pps::PicParameterSet {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn sample(&self, dts: i64) -> Option<&Sample> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn rfc6381_codec(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AvcPartIterator` is never constructed
[INFO] [stdout]    --> src/store.rs:279:8
[INFO] [stdout]     |
[INFO] [stdout] 279 | struct AvcPartIterator<'track> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_bitrate` is never read
[INFO] [stdout]    --> src/store.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 369 | pub struct AacTrack {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 374 |     max_bitrate: Option<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sample` is never used
[INFO] [stdout]    --> src/store.rs:550:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | impl AacTrack {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 550 |     pub fn sample(&self, dts: i64) -> Option<&Sample> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `continuous` is never read
[INFO] [stdout]    --> src/store.rs:611:5
[INFO] [stdout]     |
[INFO] [stdout] 608 | pub struct PartInfo {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 611 |     continuous: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_continuous` is never used
[INFO] [stdout]    --> src/store.rs:621:12
[INFO] [stdout]     |
[INFO] [stdout] 614 | impl PartInfo {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 621 |     pub fn is_continuous(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_avc_codec_bytes` is never used
[INFO] [stdout]    --> src/store.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn make_avc_codec_bytes(sps: &nal::sps::SeqParameterSet) -> [u8; 3] {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Unimplemented` is never constructed
[INFO] [stdout]    --> src/http.rs:875:5
[INFO] [stdout]     |
[INFO] [stdout] 874 | enum HlsServiceError {
[INFO] [stdout]     |      --------------- variant in this enum
[INFO] [stdout] 875 |     Unimplemented
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HlsServiceError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `duration` and `start_time` are never used
[INFO] [stdout]    --> src/http.rs:907:8
[INFO] [stdout]     |
[INFO] [stdout] 906 | impl AvcStream {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 907 |     fn duration(&self) -> Result<u32, mse_fmp4::Error> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 915 |     fn start_time(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `duration` and `start_time` are never used
[INFO] [stdout]    --> src/http.rs:929:8
[INFO] [stdout]     |
[INFO] [stdout] 928 | impl AacStream {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 929 |     fn duration(&self) -> Result<u32, mse_fmp4::Error> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 937 |     fn start_time(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/store.rs:684:22
[INFO] [stdout]     |
[INFO] [stdout] 684 |     fn get_state_mut(&mut self) -> MutexGuard<State> {
[INFO] [stdout]     |                      ^^^^^^^^^     ----------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 684 |     fn get_state_mut(&mut self) -> MutexGuard<'_, State> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/store.rs:763:30
[INFO] [stdout]     |
[INFO] [stdout] 763 |     pub fn get_track<'store>(&mut self, track_id: TrackId) -> Option<TrackRef> {
[INFO] [stdout]     |                              ^^^^^^^^^                               -------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 763 |     pub fn get_track<'store>(&mut self, track_id: TrackId) -> Option<TrackRef<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::misc::Slice`
[INFO] [stdout]   --> src/store.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use itertools::misc::Slice;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:38:25
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: h264_reader::nal::NalHeader) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:47:24
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/mpegts/h264.rs:95:68
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]    |                                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/mpegts/h264.rs:99:24
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:103:23
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn end(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>) {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `date_part`
[INFO] [stdout]    --> src/mpegts/h264.rs:165:25
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     let date_part = if time_diff < -(DateTime::DAY_MICROS as i64 / 2) {
[INFO] [stdout]     |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_date_part`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:325:25
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:332:24
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:360:25
[INFO] [stdout]     |
[INFO] [stdout] 360 |     fn start(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, header: NalHeader) {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/mpegts/h264.rs:367:24
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn push(&mut self, ctx: &mut h264_reader::Context<Self::Ctx>, buf: &[u8]) {
[INFO] [stdout]     |                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `private_bit`
[INFO] [stdout]   --> src/mpegts/adts.rs:31:189
[INFO] [stdout]    |
[INFO] [stdout] 31 | ...der::SamplingFrequency, private_bit: u8, channels: adts_reader::ChannelConfiguration, originality: adts_reader::Originality, home: u8) {
[INFO] [stdout]    |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_private_bit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer_fullness`
[INFO] [stdout]   --> src/mpegts/adts.rs:35:27
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn payload(&mut self, buffer_fullness: u16, no_of_blocks: u8, buf: &[u8]) {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer_fullness`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `no_of_blocks`
[INFO] [stdout]   --> src/mpegts/adts.rs:35:49
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn payload(&mut self, buffer_fullness: u16, no_of_blocks: u8, buf: &[u8]) {
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_no_of_blocks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program_pid`
[INFO] [stdout]   --> src/mpegts/mod.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |                 program_pid, stream_type: StreamType::H264, pmt, stream_info,
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: try ignoring the field: `program_pid: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pmt`
[INFO] [stdout]   --> src/mpegts/mod.rs:57:61
[INFO] [stdout]    |
[INFO] [stdout] 57 |                 program_pid, stream_type: StreamType::H264, pmt, stream_info,
[INFO] [stdout]    |                                                             ^^^ help: try ignoring the field: `pmt: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program_pid`
[INFO] [stdout]   --> src/mpegts/mod.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 program_pid, stream_type: StreamType::Adts, pmt, stream_info,
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: try ignoring the field: `program_pid: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pmt`
[INFO] [stdout]   --> src/mpegts/mod.rs:61:61
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 program_pid, stream_type: StreamType::Adts, pmt, stream_info,
[INFO] [stdout]    |                                                             ^^^ help: try ignoring the field: `pmt: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/net.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         Err(e) => panic!("Core::run() failed"),
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/store.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |             .find(|(i, seg)| seg.dts == dts)
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_ts`
[INFO] [stdout]    --> src/store.rs:295:13
[INFO] [stdout]     |
[INFO] [stdout] 295 |         let max_ts = self.max_ts.unwrap();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `skipped`
[INFO] [stdout]    --> src/store.rs:297:17
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut skipped = false;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_skipped`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `discontinuity`
[INFO] [stdout]    --> src/store.rs:298:17
[INFO] [stdout]     |
[INFO] [stdout] 298 |         let mut discontinuity = false;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_discontinuity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/store.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut skipped = false;
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/store.rs:298:13
[INFO] [stdout]     |
[INFO] [stdout] 298 |         let mut discontinuity = false;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/store.rs:497:21
[INFO] [stdout]     |
[INFO] [stdout] 497 |             .find(|(i, seg)| seg.dts == dts)
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/http.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn master_manifest(&mut self, req: Request<Body>) -> ImmediateFut {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let mut track_ref = store.get_track(id).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/http.rs:317:33
[INFO] [stdout]     |
[INFO] [stdout] 317 | ...                   Err(e) => (),
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/http.rs:358:33
[INFO] [stdout]     |
[INFO] [stdout] 358 | ...                   Err(e) => (),
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/http.rs:386:31
[INFO] [stdout]     |
[INFO] [stdout] 386 |     fn initialisation_segment(req: Request<Body>, track_ref: store::TrackRef) -> ImmediateFut {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/http.rs:511:21
[INFO] [stdout]     |
[INFO] [stdout] 511 |     fn fmp4_segment(req: Request<Body>, track_ref: store::TrackRef, sample_id: String, rest: Option<String>) -> Response<Body> {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `slice_type` is never read
[INFO] [stdout]   --> src/mpegts/h264.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct SliceIngest {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] 24 |     slice_type: SliceType,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `local_time_datum` and `pts_to_utc_offset` are never read
[INFO] [stdout]    --> src/mpegts/h264.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 125 | struct PicTimingIngest {
[INFO] [stdout]     |        --------------- fields in this struct
[INFO] [stdout] 126 |     local_time_datum: Option<DateTime>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 127 |     /// in 90-thousandths of a second (mpegts timebase)
[INFO] [stdout] 128 |     pts_to_utc_offset: i64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `adjust_pts_to_utc` is never used
[INFO] [stdout]    --> src/mpegts/h264.rs:139:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl PicTimingIngest {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 139 |     pub fn adjust_pts_to_utc(&self, pts_dts: i64) -> i64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `1` is never read
[INFO] [stdout]   --> src/store.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Avc(nal::NalHeader, nal::slice::SliceHeader),
[INFO] [stdout]    |     ---                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 24 -     Avc(nal::NalHeader, nal::slice::SliceHeader),
[INFO] [stdout] 24 +     Avc(nal::NalHeader, ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/store.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |     NotAnIdrSample(i64),
[INFO] [stdout]    |     -------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 30 -     NotAnIdrSample(i64),
[INFO] [stdout] 30 +     NotAnIdrSample(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/store.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |     SampleNotFound(i64),
[INFO] [stdout]    |     -------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 31 -     SampleNotFound(i64),
[INFO] [stdout] 31 +     SampleNotFound(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NoPartsForSegment` is never constructed
[INFO] [stdout]   --> src/store.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum SegmentError {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 36 |     NoPartsForSegment,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pps` is never read
[INFO] [stdout]   --> src/store.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct AvcTrack {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 47 |     sps: nal::sps::SeqParameterSet,
[INFO] [stdout] 48 |     pps: nal::pps::PicParameterSet,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pps`, `sample`, and `rfc6381_codec` are never used
[INFO] [stdout]    --> src/store.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl AvcTrack {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn pps(&self) -> &h264_reader::nal::pps::PicParameterSet {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn sample(&self, dts: i64) -> Option<&Sample> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn rfc6381_codec(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AvcPartIterator` is never constructed
[INFO] [stdout]    --> src/store.rs:279:8
[INFO] [stdout]     |
[INFO] [stdout] 279 | struct AvcPartIterator<'track> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_bitrate` is never read
[INFO] [stdout]    --> src/store.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 369 | pub struct AacTrack {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 374 |     max_bitrate: Option<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sample` is never used
[INFO] [stdout]    --> src/store.rs:550:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | impl AacTrack {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 550 |     pub fn sample(&self, dts: i64) -> Option<&Sample> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `continuous` is never read
[INFO] [stdout]    --> src/store.rs:611:5
[INFO] [stdout]     |
[INFO] [stdout] 608 | pub struct PartInfo {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 611 |     continuous: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_continuous` is never used
[INFO] [stdout]    --> src/store.rs:621:12
[INFO] [stdout]     |
[INFO] [stdout] 614 | impl PartInfo {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 621 |     pub fn is_continuous(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_avc_codec_bytes` is never used
[INFO] [stdout]    --> src/store.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn make_avc_codec_bytes(sps: &nal::sps::SeqParameterSet) -> [u8; 3] {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Unimplemented` is never constructed
[INFO] [stdout]    --> src/http.rs:875:5
[INFO] [stdout]     |
[INFO] [stdout] 874 | enum HlsServiceError {
[INFO] [stdout]     |      --------------- variant in this enum
[INFO] [stdout] 875 |     Unimplemented
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HlsServiceError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `duration` and `start_time` are never used
[INFO] [stdout]    --> src/http.rs:907:8
[INFO] [stdout]     |
[INFO] [stdout] 906 | impl AvcStream {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 907 |     fn duration(&self) -> Result<u32, mse_fmp4::Error> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 915 |     fn start_time(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `duration` and `start_time` are never used
[INFO] [stdout]    --> src/http.rs:929:8
[INFO] [stdout]     |
[INFO] [stdout] 928 | impl AacStream {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 929 |     fn duration(&self) -> Result<u32, mse_fmp4::Error> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 937 |     fn start_time(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/store.rs:684:22
[INFO] [stdout]     |
[INFO] [stdout] 684 |     fn get_state_mut(&mut self) -> MutexGuard<State> {
[INFO] [stdout]     |                      ^^^^^^^^^     ----------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 684 |     fn get_state_mut(&mut self) -> MutexGuard<'_, State> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/store.rs:763:30
[INFO] [stdout]     |
[INFO] [stdout] 763 |     pub fn get_track<'store>(&mut self, track_id: TrackId) -> Option<TrackRef> {
[INFO] [stdout]     |                              ^^^^^^^^^                               -------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 763 |     pub fn get_track<'store>(&mut self, track_id: TrackId) -> Option<TrackRef<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.52s
[INFO] running `Command { std: "docker" "inspect" "7ff9e4b8a66cd9e1bf6b72a7193b23a0f0e775b14612156b484f6f9dd667c2a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ff9e4b8a66cd9e1bf6b72a7193b23a0f0e775b14612156b484f6f9dd667c2a1", kill_on_drop: false }`
[INFO] [stdout] 7ff9e4b8a66cd9e1bf6b72a7193b23a0f0e775b14612156b484f6f9dd667c2a1
