[INFO] cloning repository https://github.com/mister-hai/rust_practice
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mister-hai/rust_practice" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmister-hai%2Frust_practice", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmister-hai%2Frust_practice'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 263235030ee988ac3e8fdee11c0243bacf923ee4
[INFO] testing mister-hai/rust_practice against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmister-hai%2Frust_practice" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mister-hai/rust_practice
[INFO] finished tweaking git repo https://github.com/mister-hai/rust_practice
[INFO] tweaked toml for git repo https://github.com/mister-hai/rust_practice written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mister-hai/rust_practice on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mister-hai/rust_practice 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d0f8adda6211636b70f27dabd199d127bb9668969670a09b7088ed9d11ec2d19
[INFO] running `Command { std: "docker" "start" "-a" "d0f8adda6211636b70f27dabd199d127bb9668969670a09b7088ed9d11ec2d19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d0f8adda6211636b70f27dabd199d127bb9668969670a09b7088ed9d11ec2d19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d0f8adda6211636b70f27dabd199d127bb9668969670a09b7088ed9d11ec2d19", kill_on_drop: false }`
[INFO] [stdout] d0f8adda6211636b70f27dabd199d127bb9668969670a09b7088ed9d11ec2d19
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 44c008325a1332d1bfe335855bfff70358cc06b540e07b1bc1104977ceec0bac
[INFO] running `Command { std: "docker" "start" "-a" "44c008325a1332d1bfe335855bfff70358cc06b540e07b1bc1104977ceec0bac", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.92
[INFO] [stderr]    Compiling proc-macro2 v1.0.26
[INFO] [stderr]    Compiling syn v1.0.68
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling smallvec v1.6.1
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling instant v0.1.9
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling lock_api v0.4.2
[INFO] [stderr]    Compiling serde v1.0.125
[INFO] [stderr]    Compiling serde_json v1.0.64
[INFO] [stderr]    Compiling pin-project-lite v0.2.6
[INFO] [stderr]    Compiling once_cell v1.7.2
[INFO] [stderr]    Compiling bytes v1.0.1
[INFO] [stderr]    Compiling futures-core v0.3.13
[INFO] [stderr]    Compiling futures-io v0.3.13
[INFO] [stderr]    Compiling itoa v0.4.7
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling tokio v1.4.0
[INFO] [stderr]    Compiling termcolor v1.1.2
[INFO] [stderr]    Compiling parking_lot_core v0.8.3
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling parking_lot v0.11.1
[INFO] [stderr]    Compiling mio v0.7.11
[INFO] [stderr]    Compiling signal-hook-registry v1.3.0
[INFO] [stderr]    Compiling threadpool v1.8.1
[INFO] [stderr]    Compiling tokio-macros v1.1.0
[INFO] [stderr]    Compiling async-compat v0.2.1
[INFO] [stderr]    Compiling rust_practice v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> src/main.rs:99:29
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn new(&self, json_input) -> Command {
[INFO] [stdout]    |                             ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn new(&self, json_input: TypeName) -> Command {
[INFO] [stdout]    |                             ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn new(&self, _: json_input) -> Command {
[INFO] [stdout]    |                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: format argument must be a string literal
[INFO] [stdout]    --> src/main.rs:103:18
[INFO] [stdout]     |
[INFO] [stdout] 103 |         println!(self.success_message);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a string literal to format with
[INFO] [stdout]     |
[INFO] [stdout] 103 |         println!("{}", self.success_message);
[INFO] [stdout]     |                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: format argument must be a string literal
[INFO] [stdout]    --> src/main.rs:105:18
[INFO] [stdout]     |
[INFO] [stdout] 105 |         println!(self.failure_message);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a string literal to format with
[INFO] [stdout]     |
[INFO] [stdout] 105 |         println!("{}", self.failure_message);
[INFO] [stdout]     |                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `TcpStream` in module `tokio::stream`
[INFO] [stdout]    --> src/main.rs:133:49
[INFO] [stdout]     |
[INFO] [stdout] 133 | fn handle_connection(mut stream: tokio::stream::TcpStream) {
[INFO] [stdout]     |                                                 ^^^^^^^^^ not found in `tokio::stream`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 9   + use std::net::TcpStream;
[INFO] [stdout]     |
[INFO] [stdout] 9   + use tokio::net::TcpStream;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `TcpStream`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 133 - fn handle_connection(mut stream: tokio::stream::TcpStream) {
[INFO] [stdout] 133 + fn handle_connection(mut stream: TcpStream) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shutdown`
[INFO] [stdout]    --> src/main.rs:143:29
[INFO] [stdout]     |
[INFO] [stdout] 143 |             stream.shutdown(Shutdown::Both).unwrap();
[INFO] [stdout]     |                             ^^^^^^^^ use of undeclared type `Shutdown`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 9   + use std::net::Shutdown;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Value` in this scope
[INFO] [stdout]    --> src/main.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let v: Value = serde_json::from_str(data)?;
[INFO] [stdout]     |            ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 9   + use serde_json::Value;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `data` in this scope
[INFO] [stdout]    --> src/main.rs:152:41
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let v: Value = serde_json::from_str(data)?;
[INFO] [stdout]     |                                         ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pass` in this scope
[INFO] [stdout]    --> src/main.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pass
[INFO] [stdout]     |     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `char`
[INFO] [stdout]  --> src/main.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::{char, collections::VecDeque};
[INFO] [stdout]   |           ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]   --> src/main.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io::{self, Write};
[INFO] [stdout]    |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ColorChoice`, `ColorSpec`, `Color`, `StandardStream`, and `WriteColor`
[INFO] [stdout]   --> src/main.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use termcolor::{Color,ColorChoice,ColorSpec, 
[INFO] [stdout]    |                 ^^^^^ ^^^^^^^^^^^ ^^^^^^^^^
[INFO] [stdout] 13 |                 StandardStream,WriteColor};
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^ ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `JoinHandle` and `Thread`
[INFO] [stdout]   --> src/main.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::thread::{Thread,JoinHandle};
[INFO] [stdout]    |                   ^^^^^^ ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpSocket` and `TcpStream`
[INFO] [stdout]   --> src/main.rs:19:18
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::net::{TcpStream,TcpSocket,TcpListener};
[INFO] [stdout]    |                  ^^^^^^^^^ ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, and `SocketAddr`
[INFO] [stdout]   --> src/main.rs:20:16
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::net::{SocketAddr,IpAddr,Ipv4Addr}; 
[INFO] [stdout]    |                ^^^^^^^^^^ ^^^^^^ ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::from_utf8`
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::str::from_utf8;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `command_struct` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | struct command_struct{
[INFO] [stdout]    |        ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CommandStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `command_set` should have an upper camel case name
[INFO] [stdout]    --> src/main.rs:110:8
[INFO] [stdout]     |
[INFO] [stdout] 110 | struct command_set{
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to upper camel case: `CommandSet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: struct takes at least 1 generic argument but 0 generic arguments were supplied
[INFO] [stdout]    --> src/main.rs:111:11
[INFO] [stdout]     |
[INFO] [stdout] 111 |     set : VecDeque<>
[INFO] [stdout]     |           ^^^^^^^^ expected at least 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]     |
[INFO] [stdout] 111 |     set : VecDeque<T>
[INFO] [stdout]     |                    +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:86:22
[INFO] [stdout]    |
[INFO] [stdout] 86 |     name           : str,
[INFO] [stdout]    |                      ^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = note: only the last field of a struct may have a dynamically sized type
[INFO] [stdout]    = help: change the field's type to have a statically known size
[INFO] [stdout] help: borrowed types always have a statically known size
[INFO] [stdout]    |
[INFO] [stdout] 86 |     name           : &str,
[INFO] [stdout]    |                      +
[INFO] [stdout] help: the `Box` type always has a statically known size and allocates its contents in the heap
[INFO] [stdout]    |
[INFO] [stdout] 86 |     name           : Box<str>,
[INFO] [stdout]    |                      ++++   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]    --> src/main.rs:149:41
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn untyped_example(json_string: str) -> Result<()> {
[INFO] [stdout]     |                                         ^^^^^^ -- supplied 1 generic argument
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         expected 2 generic arguments
[INFO] [stdout]     |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn untyped_example(json_string: str) -> Result<(), E> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn concat_format(text1:str , text2:str){
[INFO] [stdout]    |                        ^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn concat_format(text1:&str , text2:str){
[INFO] [stdout]    |                        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:30:36
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn concat_format(text1:str , text2:str){
[INFO] [stdout]    |                                    ^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn concat_format(text1:str , text2:&str){
[INFO] [stdout]    |                                    +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:31:21
[INFO] [stdout]    |
[INFO] [stdout] 31 |     format!("{}{}", text1 , text2)
[INFO] [stdout]    |              --     ^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |              |
[INFO] [stdout]    |              required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn concat_format(text1:str , text2:str){
[INFO] [stdout]    |                                        - help: try adding a return type: `-> std::string::String`
[INFO] [stdout] 31 |     format!("{}{}", text1 , text2)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found `String`
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn concat_print(text1:str , text2:str){
[INFO] [stdout]    |                       ^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn concat_print(text1:&str , text2:str){
[INFO] [stdout]    |                       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:33:35
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn concat_print(text1:str , text2:str){
[INFO] [stdout]    |                                   ^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn concat_print(text1:str , text2:&str){
[INFO] [stdout]    |                                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |     println!("{}{}", text1 , text2)
[INFO] [stdout]    |               --     ^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:40:40
[INFO] [stdout]     |
[INFO] [stdout] 40  |         let mut pool = ThreadPool::new(num_threads);
[INFO] [stdout]     |                        --------------- ^^^^^^^^^^^ expected `usize`, found `i32`
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/threadpool-1.8.1/src/lib.rs:367:12
[INFO] [stdout]     |
[INFO] [stdout] 367 |     pub fn new(num_threads: usize) -> ThreadPool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 40  |         let mut pool = ThreadPool::new(num_threads.try_into().unwrap());
[INFO] [stdout]     |                                                   ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | /     if num_threads < max_threads {
[INFO] [stdout] 40 | |         let mut pool = ThreadPool::new(num_threads);
[INFO] [stdout] 41 | |         process_to_thread
[INFO] [stdout]    | |         ^^^^^^^^^^^^^^^^^ expected `()`, found fn pointer
[INFO] [stdout] 42 | |     } else {
[INFO] [stdout] 43 | |
[INFO] [stdout] 44 | |     }
[INFO] [stdout]    | |_____- expected this to be `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected unit type `()`
[INFO] [stdout]              found fn pointer `fn()`
[INFO] [stdout] help: use parentheses to call this function pointer
[INFO] [stdout]    |
[INFO] [stdout] 41 |         process_to_thread()
[INFO] [stdout]    |                          ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]   --> src/main.rs:45:41
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn is_connection_authorized(auth_string:str){
[INFO] [stdout]    |                                         ^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn is_connection_authorized(auth_string:&str){
[INFO] [stdout]    |                                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for opaque type `impl Future<Output = Result<tokio::net::TcpListener, futures_io::Error>>` in the current scope
[INFO] [stdout]   --> src/main.rs:59:54
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let listener = TcpListener::bind("0.0.0.0:3333").unwrap();
[INFO] [stdout]    |                                                      ^^^^^^ method not found in `impl Future<Output = Result<tokio::net::TcpListener, futures_io::Error>>`
[INFO] [stdout]    |
[INFO] [stdout] help: consider `await`ing on the `Future` and calling the method on its `Output`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let listener = TcpListener::bind("0.0.0.0:3333").await.unwrap();
[INFO] [stdout]    |                                                      ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:99:34
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn new(&self, json_input) -> Command {
[INFO] [stdout]    |        ---                       ^^^^^^^ expected `Command`, found `()`
[INFO] [stdout]    |        |
[INFO] [stdout]    |        implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `expect` found for struct `std::process::Command` in the current scope
[INFO] [stdout]    --> src/main.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |     new_command.expect("failed");
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `exec` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/os/unix/process.rs:159:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `stdout` on type `std::process::Command`
[INFO] [stdout]    --> src/main.rs:120:30
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let result = new_command.stdout;
[INFO] [stdout]     |                              ^^^^^^ method, not a field
[INFO] [stdout]     |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let result = new_command.stdout(_);
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time
[INFO] [stdout]    --> src/main.rs:149:33
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn untyped_example(json_string: str) -> Result<()> {
[INFO] [stdout]     |                                 ^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sized` is not implemented for `str`
[INFO] [stdout]     = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn untyped_example(json_string: &str) -> Result<()> {
[INFO] [stdout]     |                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0277, E0308, E0412, E0425, E0433, E0599, E0615.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust_practice` (bin "rust_practice") due to 26 previous errors; 10 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "44c008325a1332d1bfe335855bfff70358cc06b540e07b1bc1104977ceec0bac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "44c008325a1332d1bfe335855bfff70358cc06b540e07b1bc1104977ceec0bac", kill_on_drop: false }`
[INFO] [stdout] 44c008325a1332d1bfe335855bfff70358cc06b540e07b1bc1104977ceec0bac
