[INFO] cloning repository https://github.com/shybyte/exercises-in-programming-style-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/shybyte/exercises-in-programming-style-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshybyte%2Fexercises-in-programming-style-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshybyte%2Fexercises-in-programming-style-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] eeb1242d7416b4a4b163f9be2fdb4c19984f436f [INFO] checking shybyte/exercises-in-programming-style-rust against try#8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 for pr-82565 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshybyte%2Fexercises-in-programming-style-rust" "/workspace/builds/worker-13/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/shybyte/exercises-in-programming-style-rust on toolchain 8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/shybyte/exercises-in-programming-style-rust [INFO] finished tweaking git repo https://github.com/shybyte/exercises-in-programming-style-rust [INFO] tweaked toml for git repo https://github.com/shybyte/exercises-in-programming-style-rust written to /workspace/builds/worker-13/source/Cargo.toml [INFO] crate git repo https://github.com/shybyte/exercises-in-programming-style-rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9a5586c09ab7cb86e20708d6558416fbebd3d696260efe53b415a8278fce8c0e [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9a5586c09ab7cb86e20708d6558416fbebd3d696260efe53b415a8278fce8c0e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9a5586c09ab7cb86e20708d6558416fbebd3d696260efe53b415a8278fce8c0e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9a5586c09ab7cb86e20708d6558416fbebd3d696260efe53b415a8278fce8c0e", kill_on_drop: false }` [INFO] [stdout] 9a5586c09ab7cb86e20708d6558416fbebd3d696260efe53b415a8278fce8c0e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 80f32e87595f970e7f5fe1ea513ec5f0517244e103ddf40028b8234fabf6cdde [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "80f32e87595f970e7f5fe1ea513ec5f0517244e103ddf40028b8234fabf6cdde", kill_on_drop: false }` [INFO] [stderr] Checking exercises_in_programming_style_rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / /// Takes a path to a file and assigns the entire [INFO] [stdout] 17 | | /// contents of the file to the global variable data [INFO] [stdout] | |________________________________________________________^ [INFO] [stdout] 18 | / let read_file = |filename: &str| { [INFO] [stdout] 19 | | let mut text = String::new(); [INFO] [stdout] 20 | | File::open(filename).unwrap().read_to_string(&mut text).unwrap(); [INFO] [stdout] 21 | | data.borrow_mut().append(&mut text.chars().collect()); [INFO] [stdout] 22 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | /// Replaces all nonalphanumeric chars in data with white space [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 26 | / let filter_chars_and_normalize = || { [INFO] [stdout] 27 | | for c in data.borrow_mut().iter_mut() { [INFO] [stdout] 28 | | if !c.is_alphanumeric() { [INFO] [stdout] 29 | | *c = ' '; [INFO] [stdout] ... | [INFO] [stdout] 33 | | } [INFO] [stdout] 34 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | /// Scans data for words, filling the global variable words [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 37 | / let scan = || { [INFO] [stdout] 38 | | let data_str: String = data.borrow().iter().collect(); [INFO] [stdout] 39 | | words.borrow_mut().append(&mut data_str.split(' ').map(|s| s.to_string()).filter(|s| !s.is_empty()).collect()); [INFO] [stdout] 40 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | /// Scans data for words, filling the global variable words [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 43 | / let remove_stop_words = || { [INFO] [stdout] 44 | | let mut stop_words: HashSet = BufReader::new(File::open("test-data/stop_words.txt").unwrap()) [INFO] [stdout] 45 | | .split(b',').map(|b| String::from_utf8_lossy(&b.unwrap()).into()).collect(); [INFO] [stdout] 46 | | for ascii_lowercase in b'a'..b'z' { stop_words.insert((ascii_lowercase as char).to_string()); } [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] 59 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | /// Creates a list of pairs associating words with frequencies [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 62 | / let frequencies = || { [INFO] [stdout] 63 | | let mut word_freqs_mut = word_freqs.borrow_mut(); [INFO] [stdout] 64 | | for w in words.borrow().iter() { [INFO] [stdout] 65 | | if let Some(index) = word_freqs_mut.iter().position(|pair| &pair.0 == w) { [INFO] [stdout] ... | [INFO] [stdout] 70 | | } [INFO] [stdout] 71 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | /// Sorts word_freqs by frequency [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 74 | / let sort = || { [INFO] [stdout] 75 | | word_freqs.borrow_mut().sort_by_key(|p| 0 - p.1); [INFO] [stdout] 76 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / /// Takes a path to a file and assigns the entire [INFO] [stdout] 17 | | /// contents of the file to the global variable data [INFO] [stdout] | |________________________________________________________^ [INFO] [stdout] 18 | / let read_file = |filename: &str| { [INFO] [stdout] 19 | | let mut text = String::new(); [INFO] [stdout] 20 | | File::open(filename).unwrap().read_to_string(&mut text).unwrap(); [INFO] [stdout] 21 | | data.borrow_mut().append(&mut text.chars().collect()); [INFO] [stdout] 22 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | /// Replaces all nonalphanumeric chars in data with white space [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 26 | / let filter_chars_and_normalize = || { [INFO] [stdout] 27 | | for c in data.borrow_mut().iter_mut() { [INFO] [stdout] 28 | | if !c.is_alphanumeric() { [INFO] [stdout] 29 | | *c = ' '; [INFO] [stdout] ... | [INFO] [stdout] 33 | | } [INFO] [stdout] 34 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | /// Scans data for words, filling the global variable words [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 37 | / let scan = || { [INFO] [stdout] 38 | | let data_str: String = data.borrow().iter().collect(); [INFO] [stdout] 39 | | words.borrow_mut().append(&mut data_str.split(' ').map(|s| s.to_string()).filter(|s| !s.is_empty()).collect()); [INFO] [stdout] 40 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | /// Scans data for words, filling the global variable words [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 43 | / let remove_stop_words = || { [INFO] [stdout] 44 | | let mut stop_words: HashSet = BufReader::new(File::open("test-data/stop_words.txt").unwrap()) [INFO] [stdout] 45 | | .split(b',').map(|b| String::from_utf8_lossy(&b.unwrap()).into()).collect(); [INFO] [stdout] 46 | | for ascii_lowercase in b'a'..b'z' { stop_words.insert((ascii_lowercase as char).to_string()); } [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] 59 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | /// Creates a list of pairs associating words with frequencies [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 62 | / let frequencies = || { [INFO] [stdout] 63 | | let mut word_freqs_mut = word_freqs.borrow_mut(); [INFO] [stdout] 64 | | for w in words.borrow().iter() { [INFO] [stdout] 65 | | if let Some(index) = word_freqs_mut.iter().position(|pair| &pair.0 == w) { [INFO] [stdout] ... | [INFO] [stdout] 70 | | } [INFO] [stdout] 71 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/bin/04-cookbook.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | /// Sorts word_freqs by frequency [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 74 | / let sort = || { [INFO] [stdout] 75 | | word_freqs.borrow_mut().sort_by_key(|p| 0 - p.1); [INFO] [stdout] 76 | | }; [INFO] [stdout] | |______- rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.81s [INFO] running `Command { std: "docker" "inspect" "80f32e87595f970e7f5fe1ea513ec5f0517244e103ddf40028b8234fabf6cdde", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "80f32e87595f970e7f5fe1ea513ec5f0517244e103ddf40028b8234fabf6cdde", kill_on_drop: false }` [INFO] [stdout] 80f32e87595f970e7f5fe1ea513ec5f0517244e103ddf40028b8234fabf6cdde