[INFO] updating cached repository https://github.com/svenslaggare/searchengine [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] c31e1f33a8fbddef5881bb1314296dabfce8ad0f [INFO] checking svenslaggare/searchengine against try#d7b51666469c792a8a3f40849607739bae1e705e for pr-71665 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsvenslaggare%2Fsearchengine" "/workspace/builds/worker-2/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/svenslaggare/searchengine on toolchain d7b51666469c792a8a3f40849607739bae1e705e [INFO] running `"/workspace/cargo-home/bin/cargo" "+d7b51666469c792a8a3f40849607739bae1e705e" "read-manifest" "--manifest-path" "Cargo.toml"` [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-2/source/Cargo.toml [INFO] crate git repo https://github.com/svenslaggare/searchengine already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+d7b51666469c792a8a3f40849607739bae1e705e" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+d7b51666469c792a8a3f40849607739bae1e705e" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 60a1949365bc00e042e898484f2915d32a1b2183f7339a2d1306e9799f1a53bd [INFO] running `"docker" "start" "-a" "60a1949365bc00e042e898484f2915d32a1b2183f7339a2d1306e9799f1a53bd"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling libc v0.2.69 [INFO] [stderr] Compiling proc-macro2 v1.0.10 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Checking futures-core v0.3.4 [INFO] [stderr] Compiling proc-macro-nested v0.1.4 [INFO] [stderr] Checking futures-sink v0.3.4 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Checking bytes v0.5.4 [INFO] [stderr] Compiling proc-macro-hack v0.5.15 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Checking arc-swap v0.4.5 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking pin-project-lite v0.1.4 [INFO] [stderr] Checking futures-io v0.3.4 [INFO] [stderr] Checking futures-task v0.3.4 [INFO] [stderr] Checking pin-utils v0.1.0-alpha.4 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Checking matches v0.1.8 [INFO] [stderr] Compiling native-tls v0.2.4 [INFO] [stderr] Compiling httparse v1.3.4 [INFO] [stderr] Checking try-lock v0.2.2 [INFO] [stderr] Checking openssl-probe v0.1.2 [INFO] [stderr] Compiling ryu v1.0.3 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Checking percent-encoding v2.1.0 [INFO] [stderr] Checking ppv-lite86 v0.2.6 [INFO] [stderr] Checking tower-service v0.3.0 [INFO] [stderr] Checking mime v0.3.16 [INFO] [stderr] Checking base64 v0.11.0 [INFO] [stderr] Checking regex-syntax v0.6.17 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Compiling openssl-sys v0.9.55 [INFO] [stderr] Checking futures-channel v0.3.4 [INFO] [stderr] Checking http v0.2.1 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Checking unicode-bidi v0.3.4 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Checking encoding_rs v0.8.22 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Checking aho-corasick v0.7.10 [INFO] [stderr] Checking serde_json v1.0.51 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Checking num_cpus v1.13.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] Compiling openssl v0.10.29 [INFO] [stderr] Checking url v2.1.1 [INFO] [stderr] Compiling mime_guess v2.0.3 [INFO] [stderr] Checking http-body v0.3.1 [INFO] [stderr] Checking mio v0.6.21 [INFO] [stderr] Checking regex v1.3.7 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking crossbeam-deque v0.7.3 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Checking crossbeam v0.7.3 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking tempfile v3.1.0 [INFO] [stderr] Compiling futures-macro v0.3.4 [INFO] [stderr] Compiling tokio-macros v0.2.5 [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 tokio-util v0.3.1 [INFO] [stderr] Checking tokio-tls v0.3.0 [INFO] [stderr] Checking futures-executor v0.3.4 [INFO] [stderr] Checking futures v0.3.4 [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] [stderr] warning: unused import: `BoxFuture` [INFO] [stderr] --> src/crawler.rs:7:23 [INFO] [stderr] | [INFO] [stderr] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FromIterator` [INFO] [stderr] --> src/content_extractor.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::iter::FromIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `regex::Regex` [INFO] [stderr] --> src/tokenizer.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use regex::Regex; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Token` [INFO] [stderr] --> src/parser.rs:2:35 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::tokenizer::{Tokenizer, Token, Tokens}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BufRead`, `BufReader`, `BufWriter` [INFO] [stderr] --> src/document.rs:2:15 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io::{BufWriter, Write, BufRead, BufReader, Seek, Read, SeekFrom}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/indexer.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Tokens` [INFO] [stderr] --> src/indexer.rs:4:24 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::tokenizer::{Tokens, Token}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashMapIndex` [INFO] [stderr] --> src/indexer.rs:6:27 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::index::{Index, HashMapIndex}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashMap` [INFO] [stderr] --> src/searcher.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BTreeMap` [INFO] [stderr] --> src/ranker.rs:1:33 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::{HashMap, BTreeMap}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::tokenizer::Tokens` [INFO] [stderr] --> src/ranker.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::tokenizer::Tokens; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BoxFuture` [INFO] [stderr] --> src/crawler.rs:7:23 [INFO] [stderr] | [INFO] [stderr] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FromIterator` [INFO] [stderr] --> src/content_extractor.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::iter::FromIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `regex::Regex` [INFO] [stderr] --> src/tokenizer.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use regex::Regex; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Token` [INFO] [stderr] --> src/parser.rs:2:35 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::tokenizer::{Tokenizer, Token, Tokens}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BufRead`, `BufReader`, `BufWriter` [INFO] [stderr] --> src/document.rs:2:15 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io::{BufWriter, Write, BufRead, BufReader, Seek, Read, SeekFrom}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/indexer.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Tokens` [INFO] [stderr] --> src/indexer.rs:4:24 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::tokenizer::{Tokens, Token}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashMapIndex` [INFO] [stderr] --> src/indexer.rs:6:27 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::index::{Index, HashMapIndex}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `create_test_document_storage` [INFO] [stderr] --> src/indexer.rs:8:50 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::document::{Document, DocumentStorage, create_test_document_storage}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashMap` [INFO] [stderr] --> src/searcher.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `create_test_index` [INFO] [stderr] --> src/searcher.rs:6:31 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::indexer::{Indexer, create_test_index}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Document`, `create_test_document_storage` [INFO] [stderr] --> src/searcher.rs:7:23 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::document::{Document, create_test_document_storage}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BTreeMap` [INFO] [stderr] --> src/ranker.rs:1:33 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::{HashMap, BTreeMap}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::tokenizer::Tokens` [INFO] [stderr] --> src/ranker.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::tokenizer::Tokens; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | let mut crawler = Crawler::new(); [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:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | let mut crawler = Crawler::new(); [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: unused import: `FutureExt` [INFO] [stderr] --> src/crawler.rs:7:34 [INFO] [stderr] | [INFO] [stderr] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/content_extractor.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:114:9 [INFO] [stderr] | [INFO] [stderr] 114 | let mut indexer = Indexer::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/indexer.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | let mut index_config = BlockIndexConfig::default(None); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `LinkExtractor` [INFO] [stderr] --> src/crawler.rs:10:8 [INFO] [stderr] | [INFO] [stderr] 10 | struct LinkExtractor { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | fn new(accept: fn(&str) -> bool) -> LinkExtractor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `extract` [INFO] [stderr] --> src/crawler.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | fn extract(&self, base_url: &str, content: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `CrawledLinks` [INFO] [stderr] --> src/crawler.rs:43:8 [INFO] [stderr] | [INFO] [stderr] 43 | struct CrawledLinks { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | fn new() -> CrawledLinks { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `len` [INFO] [stderr] --> src/crawler.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | fn len(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `contains` [INFO] [stderr] --> src/crawler.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | fn contains(&self, link: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `insert` [INFO] [stderr] --> src/crawler.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | fn insert(&mut self, link: String) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_save_path` [INFO] [stderr] --> src/crawler.rs:73:8 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn get_save_path(parsed_url: &Url) -> (String, String) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `CrawlerWorker` [INFO] [stderr] --> src/crawler.rs:82:8 [INFO] [stderr] | [INFO] [stderr] 82 | struct CrawlerWorker { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | / fn new(crawled_links: Arc>, [INFO] [stderr] 93 | | crawl_queue: Arc>, [INFO] [stderr] 94 | | results_sender: crossbeam::Sender>) -> CrawlerWorker { [INFO] [stderr] 95 | | CrawlerWorker { [INFO] [stderr] ... | [INFO] [stderr] 102 | | } [INFO] [stderr] 103 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `crawl` [INFO] [stderr] --> src/crawler.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 105 | async fn crawl(&self, url: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Crawler` [INFO] [stderr] --> src/crawler.rs:155:12 [INFO] [stderr] | [INFO] [stderr] 155 | pub struct Crawler { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:163:5 [INFO] [stderr] | [INFO] [stderr] 163 | pub fn new() -> Crawler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `run` [INFO] [stderr] --> src/crawler.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn run(&self, start_url: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Start` [INFO] [stderr] --> src/content_extractor.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | Start, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `End` [INFO] [stderr] --> src/content_extractor.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | End [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Content` [INFO] [stderr] --> src/content_extractor.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 20 | pub struct Content { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/content_extractor.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn new(title: Option, body: String) -> Content { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ContentExtractor` [INFO] [stderr] --> src/content_extractor.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | pub struct ContentExtractor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/content_extractor.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn new() -> ContentExtractor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `extract_tags` [INFO] [stderr] --> src/content_extractor.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | fn extract_tags(&self, content: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `extract` [INFO] [stderr] --> src/content_extractor.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | pub fn extract(&self, content: &str) -> Content { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `TagStackEntry` [INFO] [stderr] --> src/content_extractor.rs:117:16 [INFO] [stderr] | [INFO] [stderr] 117 | struct TagStackEntry { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Tokenizer` [INFO] [stderr] --> src/tokenizer.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Tokenizer { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/tokenizer.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new() -> Tokenizer { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `tokenize` [INFO] [stderr] --> src/tokenizer.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn tokenize(&self, content: &str) -> Tokens { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ParsedContent` [INFO] [stderr] --> src/parser.rs:4:12 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct ParsedContent { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/parser.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn new(title: Option, tokens: Tokens) -> ParsedContent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Parser` [INFO] [stderr] --> src/parser.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct Parser { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/parser.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn new() -> Parser { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `parse` [INFO] [stderr] --> src/parser.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn parse(&self, content: &str) -> ParsedContent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/document.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new(title: String, tokens: Tokens) -> Document { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `tokens` [INFO] [stderr] --> src/document.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn tokens(&self) -> &Tokens { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/document.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn new(filename: &str) -> DocumentFileStorage { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_tempfile_name` [INFO] [stderr] --> src/document.rs:138:4 [INFO] [stderr] | [INFO] [stderr] 138 | fn get_tempfile_name() -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `create_test_document_storage` [INFO] [stderr] --> src/document.rs:150:8 [INFO] [stderr] | [INFO] [stderr] 150 | pub fn create_test_document_storage() -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/index.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn new() -> HashMapIndex { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `next_document_id` [INFO] [stderr] --> src/indexer.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | next_document_id: DocumentId [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `add_to_index` [INFO] [stderr] --> src/indexer.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | fn add_to_index(&mut self, term: &Term, entry: TermDocumentEntry) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `add_document` [INFO] [stderr] --> src/indexer.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn add_document(&mut self, document: Document) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `print_stats` [INFO] [stderr] --> src/indexer.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn print_stats(&self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `create_test_index` [INFO] [stderr] --> src/indexer.rs:93:8 [INFO] [stderr] | [INFO] [stderr] 93 | pub fn create_test_index() -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `testing` [INFO] [stderr] --> src/block_index.rs:380:5 [INFO] [stderr] | [INFO] [stderr] 380 | fn testing() -> BlockIndexConfig { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `intersection_search_documents` [INFO] [stderr] --> src/searcher.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn intersection_search_documents(&self, indexer: &Indexer, query: Tokens) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `visit_dirs` [INFO] [stderr] --> src/main.rs:24:4 [INFO] [stderr] | [INFO] [stderr] 24 | fn visit_dirs(dir: &Path, cb: &mut F) -> std::io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main_crawl` [INFO] [stderr] --> src/main.rs:39:10 [INFO] [stderr] | [INFO] [stderr] 39 | async fn main_crawl() -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main_index_from_files` [INFO] [stderr] --> src/main.rs:81:4 [INFO] [stderr] | [INFO] [stderr] 81 | fn main_index_from_files() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 67 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `FutureExt` [INFO] [stderr] --> src/crawler.rs:7:34 [INFO] [stderr] | [INFO] [stderr] 7 | use futures::future::{BoxFuture, FutureExt}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/content_extractor.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:114:9 [INFO] [stderr] | [INFO] [stderr] 114 | let mut indexer = Indexer::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/document.rs:206:9 [INFO] [stderr] | [INFO] [stderr] 206 | let mut document_storage2 = DocumentFileStorage::from_existing(&filename); [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/indexer.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | let mut index_config = BlockIndexConfig::default(None); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `LinkExtractor` [INFO] [stderr] --> src/crawler.rs:10:8 [INFO] [stderr] | [INFO] [stderr] 10 | struct LinkExtractor { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | fn new(accept: fn(&str) -> bool) -> LinkExtractor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `extract` [INFO] [stderr] --> src/crawler.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | fn extract(&self, base_url: &str, content: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `CrawledLinks` [INFO] [stderr] --> src/crawler.rs:43:8 [INFO] [stderr] | [INFO] [stderr] 43 | struct CrawledLinks { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | fn new() -> CrawledLinks { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `len` [INFO] [stderr] --> src/crawler.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | fn len(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `contains` [INFO] [stderr] --> src/crawler.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | fn contains(&self, link: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `insert` [INFO] [stderr] --> src/crawler.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | fn insert(&mut self, link: String) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_save_path` [INFO] [stderr] --> src/crawler.rs:73:8 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn get_save_path(parsed_url: &Url) -> (String, String) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `CrawlerWorker` [INFO] [stderr] --> src/crawler.rs:82:8 [INFO] [stderr] | [INFO] [stderr] 82 | struct CrawlerWorker { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | / fn new(crawled_links: Arc>, [INFO] [stderr] 93 | | crawl_queue: Arc>, [INFO] [stderr] 94 | | results_sender: crossbeam::Sender>) -> CrawlerWorker { [INFO] [stderr] 95 | | CrawlerWorker { [INFO] [stderr] ... | [INFO] [stderr] 102 | | } [INFO] [stderr] 103 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `crawl` [INFO] [stderr] --> src/crawler.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 105 | async fn crawl(&self, url: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Crawler` [INFO] [stderr] --> src/crawler.rs:155:12 [INFO] [stderr] | [INFO] [stderr] 155 | pub struct Crawler { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crawler.rs:163:5 [INFO] [stderr] | [INFO] [stderr] 163 | pub fn new() -> Crawler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `run` [INFO] [stderr] --> src/crawler.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn run(&self, start_url: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/index.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn new() -> HashMapIndex { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `print_stats` [INFO] [stderr] --> src/indexer.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn print_stats(&self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `visit_dirs` [INFO] [stderr] --> src/main.rs:24:4 [INFO] [stderr] | [INFO] [stderr] 24 | fn visit_dirs(dir: &Path, cb: &mut F) -> std::io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main_crawl` [INFO] [stderr] --> src/main.rs:39:10 [INFO] [stderr] | [INFO] [stderr] 39 | async fn main_crawl() -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main_index_from_files` [INFO] [stderr] --> src/main.rs:81:4 [INFO] [stderr] | [INFO] [stderr] 81 | fn main_index_from_files() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 37 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 11s [INFO] running `"docker" "inspect" "60a1949365bc00e042e898484f2915d32a1b2183f7339a2d1306e9799f1a53bd"` [INFO] running `"docker" "rm" "-f" "60a1949365bc00e042e898484f2915d32a1b2183f7339a2d1306e9799f1a53bd"` [INFO] [stdout] 60a1949365bc00e042e898484f2915d32a1b2183f7339a2d1306e9799f1a53bd