[INFO] cloning repository https://github.com/m77can/path-matcher [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/m77can/path-matcher" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fm77can%2Fpath-matcher", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fm77can%2Fpath-matcher'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dae00d16cba31cb03da0f618e612ac1da162202f [INFO] checking m77can/path-matcher against master#b56aaec52bc0fa35591a872fb4aac81f606e265c for pr-122661-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fm77can%2Fpath-matcher" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/m77can/path-matcher [INFO] finished tweaking git repo https://github.com/m77can/path-matcher [INFO] tweaked toml for git repo https://github.com/m77can/path-matcher written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/m77can/path-matcher on toolchain b56aaec52bc0fa35591a872fb4aac81f606e265c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b56aaec52bc0fa35591a872fb4aac81f606e265c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/m77can/path-matcher already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b56aaec52bc0fa35591a872fb4aac81f606e265c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+b56aaec52bc0fa35591a872fb4aac81f606e265c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2e2d8907e5111291be930953bad640e71f103ace616c14fed8d8779b18f10b12 [INFO] running `Command { std: "docker" "start" "-a" "2e2d8907e5111291be930953bad640e71f103ace616c14fed8d8779b18f10b12", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2e2d8907e5111291be930953bad640e71f103ace616c14fed8d8779b18f10b12", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2e2d8907e5111291be930953bad640e71f103ace616c14fed8d8779b18f10b12", kill_on_drop: false }` [INFO] [stdout] 2e2d8907e5111291be930953bad640e71f103ace616c14fed8d8779b18f10b12 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+b56aaec52bc0fa35591a872fb4aac81f606e265c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7a9cdcd24e6d0e1faac38113bb4c8242a49fd8e33e646cce3443171aaaf171c8 [INFO] running `Command { std: "docker" "start" "-a" "7a9cdcd24e6d0e1faac38113bb4c8242a49fd8e33e646cce3443171aaaf171c8", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Checking regex-syntax v0.6.25 [INFO] [stderr] Checking aho-corasick v0.7.18 [INFO] [stderr] Checking regex v1.5.4 [INFO] [stderr] Checking path-matcher v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `AntPathMatcher` and `PathMatcher` [INFO] [stdout] --> src/tests.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::path_matcher::{AntPathMatcher, PathMatcher}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | mod tests; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_pattern`, `match_start`, `extract_path_within_pattern`, and `extract_uri_template_variables` are never used [INFO] [stdout] --> src/path_matcher.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait PathMatcher { [INFO] [stdout] | ----------- methods in this trait [INFO] [stdout] 16 | fn is_pattern(&self, path: &str) -> bool; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | fn match_start(&mut self, pattern: &str, path: &str) -> bool; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 21 | fn extract_path_within_pattern(&mut self, pattern: &str, path: &str) -> String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | [INFO] [stdout] 23 | fn extract_uri_template_variables( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `CACHE_TURNOFF_THRESHOLD` is never used [INFO] [stdout] --> src/path_matcher.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static CACHE_TURNOFF_THRESHOLD: usize = 65536; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `WILDCARD_CHARS` is never used [INFO] [stdout] --> src/path_matcher.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | static WILDCARD_CHARS: [char; 3] = ['*', '?', '{']; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `GLOB_PATTERN` is never used [INFO] [stdout] --> src/path_matcher.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | static GLOB_PATTERN: &'static str = r"\?|\*|\{((?:\{[^/]+?\}|[^/{}]|\\[{}])+?)\}"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `DEFAULT_VARIABLE_PATTERN` is never used [INFO] [stdout] --> src/path_matcher.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | static DEFAULT_VARIABLE_PATTERN: &'static str = "((?s).*)"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `PathMatcher` is never used [INFO] [stdout] --> src/path_matcher.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait PathMatcher { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `path_separator`, `case_sensitive`, `trim_tokens`, `cache_patterns`, `tokenized_pattern_cache`, and `string_matcher_cache` are never read [INFO] [stdout] --> src/path_matcher.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct AntPathMatcher { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 31 | path_separator: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 32 | case_sensitive: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 33 | trim_tokens: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 34 | cache_patterns: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 35 | tokenized_pattern_cache: HashMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | string_matcher_cache: HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/path_matcher.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 39 | impl AntPathMatcher { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | fn do_match( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | fn is_potential_match(&self, path: &str, patt_dirs: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | fn skip_segment(&self, patch: &str, pos: usize, prefix: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn skip_separator(&self, path: &str, pos: usize, separator: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 229 | fn is_wildcard_char(&self, c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | fn match_strings( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | fn get_string_matcher(&mut self, pattern: &str) -> AntPathStringMatcher { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | fn tokenize_pattern(&mut self, pattern: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn tokenize_path(&self, path: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | fn tokenize_to_vec(&self, path: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | fn deactivate_pattern_cache(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `raw_pattern`, `exact_match`, `case_sensitive`, `regex`, and `variable_names` are never read [INFO] [stdout] --> src/path_matcher.rs:417:5 [INFO] [stdout] | [INFO] [stdout] 416 | pub struct AntPathStringMatcher { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 417 | raw_pattern: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 418 | exact_match: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 419 | [INFO] [stdout] 420 | case_sensitive: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 421 | regex: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 422 | variable_names: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AntPathStringMatcher` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `match_string` are never used [INFO] [stdout] --> src/path_matcher.rs:427:8 [INFO] [stdout] | [INFO] [stdout] 426 | impl AntPathStringMatcher { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 427 | fn new(pattern: &str, case_sensitive: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | pub fn match_string( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `substring` is never used [INFO] [stdout] --> src/path_matcher.rs:535:4 [INFO] [stdout] | [INFO] [stdout] 535 | fn substring(str: &str, begin: usize, end: usize) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quote` is never used [INFO] [stdout] --> src/path_matcher.rs:543:4 [INFO] [stdout] | [INFO] [stdout] 543 | fn quote(s: &str, start: usize, end: usize) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `matches` is never used [INFO] [stdout] --> src/path_matcher.rs:550:4 [INFO] [stdout] | [INFO] [stdout] 550 | fn matches(regex: &Regex, s: &str) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.65s [INFO] running `Command { std: "docker" "inspect" "7a9cdcd24e6d0e1faac38113bb4c8242a49fd8e33e646cce3443171aaaf171c8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7a9cdcd24e6d0e1faac38113bb4c8242a49fd8e33e646cce3443171aaaf171c8", kill_on_drop: false }` [INFO] [stdout] 7a9cdcd24e6d0e1faac38113bb4c8242a49fd8e33e646cce3443171aaaf171c8