[INFO] fetching crate asyncnsq 0.1.0... [INFO] testing asyncnsq-0.1.0 against try#ecabaf78506b7a4668d42dc20268c086b93f0fad for pr-87041 [INFO] extracting crate asyncnsq 0.1.0 into /workspace/builds/worker-12/source [INFO] validating manifest of crates.io crate asyncnsq 0.1.0 on toolchain ecabaf78506b7a4668d42dc20268c086b93f0fad [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", 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-12/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" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /workspace/builds/worker-12/source/tests/integrations_test.rs [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded async-trait v0.1.21 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eed5fdb8686f79a77dfd21eb89e8850a7f5eb83b24af2e000021943e9501d5b5 [INFO] running `Command { std: "docker" "start" "-a" "eed5fdb8686f79a77dfd21eb89e8850a7f5eb83b24af2e000021943e9501d5b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eed5fdb8686f79a77dfd21eb89e8850a7f5eb83b24af2e000021943e9501d5b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eed5fdb8686f79a77dfd21eb89e8850a7f5eb83b24af2e000021943e9501d5b5", kill_on_drop: false }` [INFO] [stdout] eed5fdb8686f79a77dfd21eb89e8850a7f5eb83b24af2e000021943e9501d5b5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 32339c011c2cc6f713bb00c33382c19c87c65f3e9a237301fac38f3f6929d4c5 [INFO] running `Command { std: "docker" "start" "-a" "32339c011c2cc6f713bb00c33382c19c87c65f3e9a237301fac38f3f6929d4c5", 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 cc v1.0.48 [INFO] [stderr] Compiling pkg-config v0.3.17 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling syn v1.0.8 [INFO] [stderr] Compiling futures-core-preview v0.3.0-alpha.19 [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 pin-utils v0.1.0-alpha.4 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling serde v1.0.103 [INFO] [stderr] Compiling smallvec v1.0.0 [INFO] [stderr] Compiling curl v0.4.25 [INFO] [stderr] Compiling isahc v0.7.6 [INFO] [stderr] Compiling pin-project-lite v0.1.1 [INFO] [stderr] Compiling once_cell v1.2.0 [INFO] [stderr] Compiling futures-timer v2.0.2 [INFO] [stderr] Compiling futures-io v0.3.1 [INFO] [stderr] Compiling futures-core v0.3.1 [INFO] [stderr] Compiling crossbeam-utils v0.7.0 [INFO] [stderr] Compiling crossbeam-epoch v0.8.0 [INFO] [stderr] Compiling lock_api v0.3.2 [INFO] [stderr] Compiling memoffset v0.5.3 [INFO] [stderr] Compiling num_cpus v1.11.1 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling socket2 v0.3.11 [INFO] [stderr] Compiling unicode-normalization v0.1.11 [INFO] [stderr] Compiling futures-channel-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling http v0.1.21 [INFO] [stderr] Compiling smallvec v0.6.13 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling crossbeam-channel v0.3.9 [INFO] [stderr] Compiling async-task v1.0.0 [INFO] [stderr] Compiling sluice v0.4.2 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling tokio-io v0.1.12 [INFO] [stderr] Compiling mio v0.6.20 [INFO] [stderr] Compiling kv-log-macro v1.0.4 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling crossbeam-channel v0.4.0 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling libz-sys v1.0.25 [INFO] [stderr] Compiling openssl-sys v0.9.53 [INFO] [stderr] Compiling libnghttp2-sys v0.1.2 [INFO] [stderr] Compiling curl-sys v0.4.24 [INFO] [stderr] Compiling futures-util-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling mime_guess v2.0.1 [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_urlencoded v0.6.1 [INFO] [stderr] Compiling serde_json v1.0.42 [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 the macro `dbg` (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 the macro `dbg` (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 `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:13 [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 `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 the macro `dbg` (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 43.61s [INFO] running `Command { std: "docker" "inspect" "32339c011c2cc6f713bb00c33382c19c87c65f3e9a237301fac38f3f6929d4c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32339c011c2cc6f713bb00c33382c19c87c65f3e9a237301fac38f3f6929d4c5", kill_on_drop: false }` [INFO] [stdout] 32339c011c2cc6f713bb00c33382c19c87c65f3e9a237301fac38f3f6929d4c5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9e3726b8520de0db5ff18b7125846ea75321bc38f2ce5fadb191de97ffe553dc [INFO] running `Command { std: "docker" "start" "-a" "9e3726b8520de0db5ff18b7125846ea75321bc38f2ce5fadb191de97ffe553dc", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /opt/rustwide/workdir/tests/integrations_test.rs [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 the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling asyncnsq v0.1.0 (/opt/rustwide/workdir) [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 the macro `dbg` (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 `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:13 [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 `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 the macro `dbg` (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:13 [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 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 `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 the macro `dbg` (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] --> /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: 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] --> 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: 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: 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:13 [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: 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 the macro `dbg` (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: 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 `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 the macro `dbg` (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 the macro `dbg` (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: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `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] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4.03s [INFO] running `Command { std: "docker" "inspect" "9e3726b8520de0db5ff18b7125846ea75321bc38f2ce5fadb191de97ffe553dc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e3726b8520de0db5ff18b7125846ea75321bc38f2ce5fadb191de97ffe553dc", kill_on_drop: false }` [INFO] [stdout] 9e3726b8520de0db5ff18b7125846ea75321bc38f2ce5fadb191de97ffe553dc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1eecee425d4f9241739e73f80bbd92e025ff77e72953880736e81f919f0c2404 [INFO] running `Command { std: "docker" "start" "-a" "1eecee425d4f9241739e73f80bbd92e025ff77e72953880736e81f919f0c2404", 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 the macro `dbg` (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 the macro `dbg` (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 `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 the macro `dbg` (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 the macro `dbg` (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 `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:13 [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 `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 the macro `dbg` (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:13 [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 `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 the macro `dbg` (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:13 [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 `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 the macro `dbg` (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.12s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/asyncnsq-d88d0839ea6448d6) [INFO] [stdout] running 0 tests [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/integrations_test-1af14854e1b9388e) [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [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; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/integrations_test.rs (/opt/rustwide/target/debug/deps/integrations_test-89acebb2e7bd2d77) [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; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/publish_test.rs (/opt/rustwide/target/debug/deps/publish_test-7192b85a689e5671) [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/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/mem/mod.rs:625:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55f000cf6d90 - std::backtrace_rs::backtrace::libunwind::trace::h706b838f5bbd876b [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5 [INFO] [stdout] 1: 0x55f000cf6d90 - std::backtrace_rs::backtrace::trace_unsynchronized::hc15f29ae7822b7b8 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x55f000cf6d90 - std::sys_common::backtrace::_print_fmt::h7c580c971f91926c [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x55f000cf6d90 - ::fmt::h2a772198c4032452 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55f000d19ecc - core::fmt::write::h9a6d9c74526a6c1b [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/fmt/mod.rs:1115:17 [INFO] [stdout] 5: 0x55f000cf0a95 - std::io::Write::write_fmt::h583dff5009d01a9f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/io/mod.rs:1663:15 [INFO] [stdout] 6: 0x55f000cf8f4b - std::sys_common::backtrace::_print::h5b3c171e6f864ae4 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x55f000cf8f4b - std::sys_common::backtrace::print::h93b9e9ed2a98e611 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x55f000cf8f4b - std::panicking::default_hook::{{closure}}::hd8da92bb68d520c5 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:208:50 [INFO] [stdout] 9: 0x55f000cf8a5c - std::panicking::default_hook::hdbc8b2951c5afbab [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:222:9 [INFO] [stdout] 10: 0x55f000cf9614 - std::panicking::rust_panic_with_hook::h8a4c841655926f4e [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:622:17 [INFO] [stdout] 11: 0x55f000cf90c7 - std::panicking::begin_panic_handler::{{closure}}::h471b6bc74904b7b0 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:517:13 [INFO] [stdout] 12: 0x55f000cf728c - std::sys_common::backtrace::__rust_end_short_backtrace::h309f5c707f29932f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 13: 0x55f000cf9059 - rust_begin_unwind [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:515:5 [INFO] [stdout] 14: 0x55f000bdd811 - core::panicking::panic_fmt::hcf5f6d96e1dd7099 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/panicking.rs:92:14 [INFO] [stdout] 15: 0x55f000bdd75d - core::panicking::panic::hd695e3b1d0dd4ef4 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/panicking.rs:50:5 [INFO] [stdout] 16: 0x55f000c7b85a - core::mem::zeroed::he2fc04ea4075843f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/mem/mod.rs:625:9 [INFO] [stdout] 17: 0x55f000c7b85a - crossbeam_channel::flavors::list::Block::new::hc699087c63ac2480 [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: 0x55f000c7c55a - crossbeam_channel::flavors::list::Channel::start_send::ha509f1732f7fb378 [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: 0x55f000c7d2b3 - crossbeam_channel::flavors::list::Channel::send::h06327c8f0b3d2ba3 [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: 0x55f000c79278 - crossbeam_channel::channel::Sender::send::h6398f33194ca828d [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: 0x55f000befbaa - async_std::task::spawn_blocking::spawn_blocking::{{closure}}::hbbe8997371349b4b [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: 0x55f000be0db6 - async_task::raw::RawTask::schedule::h7a5a010fbe4086be [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: 0x55f000c64ac4 - async_task::task::Task::schedule::h0ffcd15aa3fc1abb [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: 0x55f000bef98e - async_std::task::spawn_blocking::spawn_blocking::hd7d2eace95de30b6 [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: 0x55f000bed9ab - async_std::net::tcp::stream::TcpStream::connect::{{closure}}::h727a6d07c979f600 [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: 0x55f000becc81 - as core::future::future::Future>::poll::h5755bbb9e4928804 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 27: 0x55f000bf4238 - asyncnsq::create_writer::{{closure}}::h3fcb9239111f87e6 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:335:22 [INFO] [stdout] 28: 0x55f000bec881 - as core::future::future::Future>::poll::h01e9c5c2c5740ad6 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 29: 0x55f000beb6b2 - publish_test::test_publish::{{closure}}::h3cc7ec6ecb6ba485 [INFO] [stdout] at /opt/rustwide/workdir/tests/publish_test.rs:12:26 [INFO] [stdout] 30: 0x55f000beceb1 - as core::future::future::Future>::poll::h855fa959afdd8d3f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 31: 0x55f000bf94a0 - async_std::task::block_on::block_on::{{closure}}::hecae75956b4a5913 [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: 0x55f000becb61 - as core::future::future::Future>::poll::h52a8ea76c37e48d2 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/future/mod.rs:80:19 [INFO] [stdout] 33: 0x55f000bf8b91 - async_std::task::block_on::run::{{closure}}::hd07213749ae93aaa [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: 0x55f000beec29 - std::thread::local::LocalKey::try_with::h87410543fc01a7f5 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/local.rs:399:16 [INFO] [stdout] 35: 0x55f000bee5c3 - std::thread::local::LocalKey::with::h2ce3ad4c8598a475 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/local.rs:375:9 [INFO] [stdout] 36: 0x55f000bf8901 - async_std::task::block_on::run::h075e435ed1557094 [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: 0x55f000bf92dc - async_std::task::block_on::block_on::{{closure}}::h08b53f05464d397f [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: 0x55f000bf84c9 - async_std::task::task::Task::set_current::{{closure}}::hc4886363d5b66a6e [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: 0x55f000beef0a - std::thread::local::LocalKey::try_with::hbecb96e888ddcaf4 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/local.rs:399:16 [INFO] [stdout] 40: 0x55f000bee679 - std::thread::local::LocalKey::with::hb9467dd47bd2f710 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/local.rs:375:9 [INFO] [stdout] 41: 0x55f000bf83c7 - async_std::task::task::Task::set_current::hc0d8689b6952873b [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: 0x55f000bf922a - async_std::task::block_on::block_on::hd4cfc060ba06712f [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: 0x55f000beb14c - publish_test::test_publish::hc86ebc4824003b58 [INFO] [stdout] at /opt/rustwide/workdir/tests/publish_test.rs:10:5 [INFO] [stdout] 44: 0x55f000beb07e - publish_test::test_publish::{{closure}}::he151d2aa1719d3cd [INFO] [stdout] at /opt/rustwide/workdir/tests/publish_test.rs:8:1 [INFO] [stdout] 45: 0x55f000bf6a3e - core::ops::function::FnOnce::call_once::h3a83097af4001400 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 46: 0x55f000c21b03 - core::ops::function::FnOnce::call_once::h99a97b0ff983bd25 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 47: 0x55f000c21b03 - test::__rust_begin_short_backtrace::h8fe0d26ed1584e50 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:577:5 [INFO] [stdout] 48: 0x55f000c20590 - as core::ops::function::FnOnce>::call_once::he6b90e352f394d8f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/alloc/src/boxed.rs:1572:9 [INFO] [stdout] 49: 0x55f000c20590 - as core::ops::function::FnOnce<()>>::call_once::h1c05475e029700b8 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:347:9 [INFO] [stdout] 50: 0x55f000c20590 - std::panicking::try::do_call::he6de943476ae628a [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:401:40 [INFO] [stdout] 51: 0x55f000c20590 - std::panicking::try::ha21937b8feb06f89 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:365:19 [INFO] [stdout] 52: 0x55f000c20590 - std::panic::catch_unwind::ha79830b3325c9fa6 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:434:14 [INFO] [stdout] 53: 0x55f000c20590 - test::run_test_in_process::h1ab180b83ee2d5b5 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:600:18 [INFO] [stdout] 54: 0x55f000c20590 - test::run_test::run_test_inner::{{closure}}::h8258ffe088f187a1 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:492:39 [INFO] [stdout] 55: 0x55f000bf9b52 - test::run_test::run_test_inner::{{closure}}::hc697b214abd32bc6 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:519:37 [INFO] [stdout] 56: 0x55f000bf9b52 - std::sys_common::backtrace::__rust_begin_short_backtrace::h64de0d3f894854a9 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 57: 0x55f000bfd7a8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h1fd98fc86e533ece [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/mod.rs:476:17 [INFO] [stdout] 58: 0x55f000bfd7a8 - as core::ops::function::FnOnce<()>>::call_once::h4e2a7abf702e4cfd [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:347:9 [INFO] [stdout] 59: 0x55f000bfd7a8 - std::panicking::try::do_call::h4496392321a3c8c0 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:401:40 [INFO] [stdout] 60: 0x55f000bfd7a8 - std::panicking::try::hf1e14258e04e8e9a [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:365:19 [INFO] [stdout] 61: 0x55f000bfd7a8 - std::panic::catch_unwind::hb72c3777cd55642f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:434:14 [INFO] [stdout] 62: 0x55f000bfd7a8 - std::thread::Builder::spawn_unchecked::{{closure}}::h2d7915a5910e148e [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/mod.rs:475:30 [INFO] [stdout] 63: 0x55f000bfd7a8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h83fd2f1ef5be797c [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 64: 0x55f000cfea27 - as core::ops::function::FnOnce>::call_once::ha8b1d5a0092467fc [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/alloc/src/boxed.rs:1572:9 [INFO] [stdout] 65: 0x55f000cfea27 - as core::ops::function::FnOnce>::call_once::h4b9f24ec4e8a879e [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/alloc/src/boxed.rs:1572:9 [INFO] [stdout] 66: 0x55f000cfea27 - std::sys::unix::thread::Thread::new::thread_start::h2a0e98fbc4ab4c32 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys/unix/thread.rs:72:17 [INFO] [stdout] 67: 0x7f33332b9609 - start_thread [INFO] [stdout] 68: 0x7f3333089293 - clone [INFO] [stdout] 69: 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; finished in 0.05s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--test publish_test' [INFO] running `Command { std: "docker" "inspect" "1eecee425d4f9241739e73f80bbd92e025ff77e72953880736e81f919f0c2404", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1eecee425d4f9241739e73f80bbd92e025ff77e72953880736e81f919f0c2404", kill_on_drop: false }` [INFO] [stdout] 1eecee425d4f9241739e73f80bbd92e025ff77e72953880736e81f919f0c2404