[INFO] updating cached repository https://github.com/svenslaggare/searchengine [INFO] running `Command { std: "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", kill_on_drop: false }` [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c31e1f33a8fbddef5881bb1314296dabfce8ad0f [INFO] checking svenslaggare/searchengine against try#c8bdaa84ec1b37f18f30375e196a65b7602f3790 for pr-73345 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsvenslaggare%2Fsearchengine" "/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/svenslaggare/searchengine on toolchain c8bdaa84ec1b37f18f30375e196a65b7602f3790 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+c8bdaa84ec1b37f18f30375e196a65b7602f3790" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/svenslaggare/searchengine [INFO] finished tweaking git repo https://github.com/svenslaggare/searchengine [INFO] tweaked toml for git repo https://github.com/svenslaggare/searchengine written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/svenslaggare/searchengine already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+c8bdaa84ec1b37f18f30375e196a65b7602f3790" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:6c9ffe128752d56c8d75334ed354142a5229917ed99767f56566dd8e857ad726" "/opt/rustwide/cargo-home/bin/cargo" "+c8bdaa84ec1b37f18f30375e196a65b7602f3790" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 563d4543c0c5adbe547974a11f605059d1afb198a7e567fb1aa3628156195bd8 [INFO] running `Command { std: "docker" "start" "-a" "563d4543c0c5adbe547974a11f605059d1afb198a7e567fb1aa3628156195bd8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "563d4543c0c5adbe547974a11f605059d1afb198a7e567fb1aa3628156195bd8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "563d4543c0c5adbe547974a11f605059d1afb198a7e567fb1aa3628156195bd8", kill_on_drop: false }` [INFO] [stdout] 563d4543c0c5adbe547974a11f605059d1afb198a7e567fb1aa3628156195bd8 [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" "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@sha256:6c9ffe128752d56c8d75334ed354142a5229917ed99767f56566dd8e857ad726" "/opt/rustwide/cargo-home/bin/cargo" "+c8bdaa84ec1b37f18f30375e196a65b7602f3790" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7879fdcf818fba9ddbeece8456f0ebdfced1a97957418147f33b89dc4bc4ebc4 [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" "7879fdcf818fba9ddbeece8456f0ebdfced1a97957418147f33b89dc4bc4ebc4", kill_on_drop: false }` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling libc v0.2.69 [INFO] [stderr] Compiling proc-macro2 v1.0.10 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling pkg-config v0.3.17 [INFO] [stderr] Checking bytes v0.5.4 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Checking itoa v0.4.5 [INFO] [stderr] Checking futures-io v0.3.4 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling openssl v0.10.29 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Checking smallvec v1.3.0 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Checking matches v0.1.8 [INFO] [stderr] Compiling native-tls v0.2.4 [INFO] [stderr] Checking openssl-probe v0.1.2 [INFO] [stderr] Checking percent-encoding v2.1.0 [INFO] [stderr] Checking dtoa v0.4.5 [INFO] [stderr] Checking mime v0.3.16 [INFO] [stderr] Checking regex-syntax v0.6.17 [INFO] [stderr] Checking base64 v0.11.0 [INFO] [stderr] Checking futures-channel v0.3.4 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Checking unicode-bidi v0.3.4 [INFO] [stderr] Checking unicode-normalization v0.1.12 [INFO] [stderr] Checking encoding_rs v0.8.22 [INFO] [stderr] Checking http v0.2.1 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling indexmap v1.3.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling openssl-sys v0.9.55 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Checking aho-corasick v0.7.10 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Compiling mime_guess v2.0.3 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Checking time v0.1.42 [INFO] [stderr] Checking crossbeam-channel v0.4.2 [INFO] [stderr] Checking crossbeam-queue v0.2.1 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking mio v0.6.21 [INFO] [stderr] Checking crossbeam-deque v0.7.3 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking crossbeam v0.7.3 [INFO] [stderr] Checking url v2.1.1 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking http-body v0.3.1 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking regex v1.3.7 [INFO] [stderr] Checking tempfile v3.1.0 [INFO] [stderr] Checking serde_json v1.0.51 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Compiling futures-macro v0.3.4 [INFO] [stderr] Compiling pin-project-internal v0.4.9 [INFO] [stderr] Checking tokio v0.2.18 [INFO] [stderr] Checking futures-util v0.3.4 [INFO] [stderr] Checking pin-project v0.4.9 [INFO] [stderr] Checking futures-executor v0.3.4 [INFO] [stderr] Checking futures v0.3.4 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking tokio-tls v0.3.0 [INFO] [stderr] Checking h2 v0.2.4 [INFO] [stderr] Checking hyper v0.13.5 [INFO] [stderr] Checking hyper-tls v0.4.1 [INFO] [stderr] Checking reqwest v0.10.4 [INFO] [stderr] Checking searchengine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `BoxFuture` [INFO] [stdout] --> src/crawler.rs:7:23 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/content_extractor.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/tokenizer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::tokenizer::{Tokenizer, Token, Tokens}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `BufWriter` [INFO] [stdout] --> src/document.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{BufWriter, Write, BufRead, BufReader, Seek, Read, SeekFrom}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/indexer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tokens` [INFO] [stdout] --> src/indexer.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::tokenizer::{Tokens, Token}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMapIndex` [INFO] [stdout] --> src/indexer.rs:6:27 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::index::{Index, HashMapIndex}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `create_test_document_storage` [INFO] [stdout] --> src/indexer.rs:8:50 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::document::{Document, DocumentStorage, create_test_document_storage}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/searcher.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `create_test_index` [INFO] [stdout] --> src/searcher.rs:6:31 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::indexer::{Indexer, create_test_index}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Document`, `create_test_document_storage` [INFO] [stdout] --> src/searcher.rs:7:23 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::document::{Document, create_test_document_storage}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BTreeMap` [INFO] [stdout] --> src/ranker.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, BTreeMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tokenizer::Tokens` [INFO] [stdout] --> src/ranker.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tokenizer::Tokens; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let mut crawler = Crawler::new(); [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: unused import: `BoxFuture` [INFO] [stdout] --> src/crawler.rs:7:23 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/content_extractor.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/tokenizer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::tokenizer::{Tokenizer, Token, Tokens}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `BufWriter` [INFO] [stdout] --> src/document.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{BufWriter, Write, BufRead, BufReader, Seek, Read, SeekFrom}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/indexer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tokens` [INFO] [stdout] --> src/indexer.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::tokenizer::{Tokens, Token}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMapIndex` [INFO] [stdout] --> src/indexer.rs:6:27 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::index::{Index, HashMapIndex}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/searcher.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BTreeMap` [INFO] [stdout] --> src/ranker.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, BTreeMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tokenizer::Tokens` [INFO] [stdout] --> src/ranker.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tokenizer::Tokens; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FutureExt` [INFO] [stdout] --> src/crawler.rs:7:34 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Index` [INFO] [stdout] --> src/content_extractor.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Index; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let mut crawler = Crawler::new(); [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:114:9 [INFO] [stdout] | [INFO] [stdout] 114 | let mut indexer = Indexer::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/indexer.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | let mut index_config = BlockIndexConfig::default(None); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `LinkExtractor` [INFO] [stdout] --> src/crawler.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct LinkExtractor { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | fn new(accept: fn(&str) -> bool) -> LinkExtractor { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `extract` [INFO] [stdout] --> src/crawler.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | fn extract(&self, base_url: &str, content: &str) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `CrawledLinks` [INFO] [stdout] --> src/crawler.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | struct CrawledLinks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | fn new() -> CrawledLinks { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `len` [INFO] [stdout] --> src/crawler.rs:54:8 [INFO] [stdout] | [INFO] [stdout] 54 | fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `contains` [INFO] [stdout] --> src/crawler.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | fn contains(&self, link: &str) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `insert` [INFO] [stdout] --> src/crawler.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | fn insert(&mut self, link: String) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_save_path` [INFO] [stdout] --> src/crawler.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn get_save_path(parsed_url: &Url) -> (String, String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `CrawlerWorker` [INFO] [stdout] --> src/crawler.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct CrawlerWorker { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 92 | fn new(crawled_links: Arc>, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `crawl` [INFO] [stdout] --> src/crawler.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | async fn crawl(&self, url: String) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Crawler` [INFO] [stdout] --> src/crawler.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct Crawler { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 163 | pub fn new() -> Crawler { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `run` [INFO] [stdout] --> src/crawler.rs:177:12 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn run(&self, start_url: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Start` [INFO] [stdout] --> src/content_extractor.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | Start, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `End` [INFO] [stdout] --> src/content_extractor.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | End [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Content` [INFO] [stdout] --> src/content_extractor.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct Content { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/content_extractor.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn new(title: Option, body: String) -> Content { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `ContentExtractor` [INFO] [stdout] --> src/content_extractor.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct ContentExtractor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/content_extractor.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn new() -> ContentExtractor { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `extract_tags` [INFO] [stdout] --> src/content_extractor.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | fn extract_tags(&self, content: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `extract` [INFO] [stdout] --> src/content_extractor.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn extract(&self, content: &str) -> Content { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `TagStackEntry` [INFO] [stdout] --> src/content_extractor.rs:117:16 [INFO] [stdout] | [INFO] [stdout] 117 | struct TagStackEntry { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tokenizer` [INFO] [stdout] --> src/tokenizer.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Tokenizer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/tokenizer.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new() -> Tokenizer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tokenize` [INFO] [stdout] --> src/tokenizer.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn tokenize(&self, content: &str) -> Tokens { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `ParsedContent` [INFO] [stdout] --> src/parser.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ParsedContent { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/parser.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(title: Option, tokens: Tokens) -> ParsedContent { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Parser` [INFO] [stdout] --> src/parser.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Parser { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/parser.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new() -> Parser { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse` [INFO] [stdout] --> src/parser.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn parse(&self, content: &str) -> ParsedContent { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/document.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(title: String, tokens: Tokens) -> Document { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tokens` [INFO] [stdout] --> src/document.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn tokens(&self) -> &Tokens { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/document.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn new(filename: &str) -> DocumentFileStorage { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_tempfile_name` [INFO] [stdout] --> src/document.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn get_tempfile_name() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `create_test_document_storage` [INFO] [stdout] --> src/document.rs:150:8 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn create_test_document_storage() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/index.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new() -> HashMapIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `next_document_id` [INFO] [stdout] --> src/indexer.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | next_document_id: DocumentId [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_to_index` [INFO] [stdout] --> src/indexer.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | fn add_to_index(&mut self, term: &Term, entry: TermDocumentEntry) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_document` [INFO] [stdout] --> src/indexer.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn add_document(&mut self, document: Document) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_stats` [INFO] [stdout] --> src/indexer.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn print_stats(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `create_test_index` [INFO] [stdout] --> src/indexer.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn create_test_index() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `testing` [INFO] [stdout] --> src/block_index.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | fn testing() -> BlockIndexConfig { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `intersection_search_documents` [INFO] [stdout] --> src/searcher.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn intersection_search_documents(&self, indexer: &Indexer, query: Tokens) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `visit_dirs` [INFO] [stdout] --> src/main.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn visit_dirs(dir: &Path, cb: &mut F) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `main_crawl` [INFO] [stdout] --> src/main.rs:39:10 [INFO] [stdout] | [INFO] [stdout] 39 | async fn main_crawl() -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `main_index_from_files` [INFO] [stdout] --> src/main.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn main_index_from_files() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 67 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FutureExt` [INFO] [stdout] --> src/crawler.rs:7:34 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Index` [INFO] [stdout] --> src/content_extractor.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Index; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:114:9 [INFO] [stdout] | [INFO] [stdout] 114 | let mut indexer = Indexer::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/document.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | let mut document_storage2 = DocumentFileStorage::from_existing(&filename); [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/indexer.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | let mut index_config = BlockIndexConfig::default(None); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `LinkExtractor` [INFO] [stdout] --> src/crawler.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct LinkExtractor { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | fn new(accept: fn(&str) -> bool) -> LinkExtractor { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `extract` [INFO] [stdout] --> src/crawler.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | fn extract(&self, base_url: &str, content: &str) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `CrawledLinks` [INFO] [stdout] --> src/crawler.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | struct CrawledLinks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | fn new() -> CrawledLinks { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `len` [INFO] [stdout] --> src/crawler.rs:54:8 [INFO] [stdout] | [INFO] [stdout] 54 | fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `contains` [INFO] [stdout] --> src/crawler.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | fn contains(&self, link: &str) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `insert` [INFO] [stdout] --> src/crawler.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | fn insert(&mut self, link: String) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_save_path` [INFO] [stdout] --> src/crawler.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn get_save_path(parsed_url: &Url) -> (String, String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `CrawlerWorker` [INFO] [stdout] --> src/crawler.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct CrawlerWorker { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 92 | fn new(crawled_links: Arc>, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `crawl` [INFO] [stdout] --> src/crawler.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | async fn crawl(&self, url: String) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Crawler` [INFO] [stdout] --> src/crawler.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct Crawler { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crawler.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 163 | pub fn new() -> Crawler { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `run` [INFO] [stdout] --> src/crawler.rs:177:12 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn run(&self, start_url: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/index.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new() -> HashMapIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_stats` [INFO] [stdout] --> src/indexer.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn print_stats(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `visit_dirs` [INFO] [stdout] --> src/main.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn visit_dirs(dir: &Path, cb: &mut F) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `main_crawl` [INFO] [stdout] --> src/main.rs:39:10 [INFO] [stdout] | [INFO] [stdout] 39 | async fn main_crawl() -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `main_index_from_files` [INFO] [stdout] --> src/main.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn main_index_from_files() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 37 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 42s [INFO] running `Command { std: "docker" "inspect" "7879fdcf818fba9ddbeece8456f0ebdfced1a97957418147f33b89dc4bc4ebc4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7879fdcf818fba9ddbeece8456f0ebdfced1a97957418147f33b89dc4bc4ebc4", kill_on_drop: false }` [INFO] [stdout] 7879fdcf818fba9ddbeece8456f0ebdfced1a97957418147f33b89dc4bc4ebc4