[INFO] fetching crate tcp_ip 0.1.10...
[INFO] testing tcp_ip-0.1.10 against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] extracting crate tcp_ip 0.1.10 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate tcp_ip 0.1.10
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate tcp_ip 0.1.10
[INFO] tweaked toml for crates.io crate tcp_ip 0.1.10 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate tcp_ip 0.1.10 on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tcp_ip 0.1.10 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8d834945febc56d761eea0fbf3ac8c53159cfefbb1bf93ee64ce21bdfa2c2b60
[INFO] running `Command { std: "docker" "start" "-a" "8d834945febc56d761eea0fbf3ac8c53159cfefbb1bf93ee64ce21bdfa2c2b60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8d834945febc56d761eea0fbf3ac8c53159cfefbb1bf93ee64ce21bdfa2c2b60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d834945febc56d761eea0fbf3ac8c53159cfefbb1bf93ee64ce21bdfa2c2b60", kill_on_drop: false }`
[INFO] [stdout] 8d834945febc56d761eea0fbf3ac8c53159cfefbb1bf93ee64ce21bdfa2c2b60
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a26cde8545a83fe244bad0c26fe71abdff124504d467e376ec598afd5faf0a62
[INFO] running `Command { std: "docker" "start" "-a" "a26cde8545a83fe244bad0c26fe71abdff124504d467e376ec598afd5faf0a62", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.98
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]    Compiling zerocopy v0.8.17
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling winnow v0.7.2
[INFO] [stderr]    Compiling no-std-net v0.6.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling once_cell v1.20.3
[INFO] [stderr]    Compiling log v0.4.25
[INFO] [stderr]    Compiling pnet_base v0.35.0
[INFO] [stderr]    Compiling pnet_macros_support v0.35.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling nanorand v0.7.0
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling indexmap v2.7.1
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling rand_core v0.9.0
[INFO] [stderr]    Compiling toml_edit v0.22.24
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling proc-macro-crate v3.2.0
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling num_enum_derive v0.7.3
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling tokio v1.43.0
[INFO] [stderr]    Compiling num_enum v0.7.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling rand v0.9.0
[INFO] [stderr]    Compiling pnet_macros v0.35.0
[INFO] [stderr]    Compiling pnet_packet v0.35.0
[INFO] [stderr]    Compiling tokio-util v0.7.13
[INFO] [stderr]    Compiling tcp_ip v0.1.10 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tcp/tcp_queue.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem> {
[INFO] [stdout]    |                 ^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem<'_>> {
[INFO] [stdout]    |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.28s
[INFO] running `Command { std: "docker" "inspect" "a26cde8545a83fe244bad0c26fe71abdff124504d467e376ec598afd5faf0a62", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a26cde8545a83fe244bad0c26fe71abdff124504d467e376ec598afd5faf0a62", kill_on_drop: false }`
[INFO] [stdout] a26cde8545a83fe244bad0c26fe71abdff124504d467e376ec598afd5faf0a62
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6309335eaf0af9dfed74df0aa8059e97549774c3dd95ccbdeda442149ec90a04
[INFO] running `Command { std: "docker" "start" "-a" "6309335eaf0af9dfed74df0aa8059e97549774c3dd95ccbdeda442149ec90a04", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling log v0.4.25
[INFO] [stderr]    Compiling bitflags v2.8.0
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling thiserror v2.0.11
[INFO] [stderr]    Compiling thiserror-impl v2.0.11
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling futures-lite v2.6.0
[INFO] [stderr]    Compiling anyhow v1.0.95
[INFO] [stderr]    Compiling async-task v4.7.1
[INFO] [stderr]    Compiling clap_builder v4.5.29
[INFO] [stderr]    Compiling piper v0.2.4
[INFO] [stderr]    Compiling clap_derive v4.5.28
[INFO] [stderr]    Compiling event-listener v5.4.0
[INFO] [stderr]    Compiling event-listener-strategy v0.5.3
[INFO] [stderr]    Compiling async-channel v2.3.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling blocking v1.6.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling socket2 v0.5.8
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling getifaddrs v0.1.5
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling nanorand v0.7.0
[INFO] [stderr]    Compiling rand_core v0.9.0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.0
[INFO] [stderr]    Compiling tokio v1.43.0
[INFO] [stderr]    Compiling pnet_macros v0.35.0
[INFO] [stderr]    Compiling mac_address v1.1.8
[INFO] [stderr]    Compiling clap v4.5.29
[INFO] [stderr]    Compiling pnet_packet v0.35.0
[INFO] [stderr]    Compiling env_filter v0.1.3
[INFO] [stderr]    Compiling env_logger v0.11.6
[INFO] [stderr]    Compiling tokio-util v0.7.13
[INFO] [stderr]    Compiling tcp_ip v0.1.10 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tcp/tcp_queue.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem> {
[INFO] [stdout]    |                 ^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem<'_>> {
[INFO] [stdout]    |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tun-rs v1.5.0
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tcp/tcp_queue.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem> {
[INFO] [stdout]    |                 ^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem<'_>> {
[INFO] [stdout]    |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 29.39s
[INFO] running `Command { std: "docker" "inspect" "6309335eaf0af9dfed74df0aa8059e97549774c3dd95ccbdeda442149ec90a04", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6309335eaf0af9dfed74df0aa8059e97549774c3dd95ccbdeda442149ec90a04", kill_on_drop: false }`
[INFO] [stdout] 6309335eaf0af9dfed74df0aa8059e97549774c3dd95ccbdeda442149ec90a04
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f11663c0e5313c09386a430db7cd5cf3e1a7c84f983e35d42e62b926a8ffad09
[INFO] running `Command { std: "docker" "start" "-a" "f11663c0e5313c09386a430db7cd5cf3e1a7c84f983e35d42e62b926a8ffad09", kill_on_drop: false }`
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tcp/tcp_queue.rs:46:17
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem> {
[INFO] [stderr]    |                 ^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn peek(&mut self) -> Option<TcpReceiveQueueItem<'_>> {
[INFO] [stderr]    |                                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `tcp_ip` (lib) generated 1 warning (run `cargo fix --lib -p tcp_ip` to apply 1 suggestion)
[INFO] [stderr] warning: `tcp_ip` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tcp_ip-753b083054508b1c)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test buffer::tests::test_ring_buffer ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_clear ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_drop_after_pop ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_len ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_ordering ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_push_and_peek ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_pop ... ok
[INFO] [stdout] test tcp::tcp_queue::tests::test_push_with_duplicate_handling ... ok
[INFO] [stdout] test buffer::tests::test_fixed_buffer ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tcp_ip
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/ip_stack.rs - ip_stack::ip_stack (line 252) ... FAILED
[INFO] [stdout] test src/tcp/mod.rs - tcp::TcpStream (line 62) - compile ... FAILED
[INFO] [stdout] test src/tcp/mod.rs - tcp::TcpListener (line 29) - compile ... FAILED
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] [stdout] test src/lib.rs - (line 2) - compile ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/ip_stack.rs - ip_stack::ip_stack (line 252) stdout ----
[INFO] [stdout] error[E0277]: the `?` operator can only be used in an async function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> src/ip_stack.rs:257:88
[INFO] [stdout]     |
[INFO] [stdout] 256 |   async fn main(){
[INFO] [stdout]     |  ________________-
[INFO] [stdout] 257 | |     let (ip_stack, ip_stack_send, ip_stack_recv) = tcp_ip::ip_stack(Default::default())?;
[INFO] [stdout]     | |                                                                                        ^ cannot use the `?` operator in an async function that returns `()`
[INFO] [stdout] ...   |
[INFO] [stdout] 261 | |     let mut tcp_listener = TcpListener::bind_all(ip_stack.clone()).await?;
[INFO] [stdout] 262 | | }
[INFO] [stdout]     | |_- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in an async function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> src/ip_stack.rs:261:73
[INFO] [stdout]     |
[INFO] [stdout] 256 |   async fn main(){
[INFO] [stdout]     |  ________________-
[INFO] [stdout] 257 | |     let (ip_stack, ip_stack_send, ip_stack_recv) = tcp_ip::ip_stack(Default::default())?;
[INFO] [stdout] ...   |
[INFO] [stdout] 261 | |     let mut tcp_listener = TcpListener::bind_all(ip_stack.clone()).await?;
[INFO] [stdout]     | |                                                                         ^ cannot use the `?` operator in an async function that returns `()`
[INFO] [stdout] 262 | | }
[INFO] [stdout]     | |_- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] 
[INFO] [stdout] error[E0752]: `main` function is not allowed to be `async`
[INFO] [stdout]    --> src/ip_stack.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout] 256 | async fn main(){
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ `main` function is not allowed to be `async`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0752.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/tcp/mod.rs - tcp::TcpStream (line 62) stdout ----
[INFO] [stdout] error[E0599]: no method named `connect` found for struct `tcp_ip::tcp::TcpStream` in the current scope
[INFO] [stdout]   --> src/tcp/mod.rs:75:14
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let mut stream = tcp_ip::tcp::TcpStream::bind(ip_stack.clone(),src)?
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 75 | |             .connect(dst).await?;
[INFO] [stdout]    | |             -^^^^^^^ this is an associated function, not a method
[INFO] [stdout]    | |_____________|
[INFO] [stdout]    |
[INFO] [stdout]    |
[INFO] [stdout]    = note: found the following associated functions; to be used as methods, functions must have a `self` parameter
[INFO] [stdout]    = note: the candidate is defined in an impl for the type `tcp_ip::tcp::TcpStream`
[INFO] [stdout] help: use associated function syntax instead
[INFO] [stdout]    |
[INFO] [stdout] 74 -     let mut stream = tcp_ip::tcp::TcpStream::bind(ip_stack.clone(),src)?
[INFO] [stdout] 75 -             .connect(dst).await?;
[INFO] [stdout] 74 +     let mut stream = tcp_ip::tcp::TcpStream::connect(dst).await?;
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `connect_to` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 75 |             .connect_to(dst).await?;
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/tcp/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut stream = tcp_ip::tcp::TcpStream::bind(ip_stack.clone(),src)?
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     stream.write_all(b"hello world!").await?;
[INFO] [stdout]    |     ------ type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `stream` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut stream: /* Type */ = tcp_ip::tcp::TcpStream::bind(ip_stack.clone(),src)?
[INFO] [stdout]    |                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/tcp/mod.rs - tcp::TcpListener (line 29) stdout ----
[INFO] [stdout] error[E0284]: type annotations needed
[INFO] [stdout]   --> src/tcp/mod.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 |    let src = "10.0.0.2:8080".parse().unwrap();
[INFO] [stdout]    |        ^^^                   ----- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout]    = note: cannot satisfy `<_ as FromStr>::Err == _`
[INFO] [stdout] help: consider giving `src` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 43 |    let src: /* Type */ = "10.0.0.2:8080".parse().unwrap();
[INFO] [stdout]    |           ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0284`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 2) stdout ----
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/lib.rs:24:90
[INFO] [stdout]     |
[INFO] [stdout]  24 |     let mut tcp_listener = tcp_ip::tcp::TcpListener::bind(ip_stack.clone(), "0.0.0.0:80".parse().unwrap()).await?;
[INFO] [stdout]     |                            ------------------------------                                ^^^^^ cannot infer type of the type parameter `F` declared on the method `parse`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: cannot satisfy `_: ToSocketAddr`
[INFO] [stdout]     = help: the following types implement trait `ToSocketAddr`:
[INFO] [stdout]               &SocketAddrV4
[INFO] [stdout]               &SocketAddrV6
[INFO] [stdout]               &String
[INFO] [stdout]               &std::net::SocketAddr
[INFO] [stdout]               &str
[INFO] [stdout]               SocketAddrV4
[INFO] [stdout]               SocketAddrV6
[INFO] [stdout]               String
[INFO] [stdout]               std::net::SocketAddr
[INFO] [stdout] note: required by a bound in `tcp_ip::tcp::TcpListener::bind`
[INFO] [stdout]    --> src/tcp/mod.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub async fn bind<A: ToSocketAddr>(ip_stack: IpStack, local_addr: A) -> io::Result<Self> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^ required by this bound in `TcpListener::bind`
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]     |
[INFO] [stdout]  24 |     let mut tcp_listener = tcp_ip::tcp::TcpListener::bind(ip_stack.clone(), "0.0.0.0:80".parse::<F>().unwrap()).await?;
[INFO] [stdout]     |                                                                                               +++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0283`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/ip_stack.rs - ip_stack::ip_stack (line 252)
[INFO] [stdout]     src/lib.rs - (line 2)
[INFO] [stdout]     src/tcp/mod.rs - tcp::TcpListener (line 29)
[INFO] [stdout]     src/tcp/mod.rs - tcp::TcpStream (line 62)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f11663c0e5313c09386a430db7cd5cf3e1a7c84f983e35d42e62b926a8ffad09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f11663c0e5313c09386a430db7cd5cf3e1a7c84f983e35d42e62b926a8ffad09", kill_on_drop: false }`
[INFO] [stdout] f11663c0e5313c09386a430db7cd5cf3e1a7c84f983e35d42e62b926a8ffad09
