[INFO] cloning repository https://github.com/ncastellanosort/rustbook_learning
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ncastellanosort/rustbook_learning" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fncastellanosort%2Frustbook_learning", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fncastellanosort%2Frustbook_learning'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 18c5d42b6ff8ee944ae5a8e5ad847d0154d96c97
[INFO] checking ncastellanosort/rustbook_learning against 760e1de835e253bf28bbcbfee38b5e8ed9ffe074 for pr-133502-26
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fncastellanosort%2Frustbook_learning" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ncastellanosort/rustbook_learning
[INFO] finished tweaking git repo https://github.com/ncastellanosort/rustbook_learning
[INFO] tweaked toml for git repo https://github.com/ncastellanosort/rustbook_learning written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ncastellanosort/rustbook_learning on toolchain 760e1de835e253bf28bbcbfee38b5e8ed9ffe074
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ncastellanosort/rustbook_learning 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" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking ncastellanosort/rustbook_learning against 760e1de835e253bf28bbcbfee38b5e8ed9ffe074 for pr-133502-26
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fncastellanosort%2Frustbook_learning" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ncastellanosort/rustbook_learning
[INFO] finished tweaking git repo https://github.com/ncastellanosort/rustbook_learning
[INFO] tweaked toml for git repo https://github.com/ncastellanosort/rustbook_learning written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ncastellanosort/rustbook_learning on toolchain 760e1de835e253bf28bbcbfee38b5e8ed9ffe074
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ncastellanosort/rustbook_learning 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" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70
[INFO] running `Command { std: "docker" "start" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70" "/opt/rustwide/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70" "/opt/rustwide/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking rustbook_learning v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::process;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::process;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0284]: type annotations needed
[INFO] [stdout]   --> src/cap13_closures.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let add_x = |y| y + x;
[INFO] [stdout]    |                  ^    - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout]    = note: cannot satisfy `<_ as Add<i32>>::Output == _`
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let add_x = |y: /* Type */| y + x;
[INFO] [stdout]    |                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0284]: type annotations needed
[INFO] [stdout]   --> src/cap13_closures.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let add_x = |y| y + x;
[INFO] [stdout]    |                  ^    - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout]    = note: cannot satisfy `<_ as Add<i32>>::Output == _`
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let add_x = |y: /* Type */| y + x;
[INFO] [stdout]    |                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> src/cap10_generic_lifetimes.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let s = identidad("Hola"); // es un &str
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> src/cap10_generic_lifetimes.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let s = identidad(2); // es un i32
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `caja_num`
[INFO] [stdout]   --> src/cap10_generic_lifetimes.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let caja_num = Caja { contenido: 5 };
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_caja_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `caja_num`
[INFO] [stdout]   --> src/cap10_generic_lifetimes.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let caja_num = Caja {
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_caja_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> src/cap10_generic_lifetimes.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let s = identidad("Hola"); // es un &str
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> src/cap10_generic_lifetimes.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let s = identidad(2); // es un i32
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `caja_num`
[INFO] [stdout]   --> src/cap10_generic_lifetimes.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let caja_num = Caja { contenido: 5 };
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_caja_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `caja_num`
[INFO] [stdout]   --> src/cap10_generic_lifetimes.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let caja_num = Caja {
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_caja_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `x` does not live long enough
[INFO] [stdout]    --> src/cap10_generic_lifetimes.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let x = 5;
[INFO] [stdout]     |             - binding `x` declared here
[INFO] [stdout] 113 |         r = &x; // r -> x
[INFO] [stdout]     |             ^^ borrowed value does not live long enough
[INFO] [stdout] 114 |     } // x sale de scope y r no queda apuntando a nada
[INFO] [stdout]     |     - `x` dropped here while still borrowed
[INFO] [stdout] 115 |     println!("{}", r); // r esta apuntando a algo que ya no existe
[INFO] [stdout]     |                    - borrow later used here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `x` does not live long enough
[INFO] [stdout]    --> src/cap10_generic_lifetimes.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let x = 5;
[INFO] [stdout]     |             - binding `x` declared here
[INFO] [stdout] 113 |         r = &x; // r -> x
[INFO] [stdout]     |             ^^ borrowed value does not live long enough
[INFO] [stdout] 114 |     } // x sale de scope y r no queda apuntando a nada
[INFO] [stdout]     |     - `x` dropped here while still borrowed
[INFO] [stdout] 115 |     println!("{}", r); // r esta apuntando a algo que ya no existe
[INFO] [stdout]     |                    - borrow later used here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let c = |y: i32| y + x; // &x
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cap13_closures.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut c = |y: i32| {
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut c = |y: i32| {
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let c = || drop(x);
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let c = move || println!("{:?}", x);
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let c = |y: i32| y + x; // &x
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cap13_closures.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut c = |y: i32| {
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut c = |y: i32| {
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let c = || drop(x);
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/cap13_closures.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let c = move || println!("{:?}", x);
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s2`
[INFO] [stdout]   --> src/cap4_ownership.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let s2 = s1; // se hace un move, ya que s1 esta en el heap
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/cap4_ownership.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let s = String::from("Hola, mundo");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hola`
[INFO] [stdout]   --> src/cap4_ownership.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let hola = &[..3]; // indice el 0 al 3 para Hola
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_hola`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mundo`
[INFO] [stdout]   --> src/cap4_ownership.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let mundo = &[5..]; // mundo
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_mundo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s2`
[INFO] [stdout]   --> src/cap4_ownership.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let s2 = s1; // se hace un move, ya que s1 esta en el heap
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/cap4_ownership.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let s = String::from("Hola, mundo");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hola`
[INFO] [stdout]   --> src/cap4_ownership.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let hola = &[..3]; // indice el 0 al 3 para Hola
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_hola`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mundo`
[INFO] [stdout]   --> src/cap4_ownership.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let mundo = &[5..]; // mundo
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_mundo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `un_numero`
[INFO] [stdout]   --> src/cap6_enums.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let un_numero = Some(5);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_un_numero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `un_texto`
[INFO] [stdout]   --> src/cap6_enums.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let un_texto: Option<&str> = Some("Hola");
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_un_texto`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `numero_ausente`
[INFO] [stdout]   --> src/cap6_enums.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let numero_ausente: Option<i32> = None; // especie de null
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_numero_ausente`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `un_numero`
[INFO] [stdout]   --> src/cap6_enums.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let un_numero = Some(5);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_un_numero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `un_texto`
[INFO] [stdout]   --> src/cap6_enums.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let un_texto: Option<&str> = Some("Hola");
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_un_texto`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `numero_ausente`
[INFO] [stdout]   --> src/cap6_enums.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let numero_ausente: Option<i32> = None; // especie de null
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_numero_ausente`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cap8_colecciones.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut v: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/cap8_colecciones.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut v: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uno`
[INFO] [stdout]   --> src/cap8_colecciones.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let uno = &v2[1]; // devuelve un Option<&T>
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_uno`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dos`
[INFO] [stdout]   --> src/cap8_colecciones.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let dos = v2.get(2); // devuelve un Option<&T>
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_dos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cap8_colecciones.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut v: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/cap8_colecciones.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut v: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uno`
[INFO] [stdout]   --> src/cap8_colecciones.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let uno = &v2[1]; // devuelve un Option<&T>
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_uno`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dos`
[INFO] [stdout]   --> src/cap8_colecciones.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let dos = v2.get(2); // devuelve un Option<&T>
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_dos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `archivo`
[INFO] [stdout]   --> src/cap9_result.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let archivo = match f {
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archivo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `archivo`
[INFO] [stdout]   --> src/cap9_result.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let archivo = match f {
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archivo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0284, E0597.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0284`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0284, E0597.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0284`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustbook_learning` (bin "rustbook_learning") due to 2 previous errors; 22 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rustbook_learning` (bin "rustbook_learning" test) due to 2 previous errors; 22 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70", kill_on_drop: false }`
[INFO] [stdout] 45fe78c60795cf45de40fd2b79394344be1c6eee675af2ced697959d15f1ac70
