[INFO] fetching crate riptun 0.1.4...
[INFO] testing riptun-0.1.4 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate riptun 0.1.4 into /workspace/builds/worker-3-tc1/source
[INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config
[INFO] removed /workspace/builds/worker-3-tc1/source/rust-toolchain
[INFO] started tweaking crates.io crate riptun 0.1.4
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate riptun 0.1.4
[INFO] tweaked toml for crates.io crate riptun 0.1.4 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate riptun 0.1.4 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate riptun 0.1.4 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded smol v1.2.5
[INFO] [stderr]   Downloaded async-net v1.6.1
[INFO] [stderr]   Downloaded gloo-timers v0.2.1
[INFO] [stderr]   Downloaded fastrand v1.5.0
[INFO] [stderr]   Downloaded memoffset v0.6.4
[INFO] [stderr]   Downloaded async-process v1.3.0
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.5
[INFO] [stderr]   Downloaded async-fs v1.5.0
[INFO] [stderr]   Downloaded signal-hook v0.3.10
[INFO] [stderr]   Downloaded async-task v4.0.3
[INFO] [stderr]   Downloaded nix v0.23.0
[INFO] [stderr]   Downloaded tokio v1.14.0
[INFO] [stderr]   Downloaded libc v0.2.108
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fc8f806ab8e5aeaa57d9b968b41b6db3c76a7027ebe20e6d0f2f39760fc3600f
[INFO] running `Command { std: "docker" "start" "-a" "fc8f806ab8e5aeaa57d9b968b41b6db3c76a7027ebe20e6d0f2f39760fc3600f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc8f806ab8e5aeaa57d9b968b41b6db3c76a7027ebe20e6d0f2f39760fc3600f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc8f806ab8e5aeaa57d9b968b41b6db3c76a7027ebe20e6d0f2f39760fc3600f", kill_on_drop: false }`
[INFO] [stdout] fc8f806ab8e5aeaa57d9b968b41b6db3c76a7027ebe20e6d0f2f39760fc3600f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0b0afac8b88f5c3b6b3963ccf2d4b746c23a1fc5943daa9efc2bb9acb6b5c872
[INFO] running `Command { std: "docker" "start" "-a" "0b0afac8b88f5c3b6b3963ccf2d4b746c23a1fc5943daa9efc2bb9acb6b5c872", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[INFO] [stderr]    Compiling libc v0.2.108
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling syn v1.0.81
[INFO] [stderr]    Compiling futures-core v0.3.17
[INFO] [stderr]    Compiling proc-macro-hack v0.5.19
[INFO] [stderr]    Compiling pin-project-lite v0.2.7
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling futures-task v0.3.17
[INFO] [stderr]    Compiling proc-macro-nested v0.1.7
[INFO] [stderr]    Compiling fastrand v1.5.0
[INFO] [stderr]    Compiling futures-io v0.3.17
[INFO] [stderr]    Compiling slab v0.4.5
[INFO] [stderr]    Compiling cache-padded v1.1.1
[INFO] [stderr]    Compiling concurrent-queue v1.2.2
[INFO] [stderr]    Compiling once_cell v1.8.0
[INFO] [stderr]    Compiling futures-macro v0.3.17
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling futures-util v0.3.17
[INFO] [stderr]    Compiling tokio v1.14.0
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling futures-lite v1.12.0
[INFO] [stderr]    Compiling mio v0.7.14
[INFO] [stderr]    Compiling polling v2.2.0
[INFO] [stderr]    Compiling socket2 v0.4.2
[INFO] [stderr]    Compiling nix v0.23.0
[INFO] [stderr]    Compiling async-io v1.6.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.30
[INFO] [stderr]    Compiling thiserror v1.0.30
[INFO] [stderr]    Compiling riptun v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: value assigned to `source` is never read
[INFO] [stdout]   --> src/error.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         source: io::Error,
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:68:21
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<Queue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, Queue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn iter(&self) -> Iter<Queue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn iter(&self) -> Iter<'_, Queue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:83:21
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn iter_mut(&mut self) -> IterMut<Queue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn iter_mut(&mut self) -> IterMut<'_, Queue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<AsyncStdQueue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, AsyncStdQueue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn iter(&self) -> Iter<AsyncStdQueue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn iter(&self) -> Iter<'_, AsyncStdQueue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn iter_mut(&mut self) -> IterMut<AsyncStdQueue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn iter_mut(&mut self) -> IterMut<'_, AsyncStdQueue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<TokioQueue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, TokioQueue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn iter(&self) -> Iter<TokioQueue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn iter(&self) -> Iter<'_, TokioQueue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter_mut(&mut self) -> IterMut<TokioQueue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter_mut(&mut self) -> IterMut<'_, TokioQueue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.98s
[INFO] running `Command { std: "docker" "inspect" "0b0afac8b88f5c3b6b3963ccf2d4b746c23a1fc5943daa9efc2bb9acb6b5c872", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0b0afac8b88f5c3b6b3963ccf2d4b746c23a1fc5943daa9efc2bb9acb6b5c872", kill_on_drop: false }`
[INFO] [stdout] 0b0afac8b88f5c3b6b3963ccf2d4b746c23a1fc5943daa9efc2bb9acb6b5c872
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2e1419554c82fc86682dbc1187b676a96f0ea853636d73839e526737e31a4d11
[INFO] running `Command { std: "docker" "start" "-a" "2e1419554c82fc86682dbc1187b676a96f0ea853636d73839e526737e31a4d11", kill_on_drop: false }`
[INFO] [stdout] warning: value assigned to `source` is never read
[INFO] [stdout]   --> src/error.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         source: io::Error,
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:68:21
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<Queue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, Queue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn iter(&self) -> Iter<Queue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn iter(&self) -> Iter<'_, Queue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:83:21
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn iter_mut(&mut self) -> IterMut<Queue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn iter_mut(&mut self) -> IterMut<'_, Queue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<AsyncStdQueue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, AsyncStdQueue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn iter(&self) -> Iter<AsyncStdQueue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn iter(&self) -> Iter<'_, AsyncStdQueue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn iter_mut(&mut self) -> IterMut<AsyncStdQueue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn iter_mut(&mut self) -> IterMut<'_, AsyncStdQueue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<TokioQueue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, TokioQueue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn iter(&self) -> Iter<TokioQueue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn iter(&self) -> Iter<'_, TokioQueue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling riptun v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter_mut(&mut self) -> IterMut<TokioQueue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter_mut(&mut self) -> IterMut<'_, TokioQueue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `source` is never read
[INFO] [stdout]   --> src/error.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         source: io::Error,
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:68:21
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<Queue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, Queue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn iter(&self) -> Iter<Queue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn iter(&self) -> Iter<'_, Queue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/sync.rs:83:21
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn iter_mut(&mut self) -> IterMut<Queue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn iter_mut(&mut self) -> IterMut<'_, Queue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<AsyncStdQueue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, AsyncStdQueue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn iter(&self) -> Iter<AsyncStdQueue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn iter(&self) -> Iter<'_, AsyncStdQueue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/std.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn iter_mut(&mut self) -> IterMut<AsyncStdQueue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn iter_mut(&mut self) -> IterMut<'_, AsyncStdQueue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<TokioQueue>
[INFO] [stdout]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, TokioQueue>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn iter(&self) -> Iter<TokioQueue> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn iter(&self) -> Iter<'_, TokioQueue> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tun/async/tokio.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter_mut(&mut self) -> IterMut<TokioQueue> {
[INFO] [stdout]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter_mut(&mut self) -> IterMut<'_, TokioQueue> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.81s
[INFO] running `Command { std: "docker" "inspect" "2e1419554c82fc86682dbc1187b676a96f0ea853636d73839e526737e31a4d11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e1419554c82fc86682dbc1187b676a96f0ea853636d73839e526737e31a4d11", kill_on_drop: false }`
[INFO] [stdout] 2e1419554c82fc86682dbc1187b676a96f0ea853636d73839e526737e31a4d11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5f2809ce229ad6461f1bba2d6c40537770d9464ac129d5d2f3b1b6b0604b4947
[INFO] running `Command { std: "docker" "start" "-a" "5f2809ce229ad6461f1bba2d6c40537770d9464ac129d5d2f3b1b6b0604b4947", kill_on_drop: false }`
[INFO] [stderr] warning: value assigned to `source` is never read
[INFO] [stderr]   --> src/error.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |         source: io::Error,
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/sync.rs:68:21
[INFO] [stderr]    |
[INFO] [stderr] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<Queue>
[INFO] [stderr]    |                     ^^^^^^^^^               ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 68 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, Queue>
[INFO] [stderr]    |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/sync.rs:77:17
[INFO] [stderr]    |
[INFO] [stderr] 77 |     pub fn iter(&self) -> Iter<Queue> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 77 |     pub fn iter(&self) -> Iter<'_, Queue> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/sync.rs:83:21
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn iter_mut(&mut self) -> IterMut<Queue> {
[INFO] [stderr]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn iter_mut(&mut self) -> IterMut<'_, Queue> {
[INFO] [stderr]    |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/async/std.rs:72:21
[INFO] [stderr]    |
[INFO] [stderr] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<AsyncStdQueue>
[INFO] [stderr]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 72 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, AsyncStdQueue>
[INFO] [stderr]    |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/async/std.rs:81:17
[INFO] [stderr]    |
[INFO] [stderr] 81 |     pub fn iter(&self) -> Iter<AsyncStdQueue> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 81 |     pub fn iter(&self) -> Iter<'_, AsyncStdQueue> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/async/std.rs:87:21
[INFO] [stderr]    |
[INFO] [stderr] 87 |     pub fn iter_mut(&mut self) -> IterMut<AsyncStdQueue> {
[INFO] [stderr]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 87 |     pub fn iter_mut(&mut self) -> IterMut<'_, AsyncStdQueue> {
[INFO] [stderr]    |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/async/tokio.rs:70:21
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<TokioQueue>
[INFO] [stderr]    |                     ^^^^^^^^^               ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub fn drain<R>(&mut self, range: R) -> Drain<'_, TokioQueue>
[INFO] [stderr]    |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/async/tokio.rs:79:17
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn iter(&self) -> Iter<TokioQueue> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn iter(&self) -> Iter<'_, TokioQueue> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tun/async/tokio.rs:85:21
[INFO] [stderr]    |
[INFO] [stderr] 85 |     pub fn iter_mut(&mut self) -> IterMut<TokioQueue> {
[INFO] [stderr]    |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 85 |     pub fn iter_mut(&mut self) -> IterMut<'_, TokioQueue> {
[INFO] [stderr]    |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: `riptun` (lib) generated 10 warnings (run `cargo fix --lib -p riptun` to apply 9 suggestions)
[INFO] [stderr] warning: `riptun` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/riptun-73382ed173c12799)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test queue::req::tests::test_utf_name ... ok
[INFO] [stdout] test queue::req::tests::test_happy_path ... ok
[INFO] [stdout] test queue::req::tests::test_empy_name ... ok
[INFO] [stdout] test queue::req::tests::test_long_name ... ok
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests riptun
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/lib.rs - (line 27) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5f2809ce229ad6461f1bba2d6c40537770d9464ac129d5d2f3b1b6b0604b4947", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f2809ce229ad6461f1bba2d6c40537770d9464ac129d5d2f3b1b6b0604b4947", kill_on_drop: false }`
[INFO] [stdout] 5f2809ce229ad6461f1bba2d6c40537770d9464ac129d5d2f3b1b6b0604b4947
