[INFO] fetching crate tokio-util 0.7.4... [INFO] testing tokio-util-0.7.4 against try#8dae881ac166f8debe04e17604ebbe2ab47083fd+target=i686-unknown-linux-musl for musl_upgrade_test [INFO] extracting crate tokio-util 0.7.4 into /workspace/builds/worker-6/source [INFO] validating manifest of crates.io crate tokio-util 0.7.4 on toolchain 8dae881ac166f8debe04e17604ebbe2ab47083fd [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8dae881ac166f8debe04e17604ebbe2ab47083fd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate tokio-util 0.7.4 [INFO] finished tweaking crates.io crate tokio-util 0.7.4 [INFO] tweaked toml for crates.io crate tokio-util 0.7.4 written to /workspace/builds/worker-6/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8dae881ac166f8debe04e17604ebbe2ab47083fd" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8dae881ac166f8debe04e17604ebbe2ab47083fd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded futures-test v0.3.25 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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:bb5b0feb4f87116a4ea905b7ff5bf5b85913db05e9f0fbc1abdd3168928d9075" "/opt/rustwide/cargo-home/bin/cargo" "+8dae881ac166f8debe04e17604ebbe2ab47083fd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 45ded8aebc63fa2839b0475dc8595a9b0a02ba99909aaa7fad577b0d4bfa3278 [INFO] running `Command { std: "docker" "start" "-a" "45ded8aebc63fa2839b0475dc8595a9b0a02ba99909aaa7fad577b0d4bfa3278", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "45ded8aebc63fa2839b0475dc8595a9b0a02ba99909aaa7fad577b0d4bfa3278", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "45ded8aebc63fa2839b0475dc8595a9b0a02ba99909aaa7fad577b0d4bfa3278", kill_on_drop: false }` [INFO] [stdout] 45ded8aebc63fa2839b0475dc8595a9b0a02ba99909aaa7fad577b0d4bfa3278 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:bb5b0feb4f87116a4ea905b7ff5bf5b85913db05e9f0fbc1abdd3168928d9075" "/opt/rustwide/cargo-home/bin/cargo" "+8dae881ac166f8debe04e17604ebbe2ab47083fd" "build" "--frozen" "--message-format=json" "--target" "i686-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 6adf66fbaeeae7ffc743cb1e1868029cdc398744989b2260bab12706330622ac [INFO] running `Command { std: "docker" "start" "-a" "6adf66fbaeeae7ffc743cb1e1868029cdc398744989b2260bab12706330622ac", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.137 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling proc-macro2 v1.0.47 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling unicode-ident v1.0.5 [INFO] [stderr] Compiling parking_lot_core v0.9.4 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling syn v1.0.103 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling smallvec v1.10.0 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling futures-core v0.3.25 [INFO] [stderr] Compiling pin-project-lite v0.2.9 [INFO] [stderr] Compiling bytes v1.2.1 [INFO] [stderr] Compiling futures-sink v0.3.25 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Compiling tokio v1.21.2 [INFO] [stderr] Compiling socket2 v0.4.7 [INFO] [stderr] Compiling signal-hook-registry v1.4.0 [INFO] [stderr] Compiling mio v0.8.5 [INFO] [stderr] Compiling num_cpus v1.14.0 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling tokio-macros v1.8.0 [INFO] [stderr] Compiling tokio-util v0.7.4 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 16.10s [INFO] running `Command { std: "docker" "inspect" "6adf66fbaeeae7ffc743cb1e1868029cdc398744989b2260bab12706330622ac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6adf66fbaeeae7ffc743cb1e1868029cdc398744989b2260bab12706330622ac", kill_on_drop: false }` [INFO] [stdout] 6adf66fbaeeae7ffc743cb1e1868029cdc398744989b2260bab12706330622ac [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:bb5b0feb4f87116a4ea905b7ff5bf5b85913db05e9f0fbc1abdd3168928d9075" "/opt/rustwide/cargo-home/bin/cargo" "+8dae881ac166f8debe04e17604ebbe2ab47083fd" "test" "--frozen" "--no-run" "--message-format=json" "--target" "i686-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] e04cc7986c74f399a3e20b63a617df787afe9648b09ae61c46870d5943ddfb19 [INFO] running `Command { std: "docker" "start" "-a" "e04cc7986c74f399a3e20b63a617df787afe9648b09ae61c46870d5943ddfb19", kill_on_drop: false }` [INFO] [stderr] Compiling futures-channel v0.3.25 [INFO] [stderr] Compiling slab v0.4.7 [INFO] [stderr] Compiling futures-task v0.3.25 [INFO] [stderr] Compiling futures-util v0.3.25 [INFO] [stderr] Compiling futures-io v0.3.25 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling futures-macro v0.3.25 [INFO] [stderr] Compiling async-stream-impl v0.3.3 [INFO] [stderr] Compiling pin-project-internal v1.0.12 [INFO] [stderr] Compiling tokio-stream v0.1.11 [INFO] [stderr] Compiling async-stream v0.3.3 [INFO] [stderr] Compiling tokio-test v0.4.2 [INFO] [stderr] Compiling pin-project v1.0.12 [INFO] [stderr] Compiling futures-executor v0.3.25 [INFO] [stderr] Compiling futures-test v0.3.25 [INFO] [stderr] Compiling futures v0.3.25 [INFO] [stderr] Compiling tokio-util v0.7.4 (/opt/rustwide/workdir) [INFO] [stdout] error: run tokio-util tests with `--features full` [INFO] [stdout] --> tests/_require_full.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | compile_error!("run tokio-util tests with `--features full`"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `tokio_util::codec` [INFO] [stdout] --> tests/framed_stream.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio_util::codec::{BytesCodec, FramedRead}; [INFO] [stdout] | ^^^^^ could not find `codec` in `tokio_util` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `tokio_util::codec` [INFO] [stdout] --> tests/codecs.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_util::codec::{AnyDelimiterCodec, BytesCodec, Decoder, Encoder, LinesCodec}; [INFO] [stdout] | ^^^^^ could not find `codec` in `tokio_util` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 2 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0432]: unresolved import `tokio_util::codec` [INFO] [stdout] --> tests/framed_read.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use tokio_util::codec::{Decoder, FramedRead}; [INFO] [stdout] | ^^^^^ could not find `codec` in `tokio_util` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `tokio_util::codec` [INFO] [stdout] --> tests/framed.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio_util::codec::{Decoder, Encoder, Framed, FramedParts}; [INFO] [stdout] | ^^^^^ could not find `codec` in `tokio_util` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 2 previous errors [INFO] [stdout] For more information about this error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `poll_next` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/framed_stream.rs:33:31 [INFO] [stdout] | [INFO] [stdout] 33 | assert_read!(pin!(io).poll_next(cx), b"abcdef".to_vec()); [INFO] [stdout] | ^^^^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `tokio_util::codec` [INFO] [stdout] --> tests/length_delimited.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use tokio_util::codec::*; [INFO] [stdout] | ^^^^^ could not find `codec` in `tokio_util` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `tokio_util::task` [INFO] [stdout] --> tests/spawn_pinned.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use tokio_util::task; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ no `task` in the root [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items instead [INFO] [stdout] | [INFO] [stdout] 7 | use core::task; [INFO] [stdout] | ~~~~~~~~~~~ [INFO] [stdout] 7 | use futures::task; [INFO] [stdout] | ~~~~~~~~~~~~~~ [INFO] [stdout] 7 | use futures_core::task; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] 7 | use futures_test::__private::task; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] and 4 other candidates [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `poll_next` found for struct `Pin<_>` in the current scope [INFO] [stdout] --> tests/framed_stream.rs:34:40 [INFO] [stdout] | [INFO] [stdout] 34 | assert!(assert_ready!(pin!(io).poll_next(cx)).unwrap().is_err()); [INFO] [stdout] | ^^^^^^^^^ method not found in `Pin<_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `poll_next` found for struct `Pin<_>` in the current scope [INFO] [stdout] --> tests/framed_stream.rs:35:40 [INFO] [stdout] | [INFO] [stdout] 35 | assert!(assert_ready!(pin!(io).poll_next(cx)).is_none()); [INFO] [stdout] | ^^^^^^^^^ method not found in `Pin<_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `poll_next` found for struct `Pin<_>` in the current scope [INFO] [stdout] --> tests/framed_stream.rs:36:31 [INFO] [stdout] | [INFO] [stdout] 36 | assert_read!(pin!(io).poll_next(cx), b"more data".to_vec()); [INFO] [stdout] | ^^^^^^^^^ method not found in `Pin<_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures_core::stream::Stream` [INFO] [stdout] --> tests/framed_stream.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use futures_core::stream::Stream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 2 previous errors [INFO] [stdout] error: aborting due to 5 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 6 previous errors; 1 warning emitted [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:76:23 [INFO] [stdout] | [INFO] [stdout] 76 | let io = Box::pin(FramedRead::new(mock!(), LengthDelimitedCodec::new())); [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:76:48 [INFO] [stdout] | [INFO] [stdout] 76 | let io = Box::pin(FramedRead::new(mock!(), LengthDelimitedCodec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:84:14 [INFO] [stdout] | [INFO] [stdout] 84 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:134:14 [INFO] [stdout] | [INFO] [stdout] 134 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:150:14 [INFO] [stdout] | [INFO] [stdout] 150 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:166:14 [INFO] [stdout] | [INFO] [stdout] 166 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:186:14 [INFO] [stdout] | [INFO] [stdout] 186 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:208:14 [INFO] [stdout] | [INFO] [stdout] 208 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:221:9 [INFO] [stdout] | [INFO] [stdout] 221 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:238:14 [INFO] [stdout] | [INFO] [stdout] 238 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:242:9 [INFO] [stdout] | [INFO] [stdout] 242 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:251:14 [INFO] [stdout] | [INFO] [stdout] 251 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedRead` [INFO] [stdout] --> tests/length_delimited.rs:268:14 [INFO] [stdout] | [INFO] [stdout] 268 | let io = FramedRead::new( [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `FramedRead` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 2 previous errors [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 2 previous errors [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedWrite` [INFO] [stdout] --> tests/length_delimited.rs:436:14 [INFO] [stdout] | [INFO] [stdout] 436 | let io = FramedWrite::new(mock!(), LengthDelimitedCodec::new()); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `FramedWrite` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:436:40 [INFO] [stdout] | [INFO] [stdout] 436 | let io = FramedWrite::new(mock!(), LengthDelimitedCodec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedWrite` [INFO] [stdout] --> tests/length_delimited.rs:446:14 [INFO] [stdout] | [INFO] [stdout] 446 | let io = FramedWrite::new( [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `FramedWrite` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:452:9 [INFO] [stdout] | [INFO] [stdout] 452 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedWrite` [INFO] [stdout] --> tests/length_delimited.rs:466:14 [INFO] [stdout] | [INFO] [stdout] 466 | let io = FramedWrite::new( [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `FramedWrite` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:476:9 [INFO] [stdout] | [INFO] [stdout] 476 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedWrite` [INFO] [stdout] --> tests/length_delimited.rs:497:14 [INFO] [stdout] | [INFO] [stdout] 497 | let io = FramedWrite::new( [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `FramedWrite` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:509:9 [INFO] [stdout] | [INFO] [stdout] 509 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FramedWrite` [INFO] [stdout] --> tests/length_delimited.rs:534:14 [INFO] [stdout] | [INFO] [stdout] 534 | let io = FramedWrite::new( [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `FramedWrite` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] --> tests/length_delimited.rs:543:9 [INFO] [stdout] | [INFO] [stdout] 543 | LengthDelimitedCodec::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ use of undeclared type `LengthDelimitedCodec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:98:32 [INFO] [stdout] | [INFO] [stdout] 98 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 98 - let io = length_delimited::Builder::new() [INFO] [stdout] 98 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:116:32 [INFO] [stdout] | [INFO] [stdout] 116 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 116 - let io = length_delimited::Builder::new() [INFO] [stdout] 116 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:286:32 [INFO] [stdout] | [INFO] [stdout] 286 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 286 - let io = length_delimited::Builder::new() [INFO] [stdout] 286 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:298:32 [INFO] [stdout] | [INFO] [stdout] 298 | let io = length_delimited::Builder::new().new_read(mock! { [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 298 - let io = length_delimited::Builder::new().new_read(mock! { [INFO] [stdout] 298 + let io = Builder::new().new_read(mock! { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:311:32 [INFO] [stdout] | [INFO] [stdout] 311 | let io = length_delimited::Builder::new().new_read(mock! { [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 311 - let io = length_delimited::Builder::new().new_read(mock! { [INFO] [stdout] 311 + let io = Builder::new().new_read(mock! { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:327:32 [INFO] [stdout] | [INFO] [stdout] 327 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 327 - let io = length_delimited::Builder::new() [INFO] [stdout] 327 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:340:32 [INFO] [stdout] | [INFO] [stdout] 340 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 340 - let io = length_delimited::Builder::new() [INFO] [stdout] 340 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:359:32 [INFO] [stdout] | [INFO] [stdout] 359 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 359 - let io = length_delimited::Builder::new() [INFO] [stdout] 359 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:380:32 [INFO] [stdout] | [INFO] [stdout] 380 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 380 - let io = length_delimited::Builder::new() [INFO] [stdout] 380 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:401:32 [INFO] [stdout] | [INFO] [stdout] 401 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 401 - let io = length_delimited::Builder::new() [INFO] [stdout] 401 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:417:32 [INFO] [stdout] | [INFO] [stdout] 417 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 417 - let io = length_delimited::Builder::new() [INFO] [stdout] 417 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:561:32 [INFO] [stdout] | [INFO] [stdout] 561 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 561 - let io = length_delimited::Builder::new() [INFO] [stdout] 561 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:581:32 [INFO] [stdout] | [INFO] [stdout] 581 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 581 - let io = length_delimited::Builder::new() [INFO] [stdout] 581 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:602:32 [INFO] [stdout] | [INFO] [stdout] 602 | let io = length_delimited::Builder::new() [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 602 - let io = length_delimited::Builder::new() [INFO] [stdout] 602 + let io = Builder::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:617:32 [INFO] [stdout] | [INFO] [stdout] 617 | let io = length_delimited::Builder::new().new_write(mock! { [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 617 - let io = length_delimited::Builder::new().new_write(mock! { [INFO] [stdout] 617 + let io = Builder::new().new_write(mock! { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:640:32 [INFO] [stdout] | [INFO] [stdout] 640 | let io = length_delimited::Builder::new().new_write(mock! { [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 640 - let io = length_delimited::Builder::new().new_write(mock! { [INFO] [stdout] 640 + let io = Builder::new().new_write(mock! { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:666:32 [INFO] [stdout] | [INFO] [stdout] 666 | let io = length_delimited::Builder::new().new_write(mock! {}); [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 666 - let io = length_delimited::Builder::new().new_write(mock! {}); [INFO] [stdout] 666 + let io = Builder::new().new_write(mock! {}); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `length_delimited` [INFO] [stdout] --> tests/length_delimited.rs:682:39 [INFO] [stdout] | [INFO] [stdout] 682 | let mut codec = length_delimited::Builder::new().new_codec(); [INFO] [stdout] | ^^^^^^^ not found in `length_delimited` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::runtime::Builder; [INFO] [stdout] | [INFO] [stdout] 3 | use tokio_test::io::Builder; [INFO] [stdout] | [INFO] [stdout] help: if you import `Builder`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 682 - let mut codec = length_delimited::Builder::new().new_codec(); [INFO] [stdout] 682 + let mut codec = Builder::new().new_codec(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut Pin>>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:64:41 [INFO] [stdout] | [INFO] [stdout] 64 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut Pin>>` [INFO] [stdout] ... [INFO] [stdout] 79 | assert_done!(io); [INFO] [stdout] | ---------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_done` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 92 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 105 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 123 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 142 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 160 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 178 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 199 | assert_next_pending!(io); [INFO] [stdout] | ------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_pending` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 225 | assert_next_pending!(io); [INFO] [stdout] | ------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_pending` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:52:49 [INFO] [stdout] | [INFO] [stdout] 52 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 246 | assert_next_err!(io); [INFO] [stdout] | -------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_err` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 261 | assert_next_pending!(io); [INFO] [stdout] | ------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_pending` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 279 | assert_next_pending!(io); [INFO] [stdout] | ------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_pending` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:52:49 [INFO] [stdout] | [INFO] [stdout] 52 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 293 | assert_next_err!(io); [INFO] [stdout] | -------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_err` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 304 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:41:49 [INFO] [stdout] | [INFO] [stdout] 41 | task::spawn(()).enter(|cx, _| match $io.as_mut().poll_next(cx) { [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 319 | assert_next_pending!(io); [INFO] [stdout] | ------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_pending` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 334 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 348 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 369 | assert_next_eq!(io, b"xx\x00\x09abcdefghi"); [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 390 | assert_next_eq!(io, b"Hello world"); [INFO] [stdout] | ----------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let res = assert_ready!($io.as_mut().poll_next(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] ... [INFO] [stdout] 409 | assert_next_eq!(io, b"abcdefghi"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] = note: this error originates in the macro `assert_next_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:427:29 [INFO] [stdout] | [INFO] [stdout] 427 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `poll_flush` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:440:29 [INFO] [stdout] | [INFO] [stdout] 440 | assert_ready_ok!(io.poll_flush(cx)); [INFO] [stdout] | ^^^^^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:457:29 [INFO] [stdout] | [INFO] [stdout] 457 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:481:29 [INFO] [stdout] | [INFO] [stdout] 481 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:514:29 [INFO] [stdout] | [INFO] [stdout] 514 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:548:29 [INFO] [stdout] | [INFO] [stdout] 548 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:571:29 [INFO] [stdout] | [INFO] [stdout] 571 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:591:29 [INFO] [stdout] | [INFO] [stdout] 591 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:608:29 [INFO] [stdout] | [INFO] [stdout] 608 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:625:29 [INFO] [stdout] | [INFO] [stdout] 625 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:650:29 [INFO] [stdout] | [INFO] [stdout] 650 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_mut` found for struct `Pin<&mut _>` in the current scope [INFO] [stdout] --> tests/length_delimited.rs:670:29 [INFO] [stdout] | [INFO] [stdout] 670 | assert_ready_ok!(io.as_mut().poll_ready(cx)); [INFO] [stdout] | ^^^^^^ method not found in `Pin<&mut _>` [INFO] [stdout] | [INFO] [stdout] = note: the method was found for [INFO] [stdout] - `Pin

` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stream` [INFO] [stdout] --> tests/length_delimited.rs:11:30 [INFO] [stdout] | [INFO] [stdout] 11 | use futures::{pin_mut, Sink, Stream}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Sink` [INFO] [stdout] --> tests/length_delimited.rs:11:24 [INFO] [stdout] | [INFO] [stdout] 11 | use futures::{pin_mut, Sink, Stream}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 81 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `tokio-util` due to 82 previous errors; 2 warnings emitted [INFO] running `Command { std: "docker" "inspect" "e04cc7986c74f399a3e20b63a617df787afe9648b09ae61c46870d5943ddfb19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e04cc7986c74f399a3e20b63a617df787afe9648b09ae61c46870d5943ddfb19", kill_on_drop: false }` [INFO] [stdout] e04cc7986c74f399a3e20b63a617df787afe9648b09ae61c46870d5943ddfb19