[INFO] fetching crate asyncnsq 0.1.0... [INFO] testing asyncnsq-0.1.0 against try#eafdee2dfae8c2233b74f98b123308be7ccefcc6 for pr-79296 [INFO] extracting crate asyncnsq 0.1.0 into /workspace/builds/worker-2/source [INFO] validating manifest of crates.io crate asyncnsq 0.1.0 on toolchain eafdee2dfae8c2233b74f98b123308be7ccefcc6 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate asyncnsq 0.1.0 [INFO] finished tweaking crates.io crate asyncnsq 0.1.0 [INFO] tweaked toml for crates.io crate asyncnsq 0.1.0 written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate crates.io crate asyncnsq 0.1.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /workspace/builds/worker-2/source/tests/integrations_test.rs [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a9a9253da8e45e976f9f63afbe5cfcaa016f0a0d10da336c6c0cbc2a560a77c9 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "a9a9253da8e45e976f9f63afbe5cfcaa016f0a0d10da336c6c0cbc2a560a77c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a9a9253da8e45e976f9f63afbe5cfcaa016f0a0d10da336c6c0cbc2a560a77c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a9a9253da8e45e976f9f63afbe5cfcaa016f0a0d10da336c6c0cbc2a560a77c9", kill_on_drop: false }` [INFO] [stdout] a9a9253da8e45e976f9f63afbe5cfcaa016f0a0d10da336c6c0cbc2a560a77c9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a9a59bbcbe935f24dcfda06142424a798d3eeee656d7e374ca563b13ebab492 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "6a9a59bbcbe935f24dcfda06142424a798d3eeee656d7e374ca563b13ebab492", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /opt/rustwide/workdir/tests/integrations_test.rs [INFO] [stderr] Compiling cfg-if v0.1.9 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling syn v1.0.8 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling futures-core-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling futures-sink-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling futures-io-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling pin-utils v0.1.0-alpha.4 [INFO] [stderr] Compiling serde v1.0.103 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling smallvec v1.0.0 [INFO] [stderr] Compiling curl v0.4.25 [INFO] [stderr] Compiling isahc v0.7.6 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling openssl-probe v0.1.2 [INFO] [stderr] Compiling mime v0.3.14 [INFO] [stderr] Compiling dtoa v0.4.4 [INFO] [stderr] Compiling futures-timer v2.0.2 [INFO] [stderr] Compiling once_cell v1.2.0 [INFO] [stderr] Compiling futures-core v0.3.1 [INFO] [stderr] Compiling futures-io v0.3.1 [INFO] [stderr] Compiling pin-project-lite v0.1.1 [INFO] [stderr] Compiling hex v0.4.0 [INFO] [stderr] Compiling libnghttp2-sys v0.1.2 [INFO] [stderr] Compiling libz-sys v1.0.25 [INFO] [stderr] Compiling openssl-sys v0.9.53 [INFO] [stderr] Compiling curl-sys v0.4.24 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling lock_api v0.3.2 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling unicode-normalization v0.1.11 [INFO] [stderr] Compiling futures-channel-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling num_cpus v1.11.1 [INFO] [stderr] Compiling socket2 v0.3.11 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling crossbeam-utils v0.7.0 [INFO] [stderr] Compiling crossbeam-channel v0.3.9 [INFO] [stderr] Compiling async-task v1.0.0 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling sluice v0.4.2 [INFO] [stderr] Compiling smallvec v0.6.13 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling mio v0.6.20 [INFO] [stderr] Compiling kv-log-macro v1.0.4 [INFO] [stderr] Compiling crossbeam-channel v0.4.0 [INFO] [stderr] Compiling tokio-io v0.1.12 [INFO] [stderr] Compiling http v0.1.21 [INFO] [stderr] Compiling memoffset v0.5.3 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling mime_guess v2.0.1 [INFO] [stderr] Compiling crossbeam-epoch v0.8.0 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling futures-util-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling crossbeam-deque v0.7.2 [INFO] [stderr] Compiling mio-uds v0.6.7 [INFO] [stderr] Compiling url v2.1.0 [INFO] [stderr] Compiling futures-executor-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling broadcaster v0.2.6 [INFO] [stderr] Compiling futures-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling serde_derive v1.0.103 [INFO] [stderr] Compiling async-attributes v1.1.1 [INFO] [stderr] Compiling async-trait v0.1.21 [INFO] [stderr] Compiling async-std v1.4.0 [INFO] [stderr] Compiling serde_json v1.0.42 [INFO] [stderr] Compiling serde_urlencoded v0.6.1 [INFO] [stderr] Compiling toml v0.5.5 [INFO] [stderr] Compiling surf v1.0.3 [INFO] [stderr] Compiling asyncnsq v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/lib.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IdentifyConfig` [INFO] [stdout] --> src/reader.rs:1:28 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::data::{Address, IdentifyConfig, Msg}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/reader.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BytesMut` [INFO] [stdout] --> src/reader.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/reader.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/reader.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/writer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mutex`, `Receiver`, `Sender`, `channel` [INFO] [stdout] --> src/writer.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use async_std::sync::{channel, Arc, Mutex, Receiver, Sender}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BytesMut` [INFO] [stdout] --> src/writer.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/writer.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 192 | pub trait MsgHandler { [INFO] [stdout] | ---------- this trait cannot be made into an object... [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ ...because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] = help: consider moving `handler` to another trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:305:5 [INFO] [stdout] | [INFO] [stdout] 288 | / loop { [INFO] [stdout] 289 | | reader.sub(nsq_topic.as_str(), nsq_channel.as_str()).await?; [INFO] [stdout] 290 | | 'a: loop { [INFO] [stdout] 291 | | dbg!("msg_receiver"); [INFO] [stdout] ... | [INFO] [stdout] 303 | | reader.reconnect().await?; [INFO] [stdout] 304 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 305 | Ok(reader) [INFO] [stdout] | ^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/reader.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 132 | / loop { [INFO] [stdout] 133 | | if let Some(mut raw_data) = raw_receiver.recv().await { [INFO] [stdout] 134 | | all_data.append(&mut raw_data); [INFO] [stdout] 135 | | } [INFO] [stdout] ... | [INFO] [stdout] 194 | | } [INFO] [stdout] 195 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 196 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/reader.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 101 | / loop { [INFO] [stdout] 102 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stdout] 103 | | dbg!("wait for read"); [INFO] [stdout] 104 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stdout] ... | [INFO] [stdout] 118 | | } [INFO] [stdout] 119 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 120 | dbg!("read_data finish"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/writer.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 95 | / loop { [INFO] [stdout] 96 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stdout] 97 | | dbg!("wait for read"); [INFO] [stdout] 98 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stdout] ... | [INFO] [stdout] 106 | | } [INFO] [stdout] 107 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 108 | dbg!("read_data finish"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_interval` [INFO] [stdout] --> src/lib.rs:230:22 [INFO] [stdout] | [INFO] [stdout] 230 | Some(m_interval) => { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_interval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tmp` [INFO] [stdout] --> src/reader.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tmp` [INFO] [stdout] --> src/writer.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:231:21 [INFO] [stdout] | [INFO] [stdout] 231 | self.nsqlookup(handler.clone()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stdout] --> src/reader.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | tmpbuf.split_off(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stdout] --> src/writer.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | tmpbuf.split_off(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [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: unreachable expression [INFO] [stdout] --> tests/integrations_test.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 88 | / loop { [INFO] [stdout] 89 | | let tt = TestMsg { [INFO] [stdout] 90 | | name: "ss".to_string(), [INFO] [stdout] 91 | | }; [INFO] [stdout] ... | [INFO] [stdout] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stdout] 108 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 109 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> tests/integrations_test.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_reader` [INFO] [stdout] --> tests/integrations_test.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_writer` [INFO] [stdout] --> tests/integrations_test.rs:79:10 [INFO] [stdout] | [INFO] [stdout] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tests/integrations_test.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | dbg!(res); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 02s [INFO] running `Command { std: "docker" "inspect" "6a9a59bbcbe935f24dcfda06142424a798d3eeee656d7e374ca563b13ebab492", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a9a59bbcbe935f24dcfda06142424a798d3eeee656d7e374ca563b13ebab492", kill_on_drop: false }` [INFO] [stdout] 6a9a59bbcbe935f24dcfda06142424a798d3eeee656d7e374ca563b13ebab492 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6ad2cee1e5d115b9e0db6ea031ab9a0f36c64bf224c157245958d6a2253a8a10 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "6ad2cee1e5d115b9e0db6ea031ab9a0f36c64bf224c157245958d6a2253a8a10", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /opt/rustwide/workdir/tests/integrations_test.rs [INFO] [stderr] Compiling asyncnsq v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/lib.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IdentifyConfig` [INFO] [stdout] --> src/reader.rs:1:28 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::data::{Address, IdentifyConfig, Msg}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/reader.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BytesMut` [INFO] [stdout] --> src/reader.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/reader.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/reader.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/writer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mutex`, `Receiver`, `Sender`, `channel` [INFO] [stdout] --> src/writer.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use async_std::sync::{channel, Arc, Mutex, Receiver, Sender}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BytesMut` [INFO] [stdout] --> src/writer.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/writer.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 192 | pub trait MsgHandler { [INFO] [stdout] | ---------- this trait cannot be made into an object... [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ ...because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] = help: consider moving `handler` to another trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:305:5 [INFO] [stdout] | [INFO] [stdout] 288 | / loop { [INFO] [stdout] 289 | | reader.sub(nsq_topic.as_str(), nsq_channel.as_str()).await?; [INFO] [stdout] 290 | | 'a: loop { [INFO] [stdout] 291 | | dbg!("msg_receiver"); [INFO] [stdout] ... | [INFO] [stdout] 303 | | reader.reconnect().await?; [INFO] [stdout] 304 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 305 | Ok(reader) [INFO] [stdout] | ^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/reader.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 132 | / loop { [INFO] [stdout] 133 | | if let Some(mut raw_data) = raw_receiver.recv().await { [INFO] [stdout] 134 | | all_data.append(&mut raw_data); [INFO] [stdout] 135 | | } [INFO] [stdout] ... | [INFO] [stdout] 194 | | } [INFO] [stdout] 195 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 196 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/reader.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 101 | / loop { [INFO] [stdout] 102 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stdout] 103 | | dbg!("wait for read"); [INFO] [stdout] 104 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stdout] ... | [INFO] [stdout] 118 | | } [INFO] [stdout] 119 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 120 | dbg!("read_data finish"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/writer.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 95 | / loop { [INFO] [stdout] 96 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stdout] 97 | | dbg!("wait for read"); [INFO] [stdout] 98 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stdout] ... | [INFO] [stdout] 106 | | } [INFO] [stdout] 107 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 108 | dbg!("read_data finish"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_interval` [INFO] [stdout] --> src/lib.rs:230:22 [INFO] [stdout] | [INFO] [stdout] 230 | Some(m_interval) => { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_interval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tmp` [INFO] [stdout] --> src/reader.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tmp` [INFO] [stdout] --> src/writer.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:231:21 [INFO] [stdout] | [INFO] [stdout] 231 | self.nsqlookup(handler.clone()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stdout] --> src/reader.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | tmpbuf.split_off(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stdout] --> src/writer.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | tmpbuf.split_off(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [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: unreachable expression [INFO] [stdout] --> tests/integrations_test.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 88 | / loop { [INFO] [stdout] 89 | | let tt = TestMsg { [INFO] [stdout] 90 | | name: "ss".to_string(), [INFO] [stdout] 91 | | }; [INFO] [stdout] ... | [INFO] [stdout] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stdout] 108 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 109 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> tests/integrations_test.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_reader` [INFO] [stdout] --> tests/integrations_test.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_writer` [INFO] [stdout] --> tests/integrations_test.rs:79:10 [INFO] [stdout] | [INFO] [stdout] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tests/integrations_test.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | dbg!(res); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [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: unreachable expression [INFO] [stdout] --> tests/integrations_test.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 88 | / loop { [INFO] [stdout] 89 | | let tt = TestMsg { [INFO] [stdout] 90 | | name: "ss".to_string(), [INFO] [stdout] 91 | | }; [INFO] [stdout] ... | [INFO] [stdout] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stdout] 108 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 109 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> tests/integrations_test.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_reader` [INFO] [stdout] --> tests/integrations_test.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_writer` [INFO] [stdout] --> tests/integrations_test.rs:79:10 [INFO] [stdout] | [INFO] [stdout] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tests/integrations_test.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | dbg!(res); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [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: unreachable expression [INFO] [stdout] --> tests/integrations_test.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 88 | / loop { [INFO] [stdout] 89 | | let tt = TestMsg { [INFO] [stdout] 90 | | name: "ss".to_string(), [INFO] [stdout] 91 | | }; [INFO] [stdout] ... | [INFO] [stdout] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stdout] 108 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 109 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/lib.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IdentifyConfig` [INFO] [stdout] --> src/reader.rs:1:28 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::data::{Address, IdentifyConfig, Msg}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/reader.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BytesMut` [INFO] [stdout] --> src/reader.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/reader.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/reader.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::future` [INFO] [stdout] --> src/writer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use async_std::future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mutex`, `Receiver`, `Sender`, `channel` [INFO] [stdout] --> src/writer.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use async_std::sync::{channel, Arc, Mutex, Receiver, Sender}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BytesMut` [INFO] [stdout] --> src/writer.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/writer.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> tests/integrations_test.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> tests/integrations_test.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut reader = subscribe( [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_reader` [INFO] [stdout] --> tests/integrations_test.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_writer` [INFO] [stdout] --> tests/integrations_test.rs:79:10 [INFO] [stdout] | [INFO] [stdout] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tests/integrations_test.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | dbg!(res); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stdout] --> src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #51443 [INFO] [stdout] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stdout] --> src/lib.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 192 | pub trait MsgHandler { [INFO] [stdout] | ---------- this trait cannot be made into an object... [INFO] [stdout] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stdout] | ^^^^^^^ ...because method `handler` references the `Self` type in its `where` clause [INFO] [stdout] = help: consider moving `handler` to another trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:305:5 [INFO] [stdout] | [INFO] [stdout] 288 | / loop { [INFO] [stdout] 289 | | reader.sub(nsq_topic.as_str(), nsq_channel.as_str()).await?; [INFO] [stdout] 290 | | 'a: loop { [INFO] [stdout] 291 | | dbg!("msg_receiver"); [INFO] [stdout] ... | [INFO] [stdout] 303 | | reader.reconnect().await?; [INFO] [stdout] 304 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 305 | Ok(reader) [INFO] [stdout] | ^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/reader.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 132 | / loop { [INFO] [stdout] 133 | | if let Some(mut raw_data) = raw_receiver.recv().await { [INFO] [stdout] 134 | | all_data.append(&mut raw_data); [INFO] [stdout] 135 | | } [INFO] [stdout] ... | [INFO] [stdout] 194 | | } [INFO] [stdout] 195 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 196 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/reader.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 101 | / loop { [INFO] [stdout] 102 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stdout] 103 | | dbg!("wait for read"); [INFO] [stdout] 104 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stdout] ... | [INFO] [stdout] 118 | | } [INFO] [stdout] 119 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 120 | dbg!("read_data finish"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/writer.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 95 | / loop { [INFO] [stdout] 96 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stdout] 97 | | dbg!("wait for read"); [INFO] [stdout] 98 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stdout] ... | [INFO] [stdout] 106 | | } [INFO] [stdout] 107 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 108 | dbg!("read_data finish"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_interval` [INFO] [stdout] --> src/lib.rs:230:22 [INFO] [stdout] | [INFO] [stdout] 230 | Some(m_interval) => { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_interval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tmp` [INFO] [stdout] --> src/reader.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tmp` [INFO] [stdout] --> src/writer.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:231:21 [INFO] [stdout] | [INFO] [stdout] 231 | self.nsqlookup(handler.clone()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stdout] --> src/reader.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | tmpbuf.split_off(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stdout] --> src/writer.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | tmpbuf.split_off(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 5.37s [INFO] running `Command { std: "docker" "inspect" "6ad2cee1e5d115b9e0db6ea031ab9a0f36c64bf224c157245958d6a2253a8a10", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6ad2cee1e5d115b9e0db6ea031ab9a0f36c64bf224c157245958d6a2253a8a10", kill_on_drop: false }` [INFO] [stdout] 6ad2cee1e5d115b9e0db6ea031ab9a0f36c64bf224c157245958d6a2253a8a10 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 79a79c067f15e711503633f410adba432340c05b35634e1c2cf0a3a6c680ae1c [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "79a79c067f15e711503633f410adba432340c05b35634e1c2cf0a3a6c680ae1c", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /opt/rustwide/workdir/tests/integrations_test.rs [INFO] [stderr] warning: unused import: `async_std::future` [INFO] [stderr] --> src/lib.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | use async_std::future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `IdentifyConfig` [INFO] [stderr] --> src/reader.rs:1:28 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::data::{Address, IdentifyConfig, Msg}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `async_std::future` [INFO] [stderr] --> src/reader.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use async_std::future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BytesMut` [INFO] [stderr] --> src/reader.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stderr] --> src/reader.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::json` [INFO] [stderr] --> src/reader.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use serde_json::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `async_std::future` [INFO] [stderr] --> src/writer.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use async_std::future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Mutex`, `Receiver`, `Sender`, `channel` [INFO] [stderr] --> src/writer.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use async_std::sync::{channel, Arc, Mutex, Receiver, Sender}; [INFO] [stderr] | ^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BytesMut` [INFO] [stderr] --> src/writer.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Deserialize` [INFO] [stderr] --> src/writer.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stderr] --> src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #51443 [INFO] [stderr] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stderr] --> src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 192 | pub trait MsgHandler { [INFO] [stderr] | ---------- this trait cannot be made into an object... [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ ...because method `handler` references the `Self` type in its `where` clause [INFO] [stderr] = help: consider moving `handler` to another trait [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:305:5 [INFO] [stderr] | [INFO] [stderr] 288 | / loop { [INFO] [stderr] 289 | | reader.sub(nsq_topic.as_str(), nsq_channel.as_str()).await?; [INFO] [stderr] 290 | | 'a: loop { [INFO] [stderr] 291 | | dbg!("msg_receiver"); [INFO] [stderr] ... | [INFO] [stderr] 303 | | reader.reconnect().await?; [INFO] [stderr] 304 | | } [INFO] [stderr] | |_____- any code following this expression is unreachable [INFO] [stderr] 305 | Ok(reader) [INFO] [stderr] | ^^^^^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/reader.rs:196:9 [INFO] [stderr] | [INFO] [stderr] 132 | / loop { [INFO] [stderr] 133 | | if let Some(mut raw_data) = raw_receiver.recv().await { [INFO] [stderr] 134 | | all_data.append(&mut raw_data); [INFO] [stderr] 135 | | } [INFO] [stderr] ... | [INFO] [stderr] 194 | | } [INFO] [stderr] 195 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 196 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/reader.rs:120:9 [INFO] [stderr] | [INFO] [stderr] 101 | / loop { [INFO] [stderr] 102 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stderr] 103 | | dbg!("wait for read"); [INFO] [stderr] 104 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stderr] ... | [INFO] [stderr] 118 | | } [INFO] [stderr] 119 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 120 | dbg!("read_data finish"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/writer.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 95 | / loop { [INFO] [stderr] 96 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stderr] 97 | | dbg!("wait for read"); [INFO] [stderr] 98 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stderr] ... | [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 108 | dbg!("read_data finish"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m_interval` [INFO] [stderr] --> src/lib.rs:230:22 [INFO] [stderr] | [INFO] [stderr] 230 | Some(m_interval) => { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_interval` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tmp` [INFO] [stderr] --> src/reader.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tmp` [INFO] [stderr] --> src/writer.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:231:21 [INFO] [stderr] | [INFO] [stderr] 231 | self.nsqlookup(handler.clone()).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stderr] --> src/reader.rs:107:17 [INFO] [stderr] | [INFO] [stderr] 107 | tmpbuf.split_off(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: use `.truncate()` if you don't need the other half [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stderr] --> src/writer.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | tmpbuf.split_off(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: use `.truncate()` if you don't need the other half [INFO] [stderr] [INFO] [stderr] warning: 21 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `async_std::future` [INFO] [stderr] --> src/lib.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | use async_std::future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `IdentifyConfig` [INFO] [stderr] --> src/reader.rs:1:28 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::data::{Address, IdentifyConfig, Msg}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `async_std::future` [INFO] [stderr] --> src/reader.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use async_std::future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BytesMut` [INFO] [stderr] --> src/reader.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stderr] --> src/reader.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::json` [INFO] [stderr] --> src/reader.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use serde_json::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `async_std::future` [INFO] [stderr] --> src/writer.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use async_std::future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Mutex`, `Receiver`, `Sender`, `channel` [INFO] [stderr] --> src/writer.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use async_std::sync::{channel, Arc, Mutex, Receiver, Sender}; [INFO] [stderr] | ^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BytesMut` [INFO] [stderr] --> src/writer.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | use bytes::{BufMut, BytesMut}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Deserialize` [INFO] [stderr] --> src/writer.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stderr] --> src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #51443 [INFO] [stderr] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stderr] --> src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 192 | pub trait MsgHandler { [INFO] [stderr] | ---------- this trait cannot be made into an object... [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ ...because method `handler` references the `Self` type in its `where` clause [INFO] [stderr] = help: consider moving `handler` to another trait [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:305:5 [INFO] [stderr] | [INFO] [stderr] 288 | / loop { [INFO] [stderr] 289 | | reader.sub(nsq_topic.as_str(), nsq_channel.as_str()).await?; [INFO] [stderr] 290 | | 'a: loop { [INFO] [stderr] 291 | | dbg!("msg_receiver"); [INFO] [stderr] ... | [INFO] [stderr] 303 | | reader.reconnect().await?; [INFO] [stderr] 304 | | } [INFO] [stderr] | |_____- any code following this expression is unreachable [INFO] [stderr] 305 | Ok(reader) [INFO] [stderr] | ^^^^^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/reader.rs:196:9 [INFO] [stderr] | [INFO] [stderr] 132 | / loop { [INFO] [stderr] 133 | | if let Some(mut raw_data) = raw_receiver.recv().await { [INFO] [stderr] 134 | | all_data.append(&mut raw_data); [INFO] [stderr] 135 | | } [INFO] [stderr] ... | [INFO] [stderr] 194 | | } [INFO] [stderr] 195 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 196 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/reader.rs:120:9 [INFO] [stderr] | [INFO] [stderr] 101 | / loop { [INFO] [stderr] 102 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stderr] 103 | | dbg!("wait for read"); [INFO] [stderr] 104 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stderr] ... | [INFO] [stderr] 118 | | } [INFO] [stderr] 119 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 120 | dbg!("read_data finish"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/writer.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 95 | / loop { [INFO] [stderr] 96 | | let mut tmpbuf = vec![0u8; 1024]; [INFO] [stderr] 97 | | dbg!("wait for read"); [INFO] [stderr] 98 | | let n = reader.read(&mut tmpbuf).await?; [INFO] [stderr] ... | [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 108 | dbg!("read_data finish"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m_interval` [INFO] [stderr] --> src/lib.rs:230:22 [INFO] [stderr] | [INFO] [stderr] 230 | Some(m_interval) => { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_interval` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tmp` [INFO] [stderr] --> src/reader.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tmp` [INFO] [stderr] --> src/writer.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let tmp = writer.write_all(" V2".as_bytes()).await?; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_tmp` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:231:21 [INFO] [stderr] | [INFO] [stderr] 231 | self.nsqlookup(handler.clone()).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stderr] --> src/reader.rs:107:17 [INFO] [stderr] | [INFO] [stderr] 107 | tmpbuf.split_off(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: use `.truncate()` if you don't need the other half [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Vec::::split_off` that must be used [INFO] [stderr] --> src/writer.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | tmpbuf.split_off(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: use `.truncate()` if you don't need the other half [INFO] [stderr] [INFO] [stderr] warning: 21 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #51443 [INFO] [stderr] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/integrations_test.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut reader = subscribe( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> tests/integrations_test.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 88 | / loop { [INFO] [stderr] 89 | | let tt = TestMsg { [INFO] [stderr] 90 | | name: "ss".to_string(), [INFO] [stderr] 91 | | }; [INFO] [stderr] ... | [INFO] [stderr] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____- any code following this expression is unreachable [INFO] [stderr] 109 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> tests/integrations_test.rs:37:15 [INFO] [stderr] | [INFO] [stderr] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reader` [INFO] [stderr] --> tests/integrations_test.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut reader = subscribe( [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_reader` [INFO] [stderr] --> tests/integrations_test.rs:44:10 [INFO] [stderr] | [INFO] [stderr] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_writer` [INFO] [stderr] --> tests/integrations_test.rs:79:10 [INFO] [stderr] | [INFO] [stderr] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/integrations_test.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | dbg!(res); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 8 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #51443 [INFO] [stderr] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/integrations_test.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut reader = subscribe( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> tests/integrations_test.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 88 | / loop { [INFO] [stderr] 89 | | let tt = TestMsg { [INFO] [stderr] 90 | | name: "ss".to_string(), [INFO] [stderr] 91 | | }; [INFO] [stderr] ... | [INFO] [stderr] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____- any code following this expression is unreachable [INFO] [stderr] 109 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> tests/integrations_test.rs:37:15 [INFO] [stderr] | [INFO] [stderr] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reader` [INFO] [stderr] --> tests/integrations_test.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut reader = subscribe( [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_reader` [INFO] [stderr] --> tests/integrations_test.rs:44:10 [INFO] [stderr] | [INFO] [stderr] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_writer` [INFO] [stderr] --> tests/integrations_test.rs:79:10 [INFO] [stderr] | [INFO] [stderr] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/integrations_test.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | dbg!(res); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 8 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: the trait `MsgHandler` cannot be made into an object [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(where_clauses_object_safety)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #51443 [INFO] [stderr] note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:193:14 [INFO] [stderr] | [INFO] [stderr] 193 | async fn handler(&self, msg: Msg) -> Option { [INFO] [stderr] | ^^^^^^^ the trait cannot be made into an object because method `handler` references the `Self` type in its `where` clause [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/integrations_test.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut reader = subscribe( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> tests/integrations_test.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 88 | / loop { [INFO] [stderr] 89 | | let tt = TestMsg { [INFO] [stderr] 90 | | name: "ss".to_string(), [INFO] [stderr] 91 | | }; [INFO] [stderr] ... | [INFO] [stderr] 107 | | task::sleep(Duration::from_secs(1)).await; [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____- any code following this expression is unreachable [INFO] [stderr] 109 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> tests/integrations_test.rs:37:15 [INFO] [stderr] | [INFO] [stderr] 37 | if let Ok(res) = msg.req(1000).await { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reader` [INFO] [stderr] --> tests/integrations_test.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut reader = subscribe( [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_reader` [INFO] [stderr] --> tests/integrations_test.rs:44:10 [INFO] [stderr] | [INFO] [stderr] 44 | async fn test_reader() -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_writer` [INFO] [stderr] --> tests/integrations_test.rs:79:10 [INFO] [stderr] | [INFO] [stderr] 79 | async fn test_writer() -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/integrations_test.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | dbg!(res); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 8 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/asyncnsq-ed84e6b6e4f6cadc [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/integrations_test-bc8b16cb0dc628d6 [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/integrations_test-10f4cbcae504fa12 [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/publish_test-ebbc2ddcbf24f709 [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_publish ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- test_publish stdout ---- [INFO] [stdout] [tests/publish_test.rs:11] "test_publish" = "test_publish" [INFO] [stdout] thread 'test_publish' panicked at 'attempted to zero-initialize type `crossbeam_channel::flavors::list::Block>`, which is invalid', /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/mem/mod.rs:623:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55e14ea43fb0 - std::backtrace_rs::backtrace::libunwind::trace::h95fc93571932622e [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5 [INFO] [stdout] 1: 0x55e14ea43fb0 - std::backtrace_rs::backtrace::trace_unsynchronized::h4d0b90afc33151fd [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x55e14ea43fb0 - std::sys_common::backtrace::_print_fmt::h93d302d001a3bf01 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x55e14ea43fb0 - ::fmt::h7881e3a580134f9a [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55e14ea6881c - core::fmt::write::h1857a60b204f1b6a [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/fmt/mod.rs:1078:17 [INFO] [stdout] 5: 0x55e14ea3cf92 - std::io::Write::write_fmt::hd17811b9a5dec54b [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/io/mod.rs:1519:15 [INFO] [stdout] 6: 0x55e14ea46835 - std::sys_common::backtrace::_print::h3e3f9fed81bc11e9 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x55e14ea46835 - std::sys_common::backtrace::print::hd22ac23fed5071c8 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x55e14ea46835 - std::panicking::default_hook::{{closure}}::h1647bdcf68060e17 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:208:50 [INFO] [stdout] 9: 0x55e14ea463c2 - std::panicking::default_hook::hb08853b392b9404b [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:222:9 [INFO] [stdout] 10: 0x55e14ea46fd1 - std::panicking::rust_panic_with_hook::h3624ee29da369ede [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:591:17 [INFO] [stdout] 11: 0x55e14ea46ae7 - std::panicking::begin_panic_handler::{{closure}}::hefcfcedcde6bb6d9 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:495:13 [INFO] [stdout] 12: 0x55e14ea4446c - std::sys_common::backtrace::__rust_end_short_backtrace::heb130cec93caa706 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 13: 0x55e14ea46a79 - rust_begin_unwind [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:493:5 [INFO] [stdout] 14: 0x55e14ea671a1 - core::panicking::panic_fmt::hb15d6f55e8472f62 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/panicking.rs:92:14 [INFO] [stdout] 15: 0x55e14ea670ed - core::panicking::panic::h5d1c61fed2502a5f [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/panicking.rs:50:5 [INFO] [stdout] 16: 0x55e14e9c3fb0 - core::mem::zeroed::h05df57b04d33d6f5 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/mem/mod.rs:623:9 [INFO] [stdout] 17: 0x55e14e9c3fb0 - crossbeam_channel::flavors::list::Block::new::hfd6c58a4cdb4b9c2 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-channel-0.4.0/src/flavors/list.rs:75:18 [INFO] [stdout] 18: 0x55e14e9c4cae - crossbeam_channel::flavors::list::Channel::start_send::h98b534b43fb46ddc [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-channel-0.4.0/src/flavors/list.rs:223:50 [INFO] [stdout] 19: 0x55e14e9c5afb - crossbeam_channel::flavors::list::Channel::send::h2a3d40e7ba60b89d [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-channel-0.4.0/src/flavors/list.rs:413:17 [INFO] [stdout] 20: 0x55e14e9bd4b7 - crossbeam_channel::channel::Sender::send::h56472e9bab0f3cac [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-channel-0.4.0/src/channel.rs:387:41 [INFO] [stdout] 21: 0x55e14e925847 - async_std::task::spawn_blocking::spawn_blocking::{{closure}}::h6a85d09f37bc74da [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/spawn_blocking.rs:45:27 [INFO] [stdout] 22: 0x55e14e92254e - async_task::raw::RawTask::schedule::h9590d2def572c208 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-task-1.0.0/src/raw.rs:369:9 [INFO] [stdout] 23: 0x55e14e9a747a - async_task::task::Task::schedule::h89271d220aaa03be [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-task-1.0.0/src/task.rs:104:13 [INFO] [stdout] 24: 0x55e14e925623 - async_std::task::spawn_blocking::spawn_blocking::he446f40342188cd1 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/spawn_blocking.rs:47:5 [INFO] [stdout] 25: 0x55e14e9327e4 - async_std::net::tcp::stream::TcpStream::connect::{{closure}}::he1101f5554ef3e76 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/net/tcp/stream.rs:80:23 [INFO] [stdout] 26: 0x55e14e9349ac - as core::future::future::Future>::poll::hd2faaa7f0ec45f5d [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 27: 0x55e14e924e43 - asyncnsq::create_writer::{{closure}}::h3eb1d95ac45412ec [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:335:22 [INFO] [stdout] 28: 0x55e14e934792 - as core::future::future::Future>::poll::h9dbef30b1930a5d6 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 29: 0x55e14e929d27 - publish_test::test_publish::{{closure}}::h3772146fd9dabdb1 [INFO] [stdout] at /opt/rustwide/workdir/tests/publish_test.rs:12:26 [INFO] [stdout] 30: 0x55e14e93446f - as core::future::future::Future>::poll::h2dbf8518c29991d2 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 31: 0x55e14e92835e - async_std::task::block_on::block_on::{{closure}}::hf6c7e720b22f616c [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/block_on.rs:69:9 [INFO] [stdout] 32: 0x55e14e93436f - as core::future::future::Future>::poll::h25ccad7fa3ee03b4 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 33: 0x55e14e927aaf - async_std::task::block_on::run::{{closure}}::h19ab08d77ce50829 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/block_on.rs:130:37 [INFO] [stdout] 34: 0x55e14e93618a - std::thread::local::LocalKey::try_with::h35706a0cb1ddbac1 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/thread/local.rs:272:16 [INFO] [stdout] 35: 0x55e14e935ea3 - std::thread::local::LocalKey::with::h12358be706976cb8 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/thread/local.rs:248:9 [INFO] [stdout] 36: 0x55e14e92786e - async_std::task::block_on::run::he54a6c1398f69f27 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/block_on.rs:119:5 [INFO] [stdout] 37: 0x55e14e92823b - async_std::task::block_on::block_on::{{closure}}::hae437e98e9046717 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/block_on.rs:73:42 [INFO] [stdout] 38: 0x55e14e923dc0 - async_std::task::task::Task::set_current::{{closure}}::ha960ea75a32dd615 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/task.rs:129:13 [INFO] [stdout] 39: 0x55e14e9368d4 - std::thread::local::LocalKey::try_with::hbfa015325b5dd531 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/thread/local.rs:272:16 [INFO] [stdout] 40: 0x55e14e935f53 - std::thread::local::LocalKey::with::hb7282733902ea788 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/thread/local.rs:248:9 [INFO] [stdout] 41: 0x55e14e923c8f - async_std::task::task::Task::set_current::hd2f45837be2ccb38 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/task.rs:124:9 [INFO] [stdout] 42: 0x55e14e92811d - async_std::task::block_on::block_on::h9be05dad3e67e5cb [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/async-std-1.4.0/src/task/block_on.rs:73:14 [INFO] [stdout] 43: 0x55e14e92991f - publish_test::test_publish::h0e09dc5d3ae100fb [INFO] [stdout] at /opt/rustwide/workdir/tests/publish_test.rs:10:5 [INFO] [stdout] 44: 0x55e14e92984e - publish_test::test_publish::{{closure}}::hbf8e6fd2bf4504e1 [INFO] [stdout] at /opt/rustwide/workdir/tests/publish_test.rs:8:1 [INFO] [stdout] 45: 0x55e14e930eae - core::ops::function::FnOnce::call_once::h1ccdaa2b8e372a51 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 46: 0x55e14e95edb3 - core::ops::function::FnOnce::call_once::h72b3efc134abec04 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 47: 0x55e14e95edb3 - test::__rust_begin_short_backtrace::hf76173a3f44f554b [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/test/src/lib.rs:516:5 [INFO] [stdout] 48: 0x55e14e95d4a8 - as core::ops::function::FnOnce>::call_once::h49f5b686efed1e06 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/alloc/src/boxed.rs:1318:9 [INFO] [stdout] 49: 0x55e14e95d4a8 - as core::ops::function::FnOnce<()>>::call_once::h4879f836ca9aaead [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panic.rs:322:9 [INFO] [stdout] 50: 0x55e14e95d4a8 - std::panicking::try::do_call::h9655796ce3021b6c [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:379:40 [INFO] [stdout] 51: 0x55e14e95d4a8 - std::panicking::try::h346508ed448399f4 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:343:19 [INFO] [stdout] 52: 0x55e14e95d4a8 - std::panic::catch_unwind::h00e84f4e9c3caaa0 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panic.rs:396:14 [INFO] [stdout] 53: 0x55e14e95d4a8 - test::run_test_in_process::hc80321f825c30106 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/test/src/lib.rs:538:18 [INFO] [stdout] 54: 0x55e14e95d4a8 - test::run_test::run_test_inner::{{closure}}::h89c217441620999f [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/test/src/lib.rs:449:39 [INFO] [stdout] 55: 0x55e14e937a96 - std::sys_common::backtrace::__rust_begin_short_backtrace::h3852ec0877008db6 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 56: 0x55e14e93c25d - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h7c7dfff4b938ae67 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/thread/mod.rs:474:17 [INFO] [stdout] 57: 0x55e14e93c25d - as core::ops::function::FnOnce<()>>::call_once::h8db0dd15c072a403 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panic.rs:322:9 [INFO] [stdout] 58: 0x55e14e93c25d - std::panicking::try::do_call::haad8639857ae1187 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:379:40 [INFO] [stdout] 59: 0x55e14e93c25d - std::panicking::try::h61de115e9dce60f6 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panicking.rs:343:19 [INFO] [stdout] 60: 0x55e14e93c25d - std::panic::catch_unwind::h50601fd82666a838 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/panic.rs:396:14 [INFO] [stdout] 61: 0x55e14e93c25d - std::thread::Builder::spawn_unchecked::{{closure}}::hac267391ef9d21bd [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/thread/mod.rs:473:30 [INFO] [stdout] 62: 0x55e14e93c25d - core::ops::function::FnOnce::call_once{{vtable.shim}}::heb15d2d9c42706b7 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 63: 0x55e14ea4d1ba - as core::ops::function::FnOnce>::call_once::h5446ed3fdb82006e [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/alloc/src/boxed.rs:1318:9 [INFO] [stdout] 64: 0x55e14ea4d1ba - as core::ops::function::FnOnce>::call_once::h62a21a889329a3f2 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/alloc/src/boxed.rs:1318:9 [INFO] [stdout] 65: 0x55e14ea4d1ba - std::sys::unix::thread::Thread::new::thread_start::h62402416daf174b6 [INFO] [stdout] at /rustc/eafdee2dfae8c2233b74f98b123308be7ccefcc6/library/std/src/sys/unix/thread.rs:71:17 [INFO] [stdout] 66: 0x7f34b349f609 - start_thread [INFO] [stdout] 67: 0x7f34b326f293 - clone [INFO] [stdout] 68: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] test_publish [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--test publish_test' [INFO] running `Command { std: "docker" "inspect" "79a79c067f15e711503633f410adba432340c05b35634e1c2cf0a3a6c680ae1c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "79a79c067f15e711503633f410adba432340c05b35634e1c2cf0a3a6c680ae1c", kill_on_drop: false }` [INFO] [stdout] 79a79c067f15e711503633f410adba432340c05b35634e1c2cf0a3a6c680ae1c