[INFO] crate actiondb 0.7.0 is already in cache [INFO] testing actiondb-0.7.0 against beta-2020-06-03 for beta-1.45-1 [INFO] extracting crate actiondb 0.7.0 into /workspace/builds/worker-0/source [INFO] validating manifest of crates.io crate actiondb 0.7.0 on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate actiondb 0.7.0 [INFO] finished tweaking crates.io crate actiondb 0.7.0 [INFO] tweaked toml for crates.io crate actiondb 0.7.0 written to /workspace/builds/worker-0/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"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=warn" "-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" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stdout] 76403454ff052b27c400129751a14d241141e8ab5cc73edd7d8caa82db6f796d [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "76403454ff052b27c400129751a14d241141e8ab5cc73edd7d8caa82db6f796d"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling serde v0.7.15 [INFO] [stderr] Compiling itoa v0.1.1 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling yaml-rust v0.3.5 [INFO] [stderr] Compiling uuid v0.1.18 [INFO] [stderr] Compiling clap v2.33.1 [INFO] [stderr] Compiling serde_yaml v0.2.5 [INFO] [stderr] Compiling serde_json v0.7.4 [INFO] [stderr] Compiling actiondb v0.7.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | try!(Err(serde::de::Error::missing_field("uuid"))) [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:98:44 [INFO] [stderr] | [INFO] [stderr] 98 | Field::NAME => name = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:99:44 [INFO] [stderr] | [INFO] [stderr] 99 | Field::UUID => uuid = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:100:50 [INFO] [stderr] | [INFO] [stderr] 100 | Field::PATTERN => pattern = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:102:44 [INFO] [stderr] | [INFO] [stderr] 102 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:103:61 [INFO] [stderr] | [INFO] [stderr] 103 | Field::TESTMESSAGES => test_messages = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:107:20 [INFO] [stderr] | [INFO] [stderr] 107 | let uuid = try!(PatternVisitor::parse_uuid::(uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:120:25 [INFO] [stderr] | [INFO] [stderr] 120 | try!(Err(serde::de::Error::custom("Invalid field 'pattern'"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:126:17 [INFO] [stderr] | [INFO] [stderr] 126 | try!(Err(serde::de::Error::missing_field("pattern"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:51:34 [INFO] [stderr] | [INFO] [stderr] 51 | while let Some (field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:53:52 [INFO] [stderr] | [INFO] [stderr] 53 | Field::PATTERNS => patterns = Some(try!(visitor.visit_value())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | None => try!(visitor.missing_field("patterns")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:62:9 [INFO] [stderr] | [INFO] [stderr] 62 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:56:33 [INFO] [stderr] | [INFO] [stderr] 56 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:58:50 [INFO] [stderr] | [INFO] [stderr] 58 | Field::MESSAGE => message = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:59:48 [INFO] [stderr] | [INFO] [stderr] 59 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:60:44 [INFO] [stderr] | [INFO] [stderr] 60 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | None => try!(visitor.missing_field("message")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | try!(self.test_tags(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | try!(TestMessage::test_value(key, value, &merged_values, result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:87:17 [INFO] [stderr] | [INFO] [stderr] 87 | try!(self.test_expected_tags_can_be_found_in_got_tags(expected_tags, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | try!(Self::check_pattern::(&mut matcher, pattern)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:33:27 [INFO] [stderr] | [INFO] [stderr] 33 | let mut pattern = try!(result); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:55:26 [INFO] [stderr] | [INFO] [stderr] 55 | let result = try!(matcher.parse(msg.message()) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | try!(Self::check_test_message(msg, &result, uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:19:24 [INFO] [stderr] | [INFO] [stderr] 19 | let mut file = try!(File::open(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:27:20 [INFO] [stderr] | [INFO] [stderr] 27 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:43:23 [INFO] [stderr] | [INFO] [stderr] 43 | match try!(extension.to_str().ok_or(BuildError::NotUtf8FileName)) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:45:39 [INFO] [stderr] | [INFO] [stderr] 45 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:46:36 [INFO] [stderr] | [INFO] [stderr] 46 | let file = try!(serde_json::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let file = try!(serde_yaml::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | try!(write!(fmt, "error at {}:{}: expected ", self.line, self.column)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | try!(write!(fmt, "EOF")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | try!(write!(fmt, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | try!(write!(fmt, "one of `{}`", escape_default(iter.next().unwrap()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | try!(write!(fmt, ", `{}`", escape_default(elem))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/set.rs:96:34 [INFO] [stderr] | [INFO] [stderr] 96 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [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/parsers/int.rs:34:34 [INFO] [stderr] | [INFO] [stderr] 34 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/greedy.rs:73:34 [INFO] [stderr] | [INFO] [stderr] 73 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | parser: &'a Parser, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(parser: &'a Parser, value: &'b str) -> ParseResult<'a, 'b> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn parser(&self) -> &'a Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:57:27 [INFO] [stderr] | [INFO] [stderr] 57 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:61:72 [INFO] [stderr] | [INFO] [stderr] 61 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:16:28 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn new(parser: Box) -> ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:24:30 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn parser(&self) -> &Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | fn lookup_parser(&mut self, parser: &Parser) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:277:49 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn insert_parser(&mut self, parser: Box) -> &mut ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:33 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:38:27 [INFO] [stderr] | [INFO] [stderr] 38 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:54:72 [INFO] [stderr] | [INFO] [stderr] 54 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/matcher.rs:14:34 [INFO] [stderr] | [INFO] [stderr] 14 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern/source.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub type PatternSource = Source; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Source` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern_source/error.rs:70:32 [INFO] [stderr] | [INFO] [stderr] 70 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:7:16 [INFO] [stderr] | [INFO] [stderr] 7 | Parser(Box), [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:40:42 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn parser(&mut self, parser: Box) -> &mut CompiledPatternBuilder { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:49:59 [INFO] [stderr] | [INFO] [stderr] 49 | fn insert_literal(&mut self, literal: String) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:45 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:62 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:113:33 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:129:17 [INFO] [stderr] | [INFO] [stderr] 129 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:144:28 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn new(parser: Box) -> ParserE { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:267:34 [INFO] [stderr] | [INFO] [stderr] 267 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:256:61 [INFO] [stderr] | [INFO] [stderr] 256 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:268:65 [INFO] [stderr] | [INFO] [stderr] 268 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:429:65 [INFO] [stderr] | [INFO] [stderr] 429 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:24 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:36 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:907:48 [INFO] [stderr] | [INFO] [stderr] 907 | ... 'a'...'z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:909:48 [INFO] [stderr] | [INFO] [stderr] 909 | ... 'A'...'Z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:910:48 [INFO] [stderr] | [INFO] [stderr] 910 | ... '0'...'9' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:1164:32 [INFO] [stderr] | [INFO] [stderr] 1164 | ... '0'...'9' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | BuildError::TestMessage(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | BuildError::Io(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:63:55 [INFO] [stderr] | [INFO] [stderr] 63 | BuildError::DeserJson(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:64:55 [INFO] [stderr] | [INFO] [stderr] 64 | BuildError::DeserYaml(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:72:57 [INFO] [stderr] | [INFO] [stderr] 72 | BuildError::TestMessage(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:73:48 [INFO] [stderr] | [INFO] [stderr] 73 | BuildError::Io(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:74:55 [INFO] [stderr] | [INFO] [stderr] 74 | BuildError::DeserJson(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:75:55 [INFO] [stderr] | [INFO] [stderr] 75 | BuildError::DeserYaml(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LiteralEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:44 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [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/matcher/suffix_array/impls.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 110 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 18.66s [INFO] running `"docker" "inspect" "76403454ff052b27c400129751a14d241141e8ab5cc73edd7d8caa82db6f796d"` [INFO] running `"docker" "rm" "-f" "76403454ff052b27c400129751a14d241141e8ab5cc73edd7d8caa82db6f796d"` [INFO] [stdout] 76403454ff052b27c400129751a14d241141e8ab5cc73edd7d8caa82db6f796d [INFO] running `"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=warn" "-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" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stdout] d5f37f8333d85a326e0d0006bfdd96c7dc8db95300ee711caf36ab4d0c35c11b [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "d5f37f8333d85a326e0d0006bfdd96c7dc8db95300ee711caf36ab4d0c35c11b"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling actiondb v0.7.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | try!(Err(serde::de::Error::missing_field("uuid"))) [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:98:44 [INFO] [stderr] | [INFO] [stderr] 98 | Field::NAME => name = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:99:44 [INFO] [stderr] | [INFO] [stderr] 99 | Field::UUID => uuid = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:100:50 [INFO] [stderr] | [INFO] [stderr] 100 | Field::PATTERN => pattern = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:102:44 [INFO] [stderr] | [INFO] [stderr] 102 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:103:61 [INFO] [stderr] | [INFO] [stderr] 103 | Field::TESTMESSAGES => test_messages = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:107:20 [INFO] [stderr] | [INFO] [stderr] 107 | let uuid = try!(PatternVisitor::parse_uuid::(uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:120:25 [INFO] [stderr] | [INFO] [stderr] 120 | try!(Err(serde::de::Error::custom("Invalid field 'pattern'"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:126:17 [INFO] [stderr] | [INFO] [stderr] 126 | try!(Err(serde::de::Error::missing_field("pattern"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:51:34 [INFO] [stderr] | [INFO] [stderr] 51 | while let Some (field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:53:52 [INFO] [stderr] | [INFO] [stderr] 53 | Field::PATTERNS => patterns = Some(try!(visitor.visit_value())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | None => try!(visitor.missing_field("patterns")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:62:9 [INFO] [stderr] | [INFO] [stderr] 62 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:56:33 [INFO] [stderr] | [INFO] [stderr] 56 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:58:50 [INFO] [stderr] | [INFO] [stderr] 58 | Field::MESSAGE => message = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:59:48 [INFO] [stderr] | [INFO] [stderr] 59 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:60:44 [INFO] [stderr] | [INFO] [stderr] 60 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | None => try!(visitor.missing_field("message")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | try!(self.test_tags(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | try!(TestMessage::test_value(key, value, &merged_values, result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:87:17 [INFO] [stderr] | [INFO] [stderr] 87 | try!(self.test_expected_tags_can_be_found_in_got_tags(expected_tags, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | try!(Self::check_pattern::(&mut matcher, pattern)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:33:27 [INFO] [stderr] | [INFO] [stderr] 33 | let mut pattern = try!(result); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:55:26 [INFO] [stderr] | [INFO] [stderr] 55 | let result = try!(matcher.parse(msg.message()) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | try!(Self::check_test_message(msg, &result, uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:19:24 [INFO] [stderr] | [INFO] [stderr] 19 | let mut file = try!(File::open(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:27:20 [INFO] [stderr] | [INFO] [stderr] 27 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:43:23 [INFO] [stderr] | [INFO] [stderr] 43 | match try!(extension.to_str().ok_or(BuildError::NotUtf8FileName)) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:45:39 [INFO] [stderr] | [INFO] [stderr] 45 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:46:36 [INFO] [stderr] | [INFO] [stderr] 46 | let file = try!(serde_json::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let file = try!(serde_yaml::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | try!(write!(fmt, "error at {}:{}: expected ", self.line, self.column)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | try!(write!(fmt, "EOF")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | try!(write!(fmt, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | try!(write!(fmt, "one of `{}`", escape_default(iter.next().unwrap()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | try!(write!(fmt, ", `{}`", escape_default(elem))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/set.rs:96:34 [INFO] [stderr] | [INFO] [stderr] 96 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [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/parsers/int.rs:34:34 [INFO] [stderr] | [INFO] [stderr] 34 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/greedy.rs:73:34 [INFO] [stderr] | [INFO] [stderr] 73 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | parser: &'a Parser, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(parser: &'a Parser, value: &'b str) -> ParseResult<'a, 'b> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn parser(&self) -> &'a Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:57:27 [INFO] [stderr] | [INFO] [stderr] 57 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:61:72 [INFO] [stderr] | [INFO] [stderr] 61 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:16:28 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn new(parser: Box) -> ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:24:30 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn parser(&self) -> &Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | fn lookup_parser(&mut self, parser: &Parser) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:277:49 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn insert_parser(&mut self, parser: Box) -> &mut ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:33 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:38:27 [INFO] [stderr] | [INFO] [stderr] 38 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:54:72 [INFO] [stderr] | [INFO] [stderr] 54 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/matcher.rs:14:34 [INFO] [stderr] | [INFO] [stderr] 14 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern/source.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub type PatternSource = Source; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Source` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern_source/error.rs:70:32 [INFO] [stderr] | [INFO] [stderr] 70 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:7:16 [INFO] [stderr] | [INFO] [stderr] 7 | Parser(Box), [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:40:42 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn parser(&mut self, parser: Box) -> &mut CompiledPatternBuilder { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:49:59 [INFO] [stderr] | [INFO] [stderr] 49 | fn insert_literal(&mut self, literal: String) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:45 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:62 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:113:33 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:129:17 [INFO] [stderr] | [INFO] [stderr] 129 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:144:28 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn new(parser: Box) -> ParserE { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:267:34 [INFO] [stderr] | [INFO] [stderr] 267 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:256:61 [INFO] [stderr] | [INFO] [stderr] 256 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:268:65 [INFO] [stderr] | [INFO] [stderr] 268 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:429:65 [INFO] [stderr] | [INFO] [stderr] 429 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:24 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:36 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:907:48 [INFO] [stderr] | [INFO] [stderr] 907 | ... 'a'...'z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:909:48 [INFO] [stderr] | [INFO] [stderr] 909 | ... 'A'...'Z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:910:48 [INFO] [stderr] | [INFO] [stderr] 910 | ... '0'...'9' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:1164:32 [INFO] [stderr] | [INFO] [stderr] 1164 | ... '0'...'9' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | BuildError::TestMessage(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | BuildError::Io(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:63:55 [INFO] [stderr] | [INFO] [stderr] 63 | BuildError::DeserJson(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:64:55 [INFO] [stderr] | [INFO] [stderr] 64 | BuildError::DeserYaml(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:72:57 [INFO] [stderr] | [INFO] [stderr] 72 | BuildError::TestMessage(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:73:48 [INFO] [stderr] | [INFO] [stderr] 73 | BuildError::Io(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:74:55 [INFO] [stderr] | [INFO] [stderr] 74 | BuildError::DeserJson(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:75:55 [INFO] [stderr] | [INFO] [stderr] 75 | BuildError::DeserYaml(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LiteralEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:44 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [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/matcher/suffix_array/impls.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 110 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | try!(Err(serde::de::Error::missing_field("uuid"))) [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:98:44 [INFO] [stderr] | [INFO] [stderr] 98 | Field::NAME => name = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:99:44 [INFO] [stderr] | [INFO] [stderr] 99 | Field::UUID => uuid = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:100:50 [INFO] [stderr] | [INFO] [stderr] 100 | Field::PATTERN => pattern = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:102:44 [INFO] [stderr] | [INFO] [stderr] 102 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:103:61 [INFO] [stderr] | [INFO] [stderr] 103 | Field::TESTMESSAGES => test_messages = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:107:20 [INFO] [stderr] | [INFO] [stderr] 107 | let uuid = try!(PatternVisitor::parse_uuid::(uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:120:25 [INFO] [stderr] | [INFO] [stderr] 120 | try!(Err(serde::de::Error::custom("Invalid field 'pattern'"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:126:17 [INFO] [stderr] | [INFO] [stderr] 126 | try!(Err(serde::de::Error::missing_field("pattern"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:51:34 [INFO] [stderr] | [INFO] [stderr] 51 | while let Some (field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:53:52 [INFO] [stderr] | [INFO] [stderr] 53 | Field::PATTERNS => patterns = Some(try!(visitor.visit_value())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | None => try!(visitor.missing_field("patterns")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:62:9 [INFO] [stderr] | [INFO] [stderr] 62 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:56:33 [INFO] [stderr] | [INFO] [stderr] 56 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:58:50 [INFO] [stderr] | [INFO] [stderr] 58 | Field::MESSAGE => message = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:59:48 [INFO] [stderr] | [INFO] [stderr] 59 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:60:44 [INFO] [stderr] | [INFO] [stderr] 60 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | None => try!(visitor.missing_field("message")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | try!(self.test_tags(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | try!(TestMessage::test_value(key, value, &merged_values, result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:87:17 [INFO] [stderr] | [INFO] [stderr] 87 | try!(self.test_expected_tags_can_be_found_in_got_tags(expected_tags, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | try!(Self::check_pattern::(&mut matcher, pattern)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:33:27 [INFO] [stderr] | [INFO] [stderr] 33 | let mut pattern = try!(result); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:55:26 [INFO] [stderr] | [INFO] [stderr] 55 | let result = try!(matcher.parse(msg.message()) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | try!(Self::check_test_message(msg, &result, uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:19:24 [INFO] [stderr] | [INFO] [stderr] 19 | let mut file = try!(File::open(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:27:20 [INFO] [stderr] | [INFO] [stderr] 27 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:43:23 [INFO] [stderr] | [INFO] [stderr] 43 | match try!(extension.to_str().ok_or(BuildError::NotUtf8FileName)) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:45:39 [INFO] [stderr] | [INFO] [stderr] 45 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:46:36 [INFO] [stderr] | [INFO] [stderr] 46 | let file = try!(serde_json::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let file = try!(serde_yaml::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | try!(write!(fmt, "error at {}:{}: expected ", self.line, self.column)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | try!(write!(fmt, "EOF")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | try!(write!(fmt, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | try!(write!(fmt, "one of `{}`", escape_default(iter.next().unwrap()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | try!(write!(fmt, ", `{}`", escape_default(elem))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/set.rs:96:34 [INFO] [stderr] | [INFO] [stderr] 96 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [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/parsers/int.rs:34:34 [INFO] [stderr] | [INFO] [stderr] 34 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/greedy.rs:73:34 [INFO] [stderr] | [INFO] [stderr] 73 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | parser: &'a Parser, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(parser: &'a Parser, value: &'b str) -> ParseResult<'a, 'b> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn parser(&self) -> &'a Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:57:27 [INFO] [stderr] | [INFO] [stderr] 57 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:61:72 [INFO] [stderr] | [INFO] [stderr] 61 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:16:28 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn new(parser: Box) -> ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:24:30 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn parser(&self) -> &Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | fn lookup_parser(&mut self, parser: &Parser) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:277:49 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn insert_parser(&mut self, parser: Box) -> &mut ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:33 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:38:27 [INFO] [stderr] | [INFO] [stderr] 38 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:54:72 [INFO] [stderr] | [INFO] [stderr] 54 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/matcher.rs:14:34 [INFO] [stderr] | [INFO] [stderr] 14 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern/source.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub type PatternSource = Source; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Source` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern_source/error.rs:70:32 [INFO] [stderr] | [INFO] [stderr] 70 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:7:16 [INFO] [stderr] | [INFO] [stderr] 7 | Parser(Box), [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:40:42 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn parser(&mut self, parser: Box) -> &mut CompiledPatternBuilder { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:49:59 [INFO] [stderr] | [INFO] [stderr] 49 | fn insert_literal(&mut self, literal: String) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:45 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:62 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:113:33 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:129:17 [INFO] [stderr] | [INFO] [stderr] 129 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:144:28 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn new(parser: Box) -> ParserE { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:267:34 [INFO] [stderr] | [INFO] [stderr] 267 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/test.rs:12:61 [INFO] [stderr] | [INFO] [stderr] 12 | fn assert_parser_equals(got: Option<&TokenType>, expected: &Parser) { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:256:61 [INFO] [stderr] | [INFO] [stderr] 256 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:268:65 [INFO] [stderr] | [INFO] [stderr] 268 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:429:65 [INFO] [stderr] | [INFO] [stderr] 429 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:24 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:36 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:907:48 [INFO] [stderr] | [INFO] [stderr] 907 | ... 'a'...'z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:909:48 [INFO] [stderr] | [INFO] [stderr] 909 | ... 'A'...'Z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:910:48 [INFO] [stderr] | [INFO] [stderr] 910 | ... '0'...'9' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:1164:32 [INFO] [stderr] | [INFO] [stderr] 1164 | ... '0'...'9' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | BuildError::TestMessage(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | BuildError::Io(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:63:55 [INFO] [stderr] | [INFO] [stderr] 63 | BuildError::DeserJson(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:64:55 [INFO] [stderr] | [INFO] [stderr] 64 | BuildError::DeserYaml(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:72:57 [INFO] [stderr] | [INFO] [stderr] 72 | BuildError::TestMessage(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:73:48 [INFO] [stderr] | [INFO] [stderr] 73 | BuildError::Io(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:74:55 [INFO] [stderr] | [INFO] [stderr] 74 | BuildError::DeserJson(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:75:55 [INFO] [stderr] | [INFO] [stderr] 75 | BuildError::DeserYaml(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LiteralEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:44 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Parser` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:323:19 [INFO] [stderr] | [INFO] [stderr] 323 | use parsers::{Parser, SetParser, IntParser, GreedyParser}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ObjectSafeHash` [INFO] [stderr] --> src/grammar/test.rs:2:34 [INFO] [stderr] | [INFO] [stderr] 2 | use parsers::{SetParser, Parser, ObjectSafeHash, IntParser, GreedyParser, HasLengthConstraint}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [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/matcher/suffix_array/impls.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 113 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 5.34s [INFO] running `"docker" "inspect" "d5f37f8333d85a326e0d0006bfdd96c7dc8db95300ee711caf36ab4d0c35c11b"` [INFO] running `"docker" "rm" "-f" "d5f37f8333d85a326e0d0006bfdd96c7dc8db95300ee711caf36ab4d0c35c11b"` [INFO] [stdout] d5f37f8333d85a326e0d0006bfdd96c7dc8db95300ee711caf36ab4d0c35c11b [INFO] running `"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=warn" "-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" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 2cb4da3e78a3429d2cb7a59e7ded6672eb2b5f286d43fd40dff38b564a17ab3b [INFO] running `"docker" "start" "-a" "2cb4da3e78a3429d2cb7a59e7ded6672eb2b5f286d43fd40dff38b564a17ab3b"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | try!(Err(serde::de::Error::missing_field("uuid"))) [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:98:44 [INFO] [stderr] | [INFO] [stderr] 98 | Field::NAME => name = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:99:44 [INFO] [stderr] | [INFO] [stderr] 99 | Field::UUID => uuid = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:100:50 [INFO] [stderr] | [INFO] [stderr] 100 | Field::PATTERN => pattern = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:102:44 [INFO] [stderr] | [INFO] [stderr] 102 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:103:61 [INFO] [stderr] | [INFO] [stderr] 103 | Field::TESTMESSAGES => test_messages = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:107:20 [INFO] [stderr] | [INFO] [stderr] 107 | let uuid = try!(PatternVisitor::parse_uuid::(uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:120:25 [INFO] [stderr] | [INFO] [stderr] 120 | try!(Err(serde::de::Error::custom("Invalid field 'pattern'"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:126:17 [INFO] [stderr] | [INFO] [stderr] 126 | try!(Err(serde::de::Error::missing_field("pattern"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:51:34 [INFO] [stderr] | [INFO] [stderr] 51 | while let Some (field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:53:52 [INFO] [stderr] | [INFO] [stderr] 53 | Field::PATTERNS => patterns = Some(try!(visitor.visit_value())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | None => try!(visitor.missing_field("patterns")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:62:9 [INFO] [stderr] | [INFO] [stderr] 62 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:56:33 [INFO] [stderr] | [INFO] [stderr] 56 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:58:50 [INFO] [stderr] | [INFO] [stderr] 58 | Field::MESSAGE => message = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:59:48 [INFO] [stderr] | [INFO] [stderr] 59 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:60:44 [INFO] [stderr] | [INFO] [stderr] 60 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | None => try!(visitor.missing_field("message")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | try!(self.test_tags(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | try!(TestMessage::test_value(key, value, &merged_values, result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:87:17 [INFO] [stderr] | [INFO] [stderr] 87 | try!(self.test_expected_tags_can_be_found_in_got_tags(expected_tags, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | try!(Self::check_pattern::(&mut matcher, pattern)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:33:27 [INFO] [stderr] | [INFO] [stderr] 33 | let mut pattern = try!(result); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:55:26 [INFO] [stderr] | [INFO] [stderr] 55 | let result = try!(matcher.parse(msg.message()) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | try!(Self::check_test_message(msg, &result, uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:19:24 [INFO] [stderr] | [INFO] [stderr] 19 | let mut file = try!(File::open(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:27:20 [INFO] [stderr] | [INFO] [stderr] 27 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:43:23 [INFO] [stderr] | [INFO] [stderr] 43 | match try!(extension.to_str().ok_or(BuildError::NotUtf8FileName)) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:45:39 [INFO] [stderr] | [INFO] [stderr] 45 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:46:36 [INFO] [stderr] | [INFO] [stderr] 46 | let file = try!(serde_json::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let file = try!(serde_yaml::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | try!(write!(fmt, "error at {}:{}: expected ", self.line, self.column)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | try!(write!(fmt, "EOF")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | try!(write!(fmt, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | try!(write!(fmt, "one of `{}`", escape_default(iter.next().unwrap()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | try!(write!(fmt, ", `{}`", escape_default(elem))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/set.rs:96:34 [INFO] [stderr] | [INFO] [stderr] 96 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [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/parsers/int.rs:34:34 [INFO] [stderr] | [INFO] [stderr] 34 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/greedy.rs:73:34 [INFO] [stderr] | [INFO] [stderr] 73 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | parser: &'a Parser, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(parser: &'a Parser, value: &'b str) -> ParseResult<'a, 'b> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn parser(&self) -> &'a Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:57:27 [INFO] [stderr] | [INFO] [stderr] 57 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:61:72 [INFO] [stderr] | [INFO] [stderr] 61 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:16:28 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn new(parser: Box) -> ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:24:30 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn parser(&self) -> &Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | fn lookup_parser(&mut self, parser: &Parser) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:277:49 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn insert_parser(&mut self, parser: Box) -> &mut ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:33 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:38:27 [INFO] [stderr] | [INFO] [stderr] 38 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:54:72 [INFO] [stderr] | [INFO] [stderr] 54 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/matcher.rs:14:34 [INFO] [stderr] | [INFO] [stderr] 14 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern/source.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub type PatternSource = Source; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Source` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern_source/error.rs:70:32 [INFO] [stderr] | [INFO] [stderr] 70 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:7:16 [INFO] [stderr] | [INFO] [stderr] 7 | Parser(Box), [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:40:42 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn parser(&mut self, parser: Box) -> &mut CompiledPatternBuilder { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:49:59 [INFO] [stderr] | [INFO] [stderr] 49 | fn insert_literal(&mut self, literal: String) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:45 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:62 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:113:33 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:129:17 [INFO] [stderr] | [INFO] [stderr] 129 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:144:28 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn new(parser: Box) -> ParserE { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:267:34 [INFO] [stderr] | [INFO] [stderr] 267 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:256:61 [INFO] [stderr] | [INFO] [stderr] 256 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:268:65 [INFO] [stderr] | [INFO] [stderr] 268 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:429:65 [INFO] [stderr] | [INFO] [stderr] 429 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:24 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:36 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:907:48 [INFO] [stderr] | [INFO] [stderr] 907 | ... 'a'...'z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:909:48 [INFO] [stderr] | [INFO] [stderr] 909 | ... 'A'...'Z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:910:48 [INFO] [stderr] | [INFO] [stderr] 910 | ... '0'...'9' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:1164:32 [INFO] [stderr] | [INFO] [stderr] 1164 | ... '0'...'9' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `clippy` [INFO] [stderr] --> src/grammar/parser/mod.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | #[allow(clippy)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | try!(Err(serde::de::Error::missing_field("uuid"))) [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:96:33 [INFO] [stderr] | [INFO] [stderr] 96 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:98:44 [INFO] [stderr] | [INFO] [stderr] 98 | Field::NAME => name = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:99:44 [INFO] [stderr] | [INFO] [stderr] 99 | Field::UUID => uuid = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:100:50 [INFO] [stderr] | [INFO] [stderr] 100 | Field::PATTERN => pattern = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:102:44 [INFO] [stderr] | [INFO] [stderr] 102 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:103:61 [INFO] [stderr] | [INFO] [stderr] 103 | Field::TESTMESSAGES => test_messages = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:107:20 [INFO] [stderr] | [INFO] [stderr] 107 | let uuid = try!(PatternVisitor::parse_uuid::(uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:120:25 [INFO] [stderr] | [INFO] [stderr] 120 | try!(Err(serde::de::Error::custom("Invalid field 'pattern'"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:126:17 [INFO] [stderr] | [INFO] [stderr] 126 | try!(Err(serde::de::Error::missing_field("pattern"))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/deser.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:51:34 [INFO] [stderr] | [INFO] [stderr] 51 | while let Some (field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:53:52 [INFO] [stderr] | [INFO] [stderr] 53 | Field::PATTERNS => patterns = Some(try!(visitor.visit_value())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | None => try!(visitor.missing_field("patterns")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/file/deser.rs:62:9 [INFO] [stderr] | [INFO] [stderr] 62 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:56:33 [INFO] [stderr] | [INFO] [stderr] 56 | while let Some(field) = try!(visitor.visit_key()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:58:50 [INFO] [stderr] | [INFO] [stderr] 58 | Field::MESSAGE => message = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:59:48 [INFO] [stderr] | [INFO] [stderr] 59 | Field::VALUES => values = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:60:44 [INFO] [stderr] | [INFO] [stderr] 60 | Field::TAGS => tags = Some(try!(visitor.visit_value())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | None => try!(visitor.missing_field("message")), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/deser.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | try!(visitor.end()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | try!(self.test_tags(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | try!(TestMessage::test_value(key, value, &merged_values, result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern/testmessage/message.rs:87:17 [INFO] [stderr] | [INFO] [stderr] 87 | try!(self.test_expected_tags_can_be_found_in_got_tags(expected_tags, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | try!(Self::check_pattern::(&mut matcher, pattern)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:33:27 [INFO] [stderr] | [INFO] [stderr] 33 | let mut pattern = try!(result); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:55:26 [INFO] [stderr] | [INFO] [stderr] 55 | let result = try!(matcher.parse(msg.message()) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_source/mod.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | try!(Self::check_test_message(msg, &result, uuid)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:19:24 [INFO] [stderr] | [INFO] [stderr] 19 | let mut file = try!(File::open(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:27:20 [INFO] [stderr] | [INFO] [stderr] 27 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | let file = try!(PatternLoader::load_file(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:43:23 [INFO] [stderr] | [INFO] [stderr] 43 | match try!(extension.to_str().ok_or(BuildError::NotUtf8FileName)) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:45:39 [INFO] [stderr] | [INFO] [stderr] 45 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:46:36 [INFO] [stderr] | [INFO] [stderr] 46 | let file = try!(serde_json::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | let content = try!(PatternLoader::read(pattern_file_path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/matcher/pattern_loader.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let file = try!(serde_yaml::from_str::(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | try!(write!(fmt, "error at {}:{}: expected ", self.line, self.column)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | try!(write!(fmt, "EOF")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | try!(write!(fmt, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | try!(write!(fmt, "one of `{}`", escape_default(iter.next().unwrap()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | try!(write!(fmt, ", `{}`", escape_default(elem))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/set.rs:96:34 [INFO] [stderr] | [INFO] [stderr] 96 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [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/parsers/int.rs:34:34 [INFO] [stderr] | [INFO] [stderr] 34 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/greedy.rs:73:34 [INFO] [stderr] | [INFO] [stderr] 73 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:22:34 [INFO] [stderr] | [INFO] [stderr] 22 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | parser: &'a Parser, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(parser: &'a Parser, value: &'b str) -> ParseResult<'a, 'b> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn parser(&self) -> &'a Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:57:27 [INFO] [stderr] | [INFO] [stderr] 57 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/parsers/mod.rs:61:72 [INFO] [stderr] | [INFO] [stderr] 61 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:16:28 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn new(parser: Box) -> ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:24:30 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn parser(&self) -> &Parser { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/parser.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | fn lookup_parser(&mut self, parser: &Parser) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:277:49 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn insert_parser(&mut self, parser: Box) -> &mut ParserNode { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:33 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:38:27 [INFO] [stderr] | [INFO] [stderr] 38 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/parser_factory.rs:54:72 [INFO] [stderr] | [INFO] [stderr] 54 | fn new_greedy(name: Option<&str>, end_string: Option<&str>) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/trie/matcher.rs:14:34 [INFO] [stderr] | [INFO] [stderr] 14 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern/source.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub type PatternSource = Source; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Source` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/pattern_source/error.rs:70:32 [INFO] [stderr] | [INFO] [stderr] 70 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:7:16 [INFO] [stderr] | [INFO] [stderr] 7 | Parser(Box), [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/compiled_pattern.rs:40:42 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn parser(&mut self, parser: Box) -> &mut CompiledPatternBuilder { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/interface.rs:34:30 [INFO] [stderr] | [INFO] [stderr] 34 | fn parser(&self) -> &Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:49:59 [INFO] [stderr] | [INFO] [stderr] 49 | fn insert_literal(&mut self, literal: String) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:45 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:72:62 [INFO] [stderr] | [INFO] [stderr] 72 | fn insert_parser(&mut self, parser: Box) -> &mut Entry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:113:33 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Entry` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:129:17 [INFO] [stderr] | [INFO] [stderr] 129 | parser: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:144:28 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn new(parser: Box) -> ParserE { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:183:30 [INFO] [stderr] | [INFO] [stderr] 183 | fn parser(&self) -> &Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:267:34 [INFO] [stderr] | [INFO] [stderr] 267 | fn boxed_clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/matcher/mod.rs:23:34 [INFO] [stderr] | [INFO] [stderr] 23 | fn boxed_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/test.rs:12:61 [INFO] [stderr] | [INFO] [stderr] 12 | fn assert_parser_equals(got: Option<&TokenType>, expected: &Parser) { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:256:61 [INFO] [stderr] | [INFO] [stderr] 256 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:268:65 [INFO] [stderr] | [INFO] [stderr] 268 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | BuildError::TestMessage(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | BuildError::Io(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:429:65 [INFO] [stderr] | [INFO] [stderr] 429 | ... -> RuleResult> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Parser` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:24 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:63:55 [INFO] [stderr] | [INFO] [stderr] 63 | BuildError::DeserJson(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:890:36 [INFO] [stderr] | [INFO] [stderr] 890 | 'a'...'z' | 'A'...'Z' | '_' | '.' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:907:48 [INFO] [stderr] | [INFO] [stderr] 907 | ... 'a'...'z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:64:55 [INFO] [stderr] | [INFO] [stderr] 64 | BuildError::DeserYaml(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:72:57 [INFO] [stderr] | [INFO] [stderr] 72 | BuildError::TestMessage(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:73:48 [INFO] [stderr] | [INFO] [stderr] 73 | BuildError::Io(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:909:48 [INFO] [stderr] | [INFO] [stderr] 909 | ... 'A'...'Z' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:910:48 [INFO] [stderr] | [INFO] [stderr] 910 | ... '0'...'9' | [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/grammar/parser/pattern_parser.rs:1164:32 [INFO] [stderr] | [INFO] [stderr] 1164 | ... '0'...'9' => Matched(next, ()), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:74:55 [INFO] [stderr] | [INFO] [stderr] 74 | BuildError::DeserJson(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:75:55 [INFO] [stderr] | [INFO] [stderr] 75 | BuildError::DeserYaml(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LiteralEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:44 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [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: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::hash::{SipHasher, Hash, Hasher}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/matcher/suffix_array/impls.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 110 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/set.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/int.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher::new': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/parsers/greedy.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | let mut hasher = SipHasher::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | BuildError::TestMessage(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | BuildError::Io(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:63:55 [INFO] [stderr] | [INFO] [stderr] 63 | BuildError::DeserJson(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/matcher/pattern_source/error.rs:64:55 [INFO] [stderr] | [INFO] [stderr] 64 | BuildError::DeserYaml(ref error) => error.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:72:57 [INFO] [stderr] | [INFO] [stderr] 72 | BuildError::TestMessage(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:73:48 [INFO] [stderr] | [INFO] [stderr] 73 | BuildError::Io(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:74:55 [INFO] [stderr] | [INFO] [stderr] 74 | BuildError::DeserJson(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/matcher/pattern_source/error.rs:75:55 [INFO] [stderr] | [INFO] [stderr] 75 | BuildError::DeserYaml(ref error) => error.cause(), [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LiteralEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserEntry` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:11:44 [INFO] [stderr] | [INFO] [stderr] 11 | use self::interface::{Entry, LiteralEntry, ParserEntry}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Parser` [INFO] [stderr] --> src/matcher/trie/node/mod.rs:323:19 [INFO] [stderr] | [INFO] [stderr] 323 | use parsers::{Parser, SetParser, IntParser, GreedyParser}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ObjectSafeHash` [INFO] [stderr] --> src/grammar/test.rs:2:34 [INFO] [stderr] | [INFO] [stderr] 2 | use parsers::{SetParser, Parser, ObjectSafeHash, IntParser, GreedyParser, HasLengthConstraint}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/matcher/trie/node/mod.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | let mut entry: &mut Entry = match token { [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/matcher/suffix_array/impls.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | let mut entry: &mut Entry = match token { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 113 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/actiondb-dbd8cbed488a81f8 [INFO] [stdout] [INFO] [stdout] running 81 tests [INFO] [stdout] test grammar::test::test_given_int_parser_with_optional_parameters_when_we_parse_it_then_we_get_the_right_parser ... ok [INFO] [stdout] test grammar::test::test_given_parser_as_a_string_when_its_type_isnt_exist_then_we_get_an_error ... ok [INFO] [stdout] test grammar::test::test_given_parser_as_a_string_when_its_name_is_valid_then_we_get_the_instantiated_parser ... ok [INFO] [stdout] test grammar::test::test_given_literal_as_a_string_when_it_is_parsed_then_we_stop_at_the_parsers_begin ... ok [INFO] [stdout] test grammar::test::test_given_parser_as_a_string_when_its_name_is_invalid_then_we_dont_get_the_instantiated_parser ... ok [INFO] [stdout] test grammar::test::test_given_greedy_parser_when_we_parse_it_then_we_get_the_right_result ... ok [INFO] [stdout] test grammar::test::test_given_greedy_parser_when_there_is_no_literal_after_it_then_we_take_all_the_remaining_intput_as_matching ... ok [INFO] [stdout] test grammar::test::test_given_parser_when_there_is_a_dot_in_its_name_then_it_is_ok ... ok [INFO] [stdout] test grammar::test::test_given_invalid_pattern_as_a_string_when_we_parse_them_then_we_get_error ... ok [INFO] [stdout] test grammar::test::test_given_string_which_contains_escaped_chars_when_we_parse_it_then_we_get_the_right_string ... ok [INFO] [stdout] test grammar::test::test_given_set_parser_with_optional_parameters_when_we_parse_it_then_we_get_the_right_parser ... ok [INFO] [stdout] test grammar::test::test_given_valid_pattern_when_it_contains_cr_character_then_we_can_parse_it ... ok [INFO] [stdout] test grammar::test::test_given_pattern_as_a_string_when_it_is_parsed_with_the_grammar_we_got_the_right_compiled_pattern ... ok [INFO] [stdout] test grammar::test::test_given_set_parser_with_character_set_parameter_when_we_parse_it_then_we_get_the_right_parser ... ok [INFO] [stdout] test grammar::test::test_given_parser_as_a_string_when_it_is_parsed_then_we_get_the_instantiated_parser ... ok [INFO] [stdout] test grammar::test::test_given_valid_pattern_when_it_does_not_have_a_name_then_we_can_parse_the_pattern ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_when_its_uuid_is_invalid_then_pattern_cannot_be_built_from_it ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_with_invalid_uuid_when_we_try_to_create_pattern_then_it_fails ... ok [INFO] [stdout] test matcher::pattern::testmessage::test::test_given_json_test_message_when_it_contains_not_just_the_valid_fields_then_we_return_an_error ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_when_it_does_not_have_the_optional_paramaters_then_pattern_can_be_built_from_it ... ok [INFO] [stdout] test matcher::pattern::testmessage::test::test_given_json_test_message_when_it_does_not_have_a_message_field_then_error_is_returned ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_when_its_pattern_is_invalid_then_pattern_cannot_be_built_from_it ... ok [INFO] [stdout] test matcher::pattern::testmessage::test::test_given_json_test_message_when_it_is_deserialized_then_we_get_the_right_instance ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_when_it_does_not_have_the_pattern_field_then_it_cannot_be_created ... ok [INFO] [stdout] test matcher::pattern::testmessage::test::test_given_json_test_message_when_it_does_not_have_the_optional_fields_then_it_can_be_loaded_successfully ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_when_test_messages_are_specified_then_they_are_parsed ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_document_when_it_does_not_contain_errors_then_pattern_can_be_created_from_it ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_empty_parser_node_when_it_is_used_for_parsing_then_it_returns_none ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_empty_trie_when_literals_are_inserted_the_child_counts_are_right ... ok [INFO] [stdout] test matcher::trie::node::literal::test::given_literal_node_when_it_is_compared_to_an_other_literal_node_then_only_their_first_chars_are_checked ... ok [INFO] [stdout] test matcher::trie::node::literal::test::given_literal_node_when_its_leafness_is_checked_the_right_result_is_returned ... ok [INFO] [stdout] test matcher::trie::node::test::given_empty_trie_when_literals_are_inserted_then_they_can_be_looked_up ... ok [INFO] [stdout] test matcher::pattern::test::test_given_json_pattern_when_it_does_not_have_a_name_it_can_be_successfully_deserialized ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_node_when_different_parsers_are_inserted_then_they_are_not_merged ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_empty_trie_when_literals_are_inserted_the_nodes_are_split_on_the_right_place ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_node_when_the_same_parsers_are_inserted_then_they_are_merged_into_one_parsernode ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_suffix_array_when_during_parsing_the_parsed_value_is_not_empty_but_we_cant_go_forward_then_the_parsing_is_unsuccessful ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_suffix_array_when_there_is_no_match_then_the_parsing_is_unsuccessful ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_suffix_array_when_a_literal_entry_is_found_then_it_is_returned ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_suffix_array_when_a_parser_entry_is_inserted_it_is_only_added_if_it_is_a_new_parser ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_patterns_when_inserted_into_the_prefix_tree_then_the_proper_tree_is_built ... ok [INFO] [stdout] test matcher::result::test::test_given_match_result_when_a_parse_result_is_inserted_then_we_use_only_the_ones_where_the_parser_has_a_name ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_trie_when_literals_are_looked_up_then_the_edges_in_the_trie_are_not_counted_as_literals ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_suffix_array_when_the_match_is_too_short_then_we_dont_panic ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_parser_trie_when_a_parser_is_not_matched_then_the_parser_stack_is_unwind_so_an_untried_parser_is_tried ... ok [INFO] [stdout] test parsers::has_length_constraint::test::test_given_parser_when_the_minimum_match_length_is_set_then_the_shorter_matches_are_discarded ... ok [INFO] [stdout] test parsers::int::test::test_given_int_parser_when_the_match_is_empty_then_the_result_isnt_successful ... ok [INFO] [stdout] test parsers::greedy::test::test_given_greedy_parser_when_the_end_string_is_found_in_the_value_then_the_parser_matches ... ok [INFO] [stdout] test parsers::has_length_constraint::test::test_given_parser_when_the_match_length_is_not_constrained_then_the_match_length_is_ok_in_every_case ... ok [INFO] [stdout] test parsers::greedy::test::test_given_greedy_parser_when_the_end_string_is_not_found_in_the_value_then_the_parser_doesnt_match ... ok [INFO] [stdout] test matcher::suffix_array::test::test_given_suffix_array_when_literals_are_inserted_then_it_can_find_the_string_with_the_longest_common_prefix ... ok [INFO] [stdout] test parsers::has_length_constraint::test::test_given_parser_when_the_maximum_match_length_is_set_then_the_longer_matches_are_discarded ... ok [INFO] [stdout] test parsers::set::test::test_given_empty_string_when_parsed_it_wont_match ... ok [INFO] [stdout] test parsers::set::test::test_given_maximum_match_length_when_a_match_is_longer_it_doesnt_count_as_a_match ... ok [INFO] [stdout] test parsers::set::test::test_given_matching_string_when_parsed_it_matches ... ok [INFO] [stdout] test parsers::int::test::test_given_matching_string_which_is_longer_than_the_max_match_length_when_it_is_parsed_then_it_does_not_match ... ok [INFO] [stdout] test parsers::set::test::test_given_minimum_and_maximum_match_length_when_a_proper_length_match_occures_it_counts_as_a_match ... ok [INFO] [stdout] test utils::common_prefix::test::given_a_string_when_longest_common_prefix_is_calulated_then_the_result_is_right ... ok [INFO] [stdout] test utils::common_prefix::test::test_given_a_string_when_truncated_by_left_then_the_result_is_the_expected ... ok [INFO] [stdout] test parsers::set::test::test_given_set_parser_and_when_differently_parametrized_instances_are_hashed_then_the_hashes_are_different ... ok [INFO] [stdout] test parsers::set::test::test_given_not_matching_string_when_parsed_it_wont_match ... ok [INFO] [stdout] test parsers::set::test::test_given_minimum_match_length_when_a_match_is_shorter_it_doesnt_count_as_a_match ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_parser_trie_when_a_parser_is_not_matched_then_the_parser_stack_is_unwind_so_an_untried_parser_is_tried ... ok [INFO] [stdout] test parsers::int::test::test_given_matching_string_when_it_is_parsed_then_it_matches ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_when_length_is_queried_it_is_ok ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_when_values_are_found_then_their_references_are_returned ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_when_values_are_pushed_they_get_sorted ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_parser_trie_when_some_patterns_are_inserted_then_fully_matching_literals_are_returned_as_empty_vectors ... ok [INFO] [stdout] test utils::common_prefix::test::test_given_a_string_when_truncated_by_right_then_the_result_is_the_expected ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_when_values_are_pushed_they_be_get ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_parser_trie_when_the_to_be_parsed_literal_is_not_matched_then_the_parse_result_is_none ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_parser_trie_when_some_patterns_are_inserted_then_literal_matches_have_precedence_over_parser_matches ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_parser_trie_when_the_to_be_parsed_literal_is_a_prefix_in_the_tree_then_the_parse_result_is_none ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_when_values_are_searched_by_custom_cmp_func_they_can_be_found ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_pattern_when_inserted_into_the_parser_tree_then_the_pattern_is_stored_in_the_leaf ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_node_when_the_message_is_too_short_we_do_not_try_to_unwrap_a_childs_pattern ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_when_values_are_searched_they_can_be_found ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_pattern_with_two_neighbouring_parser_when_the_pattern_is_inserted_into_the_trie_then_everything_is_ok ... ok [INFO] [stdout] test matcher::trie::node::test::test_given_parser_trie_when_some_patterns_are_inserted_then_texts_can_be_parsed ... ok [INFO] [stdout] test utils::sortedvec::test::test_given_sorted_vector_of_literal_nodes_when_binary_search_by_are_used_the_right_node_is_found ... ok [INFO] [stdout] test grammar::test::test_given_invalid_string_when_we_parse_it_then_the_parser_returns_with_error ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 81 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/lib-c3f1fc6cec44bd8b [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test file::test_given_a_non_existing_pattern_file_when_it_is_deserialized_then_we_get_io_error ... ok [INFO] [stdout] test file::test_given_not_existing_yaml_pattern_file_when_it_is_opened_we_get_io_error ... ok [INFO] [stdout] test file::test_given_a_valid_json_pattern_file_when_it_is_deserialized_then_we_can_extract_the_patterns_from_it ... ok [INFO] [stdout] test file::test_given_an_invalid_json_pattern_file_when_it_is_deserialized_then_we_get_deserialization_error ... ok [INFO] [stdout] test file::test_given_valid_yaml_pattern_file_when_it_is_deserialized_then_we_get_the_deserialized_contents ... ok [INFO] [stdout] test matcher::test_given_json_file_when_its_syntax_is_not_ok_then_matcher_cannot_be_built_from_it ... ok [INFO] [stdout] test matcher::test_given_non_existing_json_file_when_it_is_loaded_then_matcher_cannot_be_created_from_it ... ok [INFO] [stdout] test matcher::test_given_json_file_when_the_tests_contain_tags_but_the_pattern_does_not_have_them_then_we_fail ... ok [INFO] [stdout] test matcher::test_given_json_file_when_its_syntax_is_ok_then_matcher_can_be_built_from_it ... ok [INFO] [stdout] test matcher::test_given_json_file_when_a_pattern_contains_cr_characters_then_we_handle_it_properly ... ok [INFO] [stdout] test matcher::test_given_json_file_when_an_expected_value_is_not_found_then_we_fail ... ok [INFO] [stdout] test matcher::test_given_json_file_when_matcher_is_created_by_factory_then_the_right_file_type_is_used_based_on_the_extension ... ok [INFO] [stdout] test matcher::test_given_json_file_when_a_pattern_contains_test_values_then_we_only_check_the_expected_ones ... ok [INFO] [stdout] test matcher::test_given_json_file_when_a_pattern_contains_test_tags_then_we_only_check_the_expected_ones ... ok [INFO] [stdout] test matcher::test_given_json_file_when_we_check_the_test_messages_then_the_resulting_pattern_should_be_the_tested_one ... ok [INFO] [stderr] Doc-tests actiondb [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "2cb4da3e78a3429d2cb7a59e7ded6672eb2b5f286d43fd40dff38b564a17ab3b"` [INFO] running `"docker" "rm" "-f" "2cb4da3e78a3429d2cb7a59e7ded6672eb2b5f286d43fd40dff38b564a17ab3b"` [INFO] [stdout] 2cb4da3e78a3429d2cb7a59e7ded6672eb2b5f286d43fd40dff38b564a17ab3b