[INFO] updating cached repository nikomatsakis/perf-focus [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/nikomatsakis/perf-focus [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/nikomatsakis/perf-focus" "work/ex/beta-1.38-1/sources/1.37.0/gh/nikomatsakis/perf-focus"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/1.37.0/gh/nikomatsakis/perf-focus'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/nikomatsakis/perf-focus" "work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nikomatsakis/perf-focus"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nikomatsakis/perf-focus'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7840f74fa34d6904a41c78a093de47096377837a [INFO] sha for GitHub repo nikomatsakis/perf-focus: 7840f74fa34d6904a41c78a093de47096377837a [INFO] validating manifest of nikomatsakis/perf-focus on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of nikomatsakis/perf-focus on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing nikomatsakis/perf-focus [INFO] finished frobbing nikomatsakis/perf-focus [INFO] frobbed toml for nikomatsakis/perf-focus written to work/ex/beta-1.38-1/sources/1.37.0/gh/nikomatsakis/perf-focus/Cargo.toml [INFO] started frobbing nikomatsakis/perf-focus [INFO] finished frobbing nikomatsakis/perf-focus [INFO] frobbed toml for nikomatsakis/perf-focus written to work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nikomatsakis/perf-focus/Cargo.toml [INFO] crate nikomatsakis/perf-focus already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing nikomatsakis/perf-focus against beta-2019-08-13 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-0/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nikomatsakis/perf-focus:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "build" "--frozen"` [INFO] [stdout] 61592d4bfd365db3ce276737371f4865b3db2dae9b76d08bdc6385b8fdaf4588 [INFO] running `"docker" "start" "-a" "61592d4bfd365db3ce276737371f4865b3db2dae9b76d08bdc6385b8fdaf4588"` [INFO] [stderr] Compiling ordermap v0.2.10 [INFO] [stderr] Compiling fixedbitset v0.1.7 [INFO] [stderr] Compiling memchr v0.1.11 [INFO] [stderr] Compiling itertools v0.7.6 [INFO] [stderr] Compiling thread-id v2.0.0 [INFO] [stderr] Compiling thread_local v0.2.7 [INFO] [stderr] Compiling aho-corasick v0.5.3 [INFO] [stderr] Compiling petgraph v0.4.5 [INFO] [stderr] Compiling regex v0.1.80 [INFO] [stderr] Compiling rusty-peg v0.4.0 [INFO] [stderr] Compiling perf-focus v1.0.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graph/mod.rs:108:34 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn dump(&self, out: &mut Write) -> Result<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:71:17 [INFO] [stderr] | [INFO] [stderr] 71 | object: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:155:35 [INFO] [stderr] | [INFO] [stderr] 155 | fn clone_object(&self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:196:35 [INFO] [stderr] | [INFO] [stderr] 196 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:233:35 [INFO] [stderr] | [INFO] [stderr] 233 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:263:35 [INFO] [stderr] | [INFO] [stderr] 263 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:296:35 [INFO] [stderr] | [INFO] [stderr] 296 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:332:35 [INFO] [stderr] | [INFO] [stderr] 332 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:369:35 [INFO] [stderr] | [INFO] [stderr] 369 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:412:35 [INFO] [stderr] | [INFO] [stderr] 412 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:452:35 [INFO] [stderr] | [INFO] [stderr] 452 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/trace/mod.rs:35:35 [INFO] [stderr] | [INFO] [stderr] 35 | fn each_trace_impl(stdin: &mut BufRead, mut callback: F) -> io::Result<()> [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn BufRead` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `for_each_leaf` [INFO] [stderr] --> src/tree/mod.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | / pub fn for_each_leaf(&self, mut f: F) [INFO] [stderr] 93 | | where F: FnMut(&str, usize) [INFO] [stderr] 94 | | { [INFO] [stderr] 95 | | self.root_node.for_each_leaf(&mut f) [INFO] [stderr] 96 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `for_each_leaf` [INFO] [stderr] --> src/tree/mod.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | / fn for_each_leaf(&self, f: &mut F) [INFO] [stderr] 198 | | where F: FnMut(&str, usize) [INFO] [stderr] 199 | | { [INFO] [stderr] 200 | | if !self.children.is_empty() { [INFO] [stderr] ... | [INFO] [stderr] 207 | | } [INFO] [stderr] 208 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 18.36s [INFO] running `"docker" "inspect" "61592d4bfd365db3ce276737371f4865b3db2dae9b76d08bdc6385b8fdaf4588"` [INFO] running `"docker" "rm" "-f" "61592d4bfd365db3ce276737371f4865b3db2dae9b76d08bdc6385b8fdaf4588"` [INFO] [stdout] 61592d4bfd365db3ce276737371f4865b3db2dae9b76d08bdc6385b8fdaf4588 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-0/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/nikomatsakis/perf-focus:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen" "--no-run"` [INFO] [stdout] 509c48b8b0ebfe1b46bb8f86f150bf039c0b462cb7c432f87d49015bb16718d7 [INFO] running `"docker" "start" "-a" "509c48b8b0ebfe1b46bb8f86f150bf039c0b462cb7c432f87d49015bb16718d7"` [INFO] [stderr] Compiling perf-focus v1.0.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graph/mod.rs:108:34 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn dump(&self, out: &mut Write) -> Result<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:71:17 [INFO] [stderr] | [INFO] [stderr] 71 | object: Box, [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:155:35 [INFO] [stderr] | [INFO] [stderr] 155 | fn clone_object(&self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:196:35 [INFO] [stderr] | [INFO] [stderr] 196 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:233:35 [INFO] [stderr] | [INFO] [stderr] 233 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:263:35 [INFO] [stderr] | [INFO] [stderr] 263 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:296:35 [INFO] [stderr] | [INFO] [stderr] 296 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:332:35 [INFO] [stderr] | [INFO] [stderr] 332 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:369:35 [INFO] [stderr] | [INFO] [stderr] 369 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:412:35 [INFO] [stderr] | [INFO] [stderr] 412 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:452:35 [INFO] [stderr] | [INFO] [stderr] 452 | fn clone_object(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn MatcherTrait` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/trace/mod.rs:35:35 [INFO] [stderr] | [INFO] [stderr] 35 | fn each_trace_impl(stdin: &mut BufRead, mut callback: F) -> io::Result<()> [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn BufRead` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:6:13 [INFO] [stderr] | [INFO] [stderr] 6 | let m = Matcher::new(RegexMatcher::new("b")); [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75| fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:8:18 [INFO] [stderr] | [INFO] [stderr] 8 | assert_eq!(r.prefix, &[format!("a")]); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `suffix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:9:18 [INFO] [stderr] | [INFO] [stderr] 9 | assert_eq!(r.suffix, &[format!("c")]); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | Matcher::new(RegexMatcher::new("b")), [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:19:17 [INFO] [stderr] | [INFO] [stderr] 19 | Matcher::new(RegexMatcher::new("c")))); [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | Matcher::new( [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:21:18 [INFO] [stderr] | [INFO] [stderr] 21 | assert_eq!(r.prefix, &[format!("a")]); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `suffix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:22:15 [INFO] [stderr] | [INFO] [stderr] 22 | assert!(r.suffix.is_empty()); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:31:17 [INFO] [stderr] | [INFO] [stderr] 31 | Matcher::new(RegexMatcher::new("a")), [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | Matcher::new(RegexMatcher::new("c")))); [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | Matcher::new( [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | Matcher::new(RegexMatcher::new("a")), [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:43:21 [INFO] [stderr] | [INFO] [stderr] 43 | Matcher::new(RegexMatcher::new("c")))))); [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:42:17 [INFO] [stderr] | [INFO] [stderr] 42 | Matcher::new(SkipMatcher::new( [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `matcher::Matcher: matcher::MatcherTrait` is not satisfied [INFO] [stderr] --> src/matcher/test.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | Matcher::new( [INFO] [stderr] | ^^^^^^^^^^^^ the trait `matcher::MatcherTrait` is not implemented for `matcher::Matcher` [INFO] [stderr] | [INFO] [stderr] note: required by `matcher::Matcher::new` [INFO] [stderr] --> src/matcher/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | fn new(m: M) -> Matcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:46:24 [INFO] [stderr] | [INFO] [stderr] 46 | .unwrap().prefix.len() == 0); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:49:24 [INFO] [stderr] | [INFO] [stderr] 49 | .unwrap().prefix.len() == 1); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | .unwrap().prefix.len() == 1); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:60:24 [INFO] [stderr] | [INFO] [stderr] 60 | .unwrap().prefix.len() == 0); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | .unwrap().prefix.len() == 1); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:66:24 [INFO] [stderr] | [INFO] [stderr] 66 | .unwrap().prefix.len() == 1); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `prefix` on type `matcher::SearchResult` [INFO] [stderr] --> src/matcher/test.rs:77:24 [INFO] [stderr] | [INFO] [stderr] 77 | .unwrap().prefix.len() == 0); [INFO] [stderr] | ^^^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `first_matching_frame`, `first_callee_frame` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/trace/test.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | each_trace(cursor, |frames| { [INFO] [stderr] | ^^^^^^ expected bool, found struct `std::io::Cursor` [INFO] [stderr] | [INFO] [stderr] = note: expected type `bool` [INFO] [stderr] found type `std::io::Cursor<&[u8]>` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `len` found for type `trace::TraceArgs<'_>` in the current scope [INFO] [stderr] --> src/trace/test.rs:9:34 [INFO] [stderr] | [INFO] [stderr] 9 | frame_counts.push(frames.len()); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/trace/mod.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct TraceArgs<'a> { [INFO] [stderr] | ------------------------ method `len` not found for this [INFO] [stderr] | [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following traits define an item `len`, perhaps you need to implement one of them: [INFO] [stderr] candidate #1: `std::iter::ExactSizeIterator` [INFO] [stderr] candidate #2: `regex::internal::Input` [INFO] [stderr] candidate #3: `aho_corasick::autiter::Automaton` [INFO] [stderr] [INFO] [stderr] error: aborting due to 24 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0277, E0308, E0599, E0609. [INFO] [stderr] For more information about an error, try `rustc --explain E0277`. [INFO] [stderr] error: Could not compile `perf-focus`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "509c48b8b0ebfe1b46bb8f86f150bf039c0b462cb7c432f87d49015bb16718d7"` [INFO] running `"docker" "rm" "-f" "509c48b8b0ebfe1b46bb8f86f150bf039c0b462cb7c432f87d49015bb16718d7"` [INFO] [stdout] 509c48b8b0ebfe1b46bb8f86f150bf039c0b462cb7c432f87d49015bb16718d7