[INFO] cloning repository https://github.com/Murtaza-arif/wiki-tree [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Murtaza-arif/wiki-tree" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMurtaza-arif%2Fwiki-tree", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMurtaza-arif%2Fwiki-tree'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 30c22f4e62633a8dd590887fb161a53a8f804623 [INFO] testing Murtaza-arif/wiki-tree against 1.63.0 for beta-1.64-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMurtaza-arif%2Fwiki-tree" "/workspace/builds/worker-0/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Murtaza-arif/wiki-tree on toolchain 1.63.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.63.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Murtaza-arif/wiki-tree [INFO] finished tweaking git repo https://github.com/Murtaza-arif/wiki-tree [INFO] tweaked toml for git repo https://github.com/Murtaza-arif/wiki-tree written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/Murtaza-arif/wiki-tree already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.63.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded syn v1.0.43 [INFO] [stderr] Downloaded thin-slice v0.1.1 [INFO] [stderr] Downloaded pin-project-internal v0.4.26 [INFO] [stderr] Downloaded nodrop v0.1.14 [INFO] [stderr] Downloaded error-chain v0.12.4 [INFO] [stderr] Downloaded pin-project v0.4.26 [INFO] [stderr] Downloaded backtrace v0.3.52 [INFO] [stderr] Downloaded reqwest v0.10.8 [INFO] [stderr] Downloaded phf_codegen v0.8.0 [INFO] [stderr] Downloaded precomputed-hash v0.1.1 [INFO] [stderr] Downloaded phf_shared v0.8.0 [INFO] [stderr] Downloaded phf_macros v0.8.0 [INFO] [stderr] Downloaded rustc-demangle v0.1.17 [INFO] [stderr] Downloaded utf-8 v0.7.5 [INFO] [stderr] Downloaded getopts v0.2.21 [INFO] [stderr] Downloaded dtoa-short v0.3.2 [INFO] [stderr] Downloaded hyper v0.13.8 [INFO] [stderr] Downloaded derive_more v0.99.11 [INFO] [stderr] Downloaded rand_pcg v0.2.1 [INFO] [stderr] Downloaded cssparser v0.27.2 [INFO] [stderr] Downloaded stable_deref_trait v1.2.0 [INFO] [stderr] Downloaded markup5ever_rcdom v0.1.0 [INFO] [stderr] Downloaded servo_arc v0.1.1 [INFO] [stderr] Downloaded selectors v0.22.0 [INFO] [stderr] Downloaded bit-vec v0.6.2 [INFO] [stderr] Downloaded html5ever v0.25.1 [INFO] [stderr] Downloaded cssparser-macros v0.6.0 [INFO] [stderr] Downloaded phf_generator v0.8.0 [INFO] [stderr] Downloaded markup5ever v0.10.0 [INFO] [stderr] Downloaded tendril v0.4.1 [INFO] [stderr] Downloaded xml5ever v0.16.1 [INFO] [stderr] Downloaded phf v0.8.0 [INFO] [stderr] Downloaded new_debug_unreachable v1.0.4 [INFO] [stderr] Downloaded mac v0.1.1 [INFO] [stderr] Downloaded siphasher v0.3.3 [INFO] [stderr] Downloaded string_cache_codegen v0.5.1 [INFO] [stderr] Downloaded futf v0.1.4 [INFO] [stderr] Downloaded select v0.5.0 [INFO] [stderr] Downloaded tracing v0.1.21 [INFO] [stderr] Downloaded ego-tree v0.6.2 [INFO] [stderr] Downloaded bit-set v0.5.2 [INFO] [stderr] Downloaded scraper v0.12.0 [INFO] [stderr] Downloaded serde_json v1.0.58 [INFO] [stderr] Downloaded string_cache v0.8.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+1.63.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 284db72d0c231e416c61c1c446da1ab395835b0d6e5a6846b2cacf79b69a812b [INFO] running `Command { std: "docker" "start" "-a" "284db72d0c231e416c61c1c446da1ab395835b0d6e5a6846b2cacf79b69a812b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "284db72d0c231e416c61c1c446da1ab395835b0d6e5a6846b2cacf79b69a812b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "284db72d0c231e416c61c1c446da1ab395835b0d6e5a6846b2cacf79b69a812b", kill_on_drop: false }` [INFO] [stdout] 284db72d0c231e416c61c1c446da1ab395835b0d6e5a6846b2cacf79b69a812b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+1.63.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7ca3636c10deede7e5804784c1dd7d9301f415538f61f49b98f1010d664c53cc [INFO] running `Command { std: "docker" "start" "-a" "7ca3636c10deede7e5804784c1dd7d9301f415538f61f49b98f1010d664c53cc", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.79 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.43 [INFO] [stderr] Compiling getrandom v0.1.15 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling siphasher v0.3.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.9 [INFO] [stderr] Compiling itoa v0.4.6 [INFO] [stderr] Compiling proc-macro-hack v0.5.18 [INFO] [stderr] Compiling serde v1.0.116 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling serde_json v1.0.58 [INFO] [stderr] Compiling futures-core v0.3.6 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling pkg-config v0.3.18 [INFO] [stderr] Compiling serde_derive v1.0.116 [INFO] [stderr] Compiling cc v1.0.61 [INFO] [stderr] Compiling pin-project-internal v0.4.26 [INFO] [stderr] Compiling proc-macro-nested v0.1.6 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling futures-sink v0.3.6 [INFO] [stderr] Compiling bytes v0.5.6 [INFO] [stderr] Compiling new_debug_unreachable v1.0.4 [INFO] [stderr] Compiling pin-project-lite v0.1.10 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling mac v0.1.1 [INFO] [stderr] Compiling arc-swap v0.4.7 [INFO] [stderr] Compiling once_cell v1.4.1 [INFO] [stderr] Compiling futures-io v0.3.6 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling utf-8 v0.7.5 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling openssl v0.10.30 [INFO] [stderr] Compiling dtoa v0.4.6 [INFO] [stderr] Compiling hashbrown v0.9.1 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling native-tls v0.2.4 [INFO] [stderr] Compiling tinyvec v0.3.4 [INFO] [stderr] Compiling try-lock v0.2.3 [INFO] [stderr] Compiling adler v0.2.3 [INFO] [stderr] Compiling gimli v0.22.0 [INFO] [stderr] Compiling httpdate v0.3.2 [INFO] [stderr] Compiling tower-service v0.3.0 [INFO] [stderr] Compiling smallvec v1.4.2 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling encoding_rs v0.8.24 [INFO] [stderr] Compiling rustc-demangle v0.1.17 [INFO] [stderr] Compiling object v0.20.0 [INFO] [stderr] Compiling bit-vec v0.6.2 [INFO] [stderr] Compiling thin-slice v0.1.1 [INFO] [stderr] Compiling unicode-width v0.1.8 [INFO] [stderr] Compiling mime v0.3.16 [INFO] [stderr] Compiling ego-tree v0.6.2 [INFO] [stderr] Compiling base64 v0.12.3 [INFO] [stderr] Compiling ipnet v2.3.0 [INFO] [stderr] Compiling regex-syntax v0.6.18 [INFO] [stderr] Compiling tracing-core v0.1.17 [INFO] [stderr] Compiling thread_local v1.0.1 [INFO] [stderr] Compiling phf_shared v0.8.0 [INFO] [stderr] Compiling indexmap v1.6.0 [INFO] [stderr] Compiling miniz_oxide v0.4.3 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling error-chain v0.12.4 [INFO] [stderr] Compiling futures-channel v0.3.6 [INFO] [stderr] Compiling futf v0.1.4 [INFO] [stderr] Compiling http v0.2.1 [INFO] [stderr] Compiling futures-task v0.3.6 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling dtoa-short v0.3.2 [INFO] [stderr] Compiling unicode-normalization v0.1.13 [INFO] [stderr] Compiling servo_arc v0.1.1 [INFO] [stderr] Compiling getopts v0.2.21 [INFO] [stderr] Compiling bit-set v0.5.2 [INFO] [stderr] Compiling openssl-sys v0.9.58 [INFO] [stderr] Compiling tendril v0.4.1 [INFO] [stderr] Compiling tracing v0.1.21 [INFO] [stderr] Compiling want v0.3.0 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling addr2line v0.13.0 [INFO] [stderr] Compiling aho-corasick v0.7.13 [INFO] [stderr] Compiling net2 v0.2.35 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling signal-hook-registry v1.2.1 [INFO] [stderr] Compiling time v0.1.44 [INFO] [stderr] Compiling socket2 v0.3.15 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling http-body v0.3.1 [INFO] [stderr] Compiling url v2.1.1 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling mio v0.6.22 [INFO] [stderr] Compiling regex v1.3.9 [INFO] [stderr] Compiling mime_guess v2.0.3 [INFO] [stderr] Compiling backtrace v0.3.52 [INFO] [stderr] Compiling rand_pcg v0.2.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling string_cache v0.8.0 [INFO] [stderr] Compiling serde_urlencoded v0.6.1 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling phf_generator v0.8.0 [INFO] [stderr] Compiling phf_codegen v0.8.0 [INFO] [stderr] Compiling string_cache_codegen v0.5.1 [INFO] [stderr] Compiling selectors v0.22.0 [INFO] [stderr] Compiling phf_macros v0.8.0 [INFO] [stderr] Compiling futures-macro v0.3.6 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Compiling html5ever v0.25.1 [INFO] [stderr] Compiling cssparser v0.27.2 [INFO] [stderr] Compiling cssparser-macros v0.6.0 [INFO] [stderr] Compiling derive_more v0.99.11 [INFO] [stderr] Compiling tokio v0.2.22 [INFO] [stderr] Compiling phf v0.8.0 [INFO] [stderr] Compiling pin-project v0.4.26 [INFO] [stderr] Compiling futures-util v0.3.6 [INFO] [stderr] Compiling tokio-util v0.3.1 [INFO] [stderr] Compiling tokio-tls v0.3.1 [INFO] [stderr] Compiling markup5ever v0.10.0 [INFO] [stderr] Compiling h2 v0.2.6 [INFO] [stderr] Compiling futures-executor v0.3.6 [INFO] [stderr] Compiling futures v0.3.6 [INFO] [stderr] Compiling xml5ever v0.16.1 [INFO] [stderr] Compiling markup5ever_rcdom v0.1.0 [INFO] [stderr] Compiling scraper v0.12.0 [INFO] [stderr] Compiling select v0.5.0 [INFO] [stderr] Compiling hyper v0.13.8 [INFO] [stderr] Compiling hyper-tls v0.4.3 [INFO] [stderr] Compiling reqwest v0.10.8 [INFO] [stderr] Compiling wiki-tree v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error_chain::error_chain` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use error_chain::error_chain; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::executor` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::executor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | if (firsLink != previousUrl && !visited.contains_key(&*firsLink)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 31 - if (firsLink != previousUrl && !visited.contains_key(&*firsLink)) { [INFO] [stdout] 31 + if firsLink != previousUrl && !visited.contains_key(&*firsLink) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | if (p_inside != "" || !p_inside.is_empty()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 46 - if (p_inside != "" || !p_inside.is_empty()) { [INFO] [stdout] 46 + if p_inside != "" || !p_inside.is_empty() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:53:20 [INFO] [stdout] | [INFO] [stdout] 53 | ...if (!link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File")... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 53 - if (!link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File")) { [INFO] [stdout] 53 + if !link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File") { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `firstLink` [INFO] [stdout] --> src/main.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let firstLink = recursiveCall(firsLink.as_str(), url.to_string(), visited).unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_firstLink` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut baseUrl = "/wiki/Paper"; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut previousUrl = ""; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut visited = HashMap::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | let mut p_inside = element.inner_html().replace("\n", ""); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `baseUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | let mut baseUrl = "/wiki/Paper"; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `base_url` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `previousUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | let mut previousUrl = ""; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `previous_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursiveCall` should have a snake case name [INFO] [stdout] --> src/main.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn recursiveCall(url: &str, previousUrl: String, mut visited: HashMap) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `recursive_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `previousUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:21:29 [INFO] [stdout] | [INFO] [stdout] 21 | fn recursiveCall(url: &str, previousUrl: String, mut visited: HashMap) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `previous_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firsLink` should have a snake case name [INFO] [stdout] --> src/main.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let firsLink = parseFirstUrl(body); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `firs_link` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firstLink` should have a snake case name [INFO] [stdout] --> src/main.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let firstLink = recursiveCall(firsLink.as_str(), url.to_string(), visited).unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `first_link` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parseFirstUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:37:4 [INFO] [stdout] | [INFO] [stdout] 37 | fn parseFirstUrl(html: String) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `parse_first_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firstLink` should have a snake case name [INFO] [stdout] --> src/main.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let firstLink = ""; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `first_link` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3m 31s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: tendril v0.4.1 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "7ca3636c10deede7e5804784c1dd7d9301f415538f61f49b98f1010d664c53cc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7ca3636c10deede7e5804784c1dd7d9301f415538f61f49b98f1010d664c53cc", kill_on_drop: false }` [INFO] [stdout] 7ca3636c10deede7e5804784c1dd7d9301f415538f61f49b98f1010d664c53cc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+1.63.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4b0e2d5237bc12fa3b8c568691ce118a3d448c9f28b5b72bf1f82a5adf523c5a [INFO] running `Command { std: "docker" "start" "-a" "4b0e2d5237bc12fa3b8c568691ce118a3d448c9f28b5b72bf1f82a5adf523c5a", kill_on_drop: false }` [INFO] [stderr] Compiling wiki-tree v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error_chain::error_chain` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use error_chain::error_chain; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::executor` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::executor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | if (firsLink != previousUrl && !visited.contains_key(&*firsLink)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 31 - if (firsLink != previousUrl && !visited.contains_key(&*firsLink)) { [INFO] [stdout] 31 + if firsLink != previousUrl && !visited.contains_key(&*firsLink) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | if (p_inside != "" || !p_inside.is_empty()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 46 - if (p_inside != "" || !p_inside.is_empty()) { [INFO] [stdout] 46 + if p_inside != "" || !p_inside.is_empty() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:53:20 [INFO] [stdout] | [INFO] [stdout] 53 | ...if (!link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File")... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 53 - if (!link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File")) { [INFO] [stdout] 53 + if !link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File") { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `firstLink` [INFO] [stdout] --> src/main.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let firstLink = recursiveCall(firsLink.as_str(), url.to_string(), visited).unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_firstLink` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut baseUrl = "/wiki/Paper"; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut previousUrl = ""; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut visited = HashMap::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | let mut p_inside = element.inner_html().replace("\n", ""); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `baseUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | let mut baseUrl = "/wiki/Paper"; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `base_url` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `previousUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | let mut previousUrl = ""; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `previous_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursiveCall` should have a snake case name [INFO] [stdout] --> src/main.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn recursiveCall(url: &str, previousUrl: String, mut visited: HashMap) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `recursive_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `previousUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:21:29 [INFO] [stdout] | [INFO] [stdout] 21 | fn recursiveCall(url: &str, previousUrl: String, mut visited: HashMap) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `previous_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firsLink` should have a snake case name [INFO] [stdout] --> src/main.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let firsLink = parseFirstUrl(body); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `firs_link` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firstLink` should have a snake case name [INFO] [stdout] --> src/main.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let firstLink = recursiveCall(firsLink.as_str(), url.to_string(), visited).unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `first_link` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parseFirstUrl` should have a snake case name [INFO] [stdout] --> src/main.rs:37:4 [INFO] [stdout] | [INFO] [stdout] 37 | fn parseFirstUrl(html: String) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `parse_first_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firstLink` should have a snake case name [INFO] [stdout] --> src/main.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let firstLink = ""; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `first_link` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.27s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: tendril v0.4.1 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "4b0e2d5237bc12fa3b8c568691ce118a3d448c9f28b5b72bf1f82a5adf523c5a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b0e2d5237bc12fa3b8c568691ce118a3d448c9f28b5b72bf1f82a5adf523c5a", kill_on_drop: false }` [INFO] [stdout] 4b0e2d5237bc12fa3b8c568691ce118a3d448c9f28b5b72bf1f82a5adf523c5a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+1.63.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a0c84659f36de6b6cad2a182a099c5669d8ad85a4a0681e8e46266814054aa1e [INFO] running `Command { std: "docker" "start" "-a" "a0c84659f36de6b6cad2a182a099c5669d8ad85a4a0681e8e46266814054aa1e", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `regex::Regex` [INFO] [stderr] --> src/main.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use regex::Regex; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `error_chain::error_chain` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use error_chain::error_chain; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/main.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `futures::executor` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use futures::executor; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::borrow::Borrow` [INFO] [stderr] --> src/main.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::borrow::Borrow; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:31:8 [INFO] [stderr] | [INFO] [stderr] 31 | if (firsLink != previousUrl && !visited.contains_key(&*firsLink)) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 31 - if (firsLink != previousUrl && !visited.contains_key(&*firsLink)) { [INFO] [stderr] 31 + if firsLink != previousUrl && !visited.contains_key(&*firsLink) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | if (p_inside != "" || !p_inside.is_empty()) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 46 - if (p_inside != "" || !p_inside.is_empty()) { [INFO] [stderr] 46 + if p_inside != "" || !p_inside.is_empty() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:53:20 [INFO] [stderr] | [INFO] [stderr] 53 | ...if (!link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File")... [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 53 - if (!link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File")) { [INFO] [stderr] 53 + if !link.contains("#") && !link.contains("Latin") &&!link.contains("wikimedia") &&!link.contains("wiktionary")&&!link.contains("Greek")&&!link.contains("English")&&!link.contains("File") { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `firstLink` [INFO] [stderr] --> src/main.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let firstLink = recursiveCall(firsLink.as_str(), url.to_string(), visited).unwrap(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_firstLink` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | let mut baseUrl = "/wiki/Paper"; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | let mut previousUrl = ""; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | let mut visited = HashMap::new(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let mut p_inside = element.inner_html().replace("\n", ""); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable `baseUrl` should have a snake case name [INFO] [stderr] --> src/main.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | let mut baseUrl = "/wiki/Paper"; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `base_url` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `previousUrl` should have a snake case name [INFO] [stderr] --> src/main.rs:14:13 [INFO] [stderr] | [INFO] [stderr] 14 | let mut previousUrl = ""; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `previous_url` [INFO] [stderr] [INFO] [stderr] warning: function `recursiveCall` should have a snake case name [INFO] [stderr] --> src/main.rs:21:4 [INFO] [stderr] | [INFO] [stderr] 21 | fn recursiveCall(url: &str, previousUrl: String, mut visited: HashMap) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `recursive_call` [INFO] [stderr] [INFO] [stderr] warning: variable `previousUrl` should have a snake case name [INFO] [stderr] --> src/main.rs:21:29 [INFO] [stderr] | [INFO] [stderr] 21 | fn recursiveCall(url: &str, previousUrl: String, mut visited: HashMap) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `previous_url` [INFO] [stderr] [INFO] [stderr] warning: variable `firsLink` should have a snake case name [INFO] [stderr] --> src/main.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | let firsLink = parseFirstUrl(body); [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `firs_link` [INFO] [stderr] [INFO] [stderr] warning: variable `firstLink` should have a snake case name [INFO] [stderr] --> src/main.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let firstLink = recursiveCall(firsLink.as_str(), url.to_string(), visited).unwrap(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `first_link` [INFO] [stderr] [INFO] [stderr] warning: function `parseFirstUrl` should have a snake case name [INFO] [stderr] --> src/main.rs:37:4 [INFO] [stderr] | [INFO] [stderr] 37 | fn parseFirstUrl(html: String) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `parse_first_url` [INFO] [stderr] [INFO] [stderr] warning: variable `firstLink` should have a snake case name [INFO] [stderr] --> src/main.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | let firstLink = ""; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `first_link` [INFO] [stderr] [INFO] [stderr] warning: `wiki-tree` (bin "wiki-tree" test) generated 21 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.18s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: tendril v0.4.1 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3` [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/wiki_tree-86b0a2686211d566) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "a0c84659f36de6b6cad2a182a099c5669d8ad85a4a0681e8e46266814054aa1e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a0c84659f36de6b6cad2a182a099c5669d8ad85a4a0681e8e46266814054aa1e", kill_on_drop: false }` [INFO] [stdout] a0c84659f36de6b6cad2a182a099c5669d8ad85a4a0681e8e46266814054aa1e