[INFO] updating cached repository https://github.com/sacooper/SimpleShell-Rust
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 6fbec7dab15b9119db13772c6790e0f36f5dea9a
[INFO] checking sacooper/SimpleShell-Rust against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsacooper%2FSimpleShell-Rust" "/workspace/builds/worker-7/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/sacooper/SimpleShell-Rust on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/sacooper/SimpleShell-Rust
[INFO] finished tweaking git repo https://github.com/sacooper/SimpleShell-Rust
[INFO] tweaked toml for git repo https://github.com/sacooper/SimpleShell-Rust written to /workspace/builds/worker-7/source/Cargo.toml
[INFO] crate git repo https://github.com/sacooper/SimpleShell-Rust already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] e273b9009d8a3d17911562d78e5237cedf666ec9633b31796884dff6590808b8
[INFO] running `"docker" "start" "-a" "e273b9009d8a3d17911562d78e5237cedf666ec9633b31796884dff6590808b8"`
[INFO] [stderr]     Checking RustShell v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr] error: invalid suffix `u` for integer literal
[INFO] [stderr]   --> src/main.rs:29:61
[INFO] [stderr]    |
[INFO] [stderr] 29 |                     let y : Vec<&HistoryEntry> = history.iter().rev().take(10u).collect();
[INFO] [stderr]    |                                                                            ^^^ invalid suffix `u`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the suffix must be one of the integral types (`u32`, `isize`, etc)
[INFO] [stderr] 
[INFO] [stderr] error: expected one of `)`, `,`, `.`, `?`, or an operator, found `{`
[INFO] [stderr]    --> src/main.rs:118:19
[INFO] [stderr]     |
[INFO] [stderr] 118 |                     spawn(proc() {
[INFO] [stderr]     |                                 -^ expected one of `)`, `,`, `.`, `?`, or an operator
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 help: missing `,`
[INFO] [stderr] 
[INFO] [stderr] error: invalid suffix `u` for integer literal
[INFO] [stderr]   --> src/main.rs:29:61
[INFO] [stderr]    |
[INFO] [stderr] 29 |                     let y : Vec<&HistoryEntry> = history.iter().rev().take(10u).collect();
[INFO] [stderr]    |                                                                            ^^^ invalid suffix `u`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the suffix must be one of the integral types (`u32`, `isize`, etc)
[INFO] [stderr] 
[INFO] [stderr] error: expected one of `)`, `,`, `.`, `?`, or an operator, found `{`
[INFO] [stderr]    --> src/main.rs:118:19
[INFO] [stderr]     |
[INFO] [stderr] 118 |                     spawn(proc() {
[INFO] [stderr]     |                                 -^ expected one of `)`, `,`, `.`, `?`, or an operator
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 help: missing `,`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `std::io::process`
[INFO] [stderr]  --> src/main.rs:2:14
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::io::process::Command;
[INFO] [stderr]   |              ^^^^^^^ could not find `process` in `io`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `std::io::process`
[INFO] [stderr]  --> src/main.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::io::process;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^ no `process` in `io`
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `deriving` in this scope
[INFO] [stderr]   --> src/main.rs:10:3
[INFO] [stderr]    |
[INFO] [stderr] 10 | #[deriving(Clone)]
[INFO] [stderr]    |   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `uint` in this scope
[INFO] [stderr]   --> src/main.rs:66:21
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fn execute(args : &Vec<&str>, background : bool, history : &mut Vec<HistoryEntry>, jobs : &mut Vec<JobEntry>) -> Result<(), ()> {
[INFO] [stderr]    |               - help: you might be missing a type parameter: `<uint>`
[INFO] [stderr] ...
[INFO] [stderr] 66 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                    ^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `std::io::process`
[INFO] [stderr]  --> src/main.rs:2:14
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::io::process::Command;
[INFO] [stderr]   |              ^^^^^^^ could not find `process` in `io`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `from_str` in this scope
[INFO] [stderr]   --> src/main.rs:66:29
[INFO] [stderr]    |
[INFO] [stderr] 66 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                            ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `std::io::process`
[INFO] [stderr]  --> src/main.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::io::process;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^ no `process` in `io`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `uint` in this scope
[INFO] [stderr]   --> src/main.rs:88:21
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fn execute(args : &Vec<&str>, background : bool, history : &mut Vec<HistoryEntry>, jobs : &mut Vec<JobEntry>) -> Result<(), ()> {
[INFO] [stderr]    |               - help: you might be missing a type parameter: `<uint>`
[INFO] [stderr] ...
[INFO] [stderr] 88 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                    ^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `from_str` in this scope
[INFO] [stderr]   --> src/main.rs:88:29
[INFO] [stderr]    |
[INFO] [stderr] 88 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                            ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error: cannot find attribute `deriving` in this scope
[INFO] [stderr]   --> src/main.rs:10:3
[INFO] [stderr]    |
[INFO] [stderr] 10 | #[deriving(Clone)]
[INFO] [stderr]    |   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sender` in this scope
[INFO] [stderr]    --> src/main.rs:117:21
[INFO] [stderr]     |
[INFO] [stderr] 117 |                       let (tx, rx): (Sender<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                      ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: a trait with a similar name exists
[INFO] [stderr]     |
[INFO] [stderr] 117 |                     let (tx, rx): (Send<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                    ^^^^
[INFO] [stderr] help: possible candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::sync::mpsc::Sender;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Receiver` in this scope
[INFO] [stderr]    --> src/main.rs:117:47
[INFO] [stderr]     |
[INFO] [stderr] 117 |                     let (tx, rx): (Sender<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                                              ^^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::ops::Receiver;
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::sync::mpsc::Receiver;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `channel` in this scope
[INFO] [stderr]    --> src/main.rs:117:77
[INFO] [stderr]     |
[INFO] [stderr] 117 |                     let (tx, rx): (Sender<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                                                                            ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::sync::mpsc::channel;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `spawn` in this scope
[INFO] [stderr]    --> src/main.rs:118:6
[INFO] [stderr]     |
[INFO] [stderr] 118 |                     spawn(proc() {
[INFO] [stderr]     |                     ^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::thread::spawn;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `proc` in this scope
[INFO] [stderr]    --> src/main.rs:118:12
[INFO] [stderr]     |
[INFO] [stderr] 118 |                     spawn(proc() {
[INFO] [stderr]     |                           ^^^^ help: a local variable with a similar name exists: `prog`
[INFO] [stderr] 
[INFO] [stderr] error[E0061]: this function takes 1 argument but 0 arguments were supplied
[INFO] [stderr]    --> src/main.rs:151:36
[INFO] [stderr]     |
[INFO] [stderr] 151 |         let input : String = io::stdin().read_line().unwrap_or(String::new());
[INFO] [stderr]     |                                          ^^^^^^^^^- supplied 0 arguments
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          expected 1 argument
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `uint` in this scope
[INFO] [stderr]   --> src/main.rs:66:21
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fn execute(args : &Vec<&str>, background : bool, history : &mut Vec<HistoryEntry>, jobs : &mut Vec<JobEntry>) -> Result<(), ()> {
[INFO] [stderr]    |               - help: you might be missing a type parameter: `<uint>`
[INFO] [stderr] ...
[INFO] [stderr] 66 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                    ^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `from_str` in this scope
[INFO] [stderr]   --> src/main.rs:66:29
[INFO] [stderr]    |
[INFO] [stderr] 66 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                            ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `uint` in this scope
[INFO] [stderr]   --> src/main.rs:88:21
[INFO] [stderr]    |
[INFO] [stderr] 21 |     fn execute(args : &Vec<&str>, background : bool, history : &mut Vec<HistoryEntry>, jobs : &mut Vec<JobEntry>) -> Result<(), ()> {
[INFO] [stderr]    |               - help: you might be missing a type parameter: `<uint>`
[INFO] [stderr] ...
[INFO] [stderr] 88 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                    ^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `from_str` in this scope
[INFO] [stderr]   --> src/main.rs:88:29
[INFO] [stderr]    |
[INFO] [stderr] 88 |                     let x : Option<uint> = from_str(args[1]);
[INFO] [stderr]    |                                            ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sender` in this scope
[INFO] [stderr]    --> src/main.rs:117:21
[INFO] [stderr]     |
[INFO] [stderr] 117 |                       let (tx, rx): (Sender<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                      ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: a trait with a similar name exists
[INFO] [stderr]     |
[INFO] [stderr] 117 |                     let (tx, rx): (Send<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                    ^^^^
[INFO] [stderr] help: possible candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::sync::mpsc::Sender;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Receiver` in this scope
[INFO] [stderr]    --> src/main.rs:117:47
[INFO] [stderr]     |
[INFO] [stderr] 117 |                     let (tx, rx): (Sender<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                                              ^^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::ops::Receiver;
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::sync::mpsc::Receiver;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `channel` in this scope
[INFO] [stderr]    --> src/main.rs:117:77
[INFO] [stderr]     |
[INFO] [stderr] 117 |                     let (tx, rx): (Sender<process::Process>, Receiver<process::Process>) = channel();
[INFO] [stderr]     |                                                                                            ^^^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::sync::mpsc::channel;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `spawn` in this scope
[INFO] [stderr]    --> src/main.rs:118:6
[INFO] [stderr]     |
[INFO] [stderr] 118 |                     spawn(proc() {
[INFO] [stderr]     |                     ^^^^^ not found in this scope
[INFO] [stderr]     |
[INFO] [stderr] help: possible candidate is found in another module, you can import it into scope
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::thread::spawn;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `proc` in this scope
[INFO] [stderr]    --> src/main.rs:118:12
[INFO] [stderr]     |
[INFO] [stderr] 118 |                     spawn(proc() {
[INFO] [stderr]     |                           ^^^^ help: a local variable with a similar name exists: `prog`
[INFO] [stderr] 
[INFO] [stderr] error[E0061]: this function takes 1 argument but 0 arguments were supplied
[INFO] [stderr]    --> src/main.rs:151:36
[INFO] [stderr]     |
[INFO] [stderr] 151 |         let input : String = io::stdin().read_line().unwrap_or(String::new());
[INFO] [stderr]     |                                          ^^^^^^^^^- supplied 0 arguments
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          expected 1 argument
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/main.rs:151:58
[INFO] [stderr]     |
[INFO] [stderr] 151 |         let input : String = io::stdin().read_line().unwrap_or(String::new());
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^ expected `usize`, found struct `std::string::String`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/main.rs:151:58
[INFO] [stderr]     |
[INFO] [stderr] 151 |         let input : String = io::stdin().read_line().unwrap_or(String::new());
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^ expected `usize`, found struct `std::string::String`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/main.rs:151:24
[INFO] [stderr]     |
[INFO] [stderr] 151 |         let input : String = io::stdin().read_line().unwrap_or(String::new());
[INFO] [stderr]     |                     ------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                     |        |
[INFO] [stderr]     |                     |        expected struct `std::string::String`, found `usize`
[INFO] [stderr]     |                     |        help: try using a conversion method: `io::stdin().read_line().unwrap_or(String::new()).to_string()`
[INFO] [stderr]     |                     expected due to this
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no function or associated item named `from_str` found for struct `std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:154:28
[INFO] [stderr]     |
[INFO] [stderr] 154 |         else if input == String::from_str("\n"){continue};
[INFO] [stderr]     |                                  ^^^^^^^^ function or associated item not found in `std::string::String`
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::str::FromStr;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/main.rs:151:24
[INFO] [stderr]     |
[INFO] [stderr] 151 |         let input : String = io::stdin().read_line().unwrap_or(String::new());
[INFO] [stderr]     |                     ------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                     |        |
[INFO] [stderr]     |                     |        expected struct `std::string::String`, found `usize`
[INFO] [stderr]     |                     |        help: try using a conversion method: `io::stdin().read_line().unwrap_or(String::new()).to_string()`
[INFO] [stderr]     |                     expected due to this
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no function or associated item named `from_str` found for struct `std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:154:28
[INFO] [stderr]     |
[INFO] [stderr] 154 |         else if input == String::from_str("\n"){continue};
[INFO] [stderr]     |                                  ^^^^^^^^ function or associated item not found in `std::string::String`
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::str::FromStr;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `add` found for struct `std::string::String` in the current scope
[INFO] [stderr]   --> src/main.rs:31:65
[INFO] [stderr]    |
[INFO] [stderr] 31 |                         let name = x.args.iter().fold(String::new(), |acc, x|{acc.add(x).add(&" ")});
[INFO] [stderr]    |                                                                                   ^^^ method not found in `std::string::String`
[INFO] [stderr]    |
[INFO] [stderr]    = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]    |
[INFO] [stderr] 1  | use std::ops::Add;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `add` found for struct `std::string::String` in the current scope
[INFO] [stderr]   --> src/main.rs:31:65
[INFO] [stderr]    |
[INFO] [stderr] 31 |                         let name = x.args.iter().fold(String::new(), |acc, x|{acc.add(x).add(&" ")});
[INFO] [stderr]    |                                                                                   ^^^ method not found in `std::string::String`
[INFO] [stderr]    |
[INFO] [stderr]    = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]    |
[INFO] [stderr] 1  | use std::ops::Add;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `add` found for struct `std::string::String` in the current scope
[INFO] [stderr]   --> src/main.rs:32:52
[INFO] [stderr]    |
[INFO] [stderr] 32 |                         let name = if x.background {name} else {name.add(&"&")};
[INFO] [stderr]    |                                                                      ^^^ method not found in `std::string::String`
[INFO] [stderr]    |
[INFO] [stderr]    = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]    |
[INFO] [stderr] 1  | use std::ops::Add;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `add` found for struct `std::string::String` in the current scope
[INFO] [stderr]   --> src/main.rs:32:52
[INFO] [stderr]    |
[INFO] [stderr] 32 |                         let name = if x.background {name} else {name.add(&"&")};
[INFO] [stderr]    |                                                                      ^^^ method not found in `std::string::String`
[INFO] [stderr]    |
[INFO] [stderr]    = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]    |
[INFO] [stderr] 1  | use std::ops::Add;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `clone` found for mutable reference `&mut std::vec::Vec<HistoryEntry>` in the current scope
[INFO] [stderr]    --> src/main.rs:39:20
[INFO] [stderr]     |
[INFO] [stderr] 11  |   struct HistoryEntry{
[INFO] [stderr]     |   ------------------- doesn't satisfy `HistoryEntry: std::clone::Clone`
[INFO] [stderr] ...
[INFO] [stderr] 39  |                       match history.clone().last(){
[INFO] [stderr]     |                                     ^^^^^ method not found in `&mut std::vec::Vec<HistoryEntry>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the method `clone` exists but the following trait bounds were not satisfied:
[INFO] [stderr]             `HistoryEntry: std::clone::Clone`
[INFO] [stderr]             which is required by `std::vec::Vec<HistoryEntry>: std::clone::Clone`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `clone` found for mutable reference `&mut std::vec::Vec<HistoryEntry>` in the current scope
[INFO] [stderr]    --> src/main.rs:47:23
[INFO] [stderr]     |
[INFO] [stderr] 11  |   struct HistoryEntry{
[INFO] [stderr]     |   ------------------- doesn't satisfy `HistoryEntry: std::clone::Clone`
[INFO] [stderr] ...
[INFO] [stderr] 47  |                       for x in history.clone().iter().rev() {
[INFO] [stderr]     |                                        ^^^^^ method not found in `&mut std::vec::Vec<HistoryEntry>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the method `clone` exists but the following trait bounds were not satisfied:
[INFO] [stderr]             `HistoryEntry: std::clone::Clone`
[INFO] [stderr]             which is required by `std::vec::Vec<HistoryEntry>: std::clone::Clone`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `clone` found for mutable reference `&mut std::vec::Vec<HistoryEntry>` in the current scope
[INFO] [stderr]    --> src/main.rs:39:20
[INFO] [stderr]     |
[INFO] [stderr] 11  |   struct HistoryEntry{
[INFO] [stderr]     |   ------------------- doesn't satisfy `HistoryEntry: std::clone::Clone`
[INFO] [stderr] ...
[INFO] [stderr] 39  |                       match history.clone().last(){
[INFO] [stderr]     |                                     ^^^^^ method not found in `&mut std::vec::Vec<HistoryEntry>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the method `clone` exists but the following trait bounds were not satisfied:
[INFO] [stderr]             `HistoryEntry: std::clone::Clone`
[INFO] [stderr]             which is required by `std::vec::Vec<HistoryEntry>: std::clone::Clone`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `char_at` found for reference `&str` in the current scope
[INFO] [stderr]   --> src/main.rs:48:53
[INFO] [stderr]    |
[INFO] [stderr] 48 |                         if x.args[0].as_slice().char_at(0) == args[1].char_at(0){
[INFO] [stderr]    |                                                                       ^^^^^^^ method not found in `&str`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `clone` found for mutable reference `&mut std::vec::Vec<HistoryEntry>` in the current scope
[INFO] [stderr]    --> src/main.rs:47:23
[INFO] [stderr]     |
[INFO] [stderr] 11  |   struct HistoryEntry{
[INFO] [stderr]     |   ------------------- doesn't satisfy `HistoryEntry: std::clone::Clone`
[INFO] [stderr] ...
[INFO] [stderr] 47  |                       for x in history.clone().iter().rev() {
[INFO] [stderr]     |                                        ^^^^^ method not found in `&mut std::vec::Vec<HistoryEntry>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the method `clone` exists but the following trait bounds were not satisfied:
[INFO] [stderr]             `HistoryEntry: std::clone::Clone`
[INFO] [stderr]             which is required by `std::vec::Vec<HistoryEntry>: std::clone::Clone`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `char_at` found for reference `&str` in the current scope
[INFO] [stderr]   --> src/main.rs:48:53
[INFO] [stderr]    |
[INFO] [stderr] 48 |                         if x.args[0].as_slice().char_at(0) == args[1].char_at(0){
[INFO] [stderr]    |                                                                       ^^^^^^^ method not found in `&str`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `tail` found for reference `&std::vec::Vec<&str>` in the current scope
[INFO] [stderr]    --> src/main.rs:110:20
[INFO] [stderr]     |
[INFO] [stderr] 110 |                 prog.args(args.tail().as_slice());
[INFO] [stderr]     |                                ^^^^ method not found in `&std::vec::Vec<&str>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `tail` found for reference `&std::vec::Vec<&str>` in the current scope
[INFO] [stderr]    --> src/main.rs:110:20
[INFO] [stderr]     |
[INFO] [stderr] 110 |                 prog.args(args.tail().as_slice());
[INFO] [stderr]     |                                ^^^^ method not found in `&std::vec::Vec<&str>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `add` found for struct `std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:123:90
[INFO] [stderr]     |
[INFO] [stderr] 123 |                     jobs.push(JobEntry{process : p, name : args.iter().fold(String::new(), |acc, x|{acc.add(x).add(&" ")})})}
[INFO] [stderr]     |                                                                                                         ^^^ method not found in `std::string::String`
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::ops::Add;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no function or associated item named `from_str` found for struct `std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:130:66
[INFO] [stderr]     |
[INFO] [stderr] 130 |                 history.push(HistoryEntry{args : args.iter().map(|x|{String::from_str(*x)}).collect(), background : background});
[INFO] [stderr]     |                                                                              ^^^^^^^^ function or associated item not found in `std::string::String`
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::str::FromStr;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `add` found for struct `std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:123:90
[INFO] [stderr]     |
[INFO] [stderr] 123 |                     jobs.push(JobEntry{process : p, name : args.iter().fold(String::new(), |acc, x|{acc.add(x).add(&" ")})})}
[INFO] [stderr]     |                                                                                                         ^^^ method not found in `std::string::String`
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::ops::Add;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no function or associated item named `from_str` found for struct `std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:130:66
[INFO] [stderr]     |
[INFO] [stderr] 130 |                 history.push(HistoryEntry{args : args.iter().map(|x|{String::from_str(*x)}).collect(), background : background});
[INFO] [stderr]     |                                                                              ^^^^^^^^ function or associated item not found in `std::string::String`
[INFO] [stderr]     |
[INFO] [stderr]     = help: items from traits can only be used if the trait is in scope
[INFO] [stderr] help: the following trait is implemented but not in scope; perhaps add a `use` for it:
[INFO] [stderr]     |
[INFO] [stderr] 1   | use std::str::FromStr;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_slice` found for reference `&'r std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:141:18
[INFO] [stderr]     |
[INFO] [stderr] 141 |         for c in input.as_slice().split(' '){
[INFO] [stderr]     |                        ^^^^^^^^ method not found in `&'r std::string::String`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `as_slice` found for reference `&'r std::string::String` in the current scope
[INFO] [stderr]    --> src/main.rs:141:18
[INFO] [stderr]     |
[INFO] [stderr] 141 |         for c in input.as_slice().split(' '){
[INFO] [stderr]     |                        ^^^^^^^^ method not found in `&'r std::string::String`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 27 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0061, E0308, E0412, E0425, E0432, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0061`.
[INFO] [stderr] error: aborting due to 27 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0061, E0308, E0412, E0425, E0432, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0061`.
[INFO] [stderr] error: could not compile `RustShell`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `RustShell`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "e273b9009d8a3d17911562d78e5237cedf666ec9633b31796884dff6590808b8"`
[INFO] running `"docker" "rm" "-f" "e273b9009d8a3d17911562d78e5237cedf666ec9633b31796884dff6590808b8"`
[INFO] [stdout] e273b9009d8a3d17911562d78e5237cedf666ec9633b31796884dff6590808b8
