[INFO] updating cached repository uutils/findutils [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/uutils/findutils [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/uutils/findutils" "work/ex/beta-1.38-1/sources/1.37.0/gh/uutils/findutils"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/1.37.0/gh/uutils/findutils'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/uutils/findutils" "work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/uutils/findutils"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/uutils/findutils'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 5edc5fe1e2ea493a138750aba728ef52eb2a2c6d [INFO] sha for GitHub repo uutils/findutils: 5edc5fe1e2ea493a138750aba728ef52eb2a2c6d [INFO] validating manifest of uutils/findutils on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of uutils/findutils on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing uutils/findutils [INFO] finished frobbing uutils/findutils [INFO] frobbed toml for uutils/findutils written to work/ex/beta-1.38-1/sources/1.37.0/gh/uutils/findutils/Cargo.toml [INFO] started frobbing uutils/findutils [INFO] finished frobbing uutils/findutils [INFO] frobbed toml for uutils/findutils written to work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/uutils/findutils/Cargo.toml [INFO] crate uutils/findutils already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing uutils/findutils against beta-2019-08-13 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-7/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/uutils/findutils:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "build" "--frozen"` [INFO] [stdout] 01bf2758fcaa6005275d9e72f36677d009669cea0bdddf85754eb3e81fddc7d7 [INFO] running `"docker" "start" "-a" "01bf2758fcaa6005275d9e72f36677d009669cea0bdddf85754eb3e81fddc7d7"` [INFO] [stderr] Compiling rand v0.4.2 [INFO] [stderr] Compiling regex-syntax v0.6.6 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling regex v1.1.7 [INFO] [stderr] Compiling findutils v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/exec.rs:32:40 [INFO] [stderr] | [INFO] [stderr] 32 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [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/find/matchers/exec.rs:52:21 [INFO] [stderr] | [INFO] [stderr] 52 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/exec.rs:52:35 [INFO] [stderr] | [INFO] [stderr] 52 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:24:26 [INFO] [stderr] | [INFO] [stderr] 24 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:28:37 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn new(submatchers: Vec>) -> AndMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:63:26 [INFO] [stderr] | [INFO] [stderr] 63 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:73:54 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn new_and_condition(&mut self, matcher: Box) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:78:35 [INFO] [stderr] | [INFO] [stderr] 78 | pub fn build(mut 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/find/matchers/logical_matchers.rs:95:26 [INFO] [stderr] | [INFO] [stderr] 95 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:99:37 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn new(submatchers: Vec>) -> OrMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:138:54 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new_and_condition(&mut self, matcher: Box) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:146:69 [INFO] [stderr] | [INFO] [stderr] 146 | pub fn new_or_condition(&mut self, arg: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:167:35 [INFO] [stderr] | [INFO] [stderr] 167 | pub fn build(mut 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/find/matchers/logical_matchers.rs:187:26 [INFO] [stderr] | [INFO] [stderr] 187 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:191:37 [INFO] [stderr] | [INFO] [stderr] 191 | pub fn new(submatchers: Vec>) -> ListMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:231:54 [INFO] [stderr] | [INFO] [stderr] 231 | pub fn new_and_condition(&mut self, matcher: Box) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:239:69 [INFO] [stderr] | [INFO] [stderr] 239 | pub fn new_or_condition(&mut self, arg: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:243:65 [INFO] [stderr] | [INFO] [stderr] 243 | pub fn check_new_and_condition(&mut self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:258:60 [INFO] [stderr] | [INFO] [stderr] 258 | pub fn new_list_condition(&mut self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:283:35 [INFO] [stderr] | [INFO] [stderr] 283 | pub fn build(mut 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/find/matchers/logical_matchers.rs:301:29 [INFO] [stderr] | [INFO] [stderr] 301 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:322:29 [INFO] [stderr] | [INFO] [stderr] 322 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:329:21 [INFO] [stderr] | [INFO] [stderr] 329 | submatcher: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:333:32 [INFO] [stderr] | [INFO] [stderr] 333 | pub fn new(submatcher: Box) -> NotMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:339:36 [INFO] [stderr] | [INFO] [stderr] 339 | pub fn new_box(submatcher: Box) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/name.rs:26:56 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn new_box(pattern_string: &str) -> Result, PatternError> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/name.rs:51:56 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn new_box(pattern_string: &str) -> Result, PatternError> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:33:20 [INFO] [stderr] | [INFO] [stderr] 33 | type Err = Box; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:34:56 [INFO] [stderr] | [INFO] [stderr] 34 | fn from_str(s: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:97:43 [INFO] [stderr] | [INFO] [stderr] 97 | fn error(&self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:104:66 [INFO] [stderr] | [INFO] [stderr] 104 | fn handle_char(&mut self, char: &char) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:233:75 [INFO] [stderr] | [INFO] [stderr] 233 | pub fn parse(string_value: &str) -> Result<(u32, ComparisonType), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:273:58 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn new(pattern: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:288:49 [INFO] [stderr] | [INFO] [stderr] 288 | pub fn new_box(pattern: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:288:63 [INFO] [stderr] | [INFO] [stderr] 288 | pub fn new_box(pattern: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/printer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/prune.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:25:20 [INFO] [stderr] | [INFO] [stderr] 25 | type Err = Box; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:26:46 [INFO] [stderr] | [INFO] [stderr] 26 | fn from_str(s: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:78:34 [INFO] [stderr] | [INFO] [stderr] 78 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:88:21 [INFO] [stderr] | [INFO] [stderr] 88 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:88:35 [INFO] [stderr] | [INFO] [stderr] 88 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:24:64 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn new(path_to_file: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:31:54 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn new_box(path_to_file: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:31:68 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn new_box(path_to_file: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:37:70 [INFO] [stderr] | [INFO] [stderr] 37 | fn matches_impl(&self, file_info: &DirEntry) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:114:87 [INFO] [stderr] | [INFO] [stderr] 114 | fn matches_impl(&self, file_info: &DirEntry, now: SystemTime) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:143:80 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn new_box(file_time_type: FileTimeType, days: ComparableValue) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/type_matcher.rs:19:62 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new(type_string: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/type_matcher.rs:41:53 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new_box(type_string: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/type_matcher.rs:41:67 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new_box(type_string: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:29:15 [INFO] [stderr] | [INFO] [stderr] 29 | deps: &'a Dependencies<'a>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn new(deps: &'a Dependencies<'a>) -> MatcherIO<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:110:31 [INFO] [stderr] | [INFO] [stderr] 110 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:128:89 [INFO] [stderr] | [INFO] [stderr] 128 | fn convert_arg_to_number(option_name: &str, value_as_string: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:142:34 [INFO] [stderr] | [INFO] [stderr] 142 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:163:44 [INFO] [stderr] | [INFO] [stderr] 163 | ) -> Result<(ComparableValue, String), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:193:25 [INFO] [stderr] | [INFO] [stderr] 193 | ) -> Result<(usize, Box), Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | ) -> Result<(usize, Box), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:39:44 [INFO] [stderr] | [INFO] [stderr] 39 | fn get_output(&'a self) -> &'a RefCell; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:45:24 [INFO] [stderr] | [INFO] [stderr] 45 | output: Rc>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:59:44 [INFO] [stderr] | [INFO] [stderr] 59 | fn get_output(&'a self) -> &'a RefCell { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:70:18 [INFO] [stderr] | [INFO] [stderr] 70 | matcher: Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn self::matchers::Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:76:56 [INFO] [stderr] | [INFO] [stderr] 76 | fn parse_args(args: &[&str]) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:103:15 [INFO] [stderr] | [INFO] [stderr] 103 | deps: &'a Dependencies<'a>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:104:19 [INFO] [stderr] | [INFO] [stderr] 104 | matcher: &Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn matchers::Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:105:22 [INFO] [stderr] | [INFO] [stderr] 105 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:138:41 [INFO] [stderr] | [INFO] [stderr] 138 | fn do_find<'a>(args: &[&str], deps: &'a Dependencies<'a>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:138:78 [INFO] [stderr] | [INFO] [stderr] 138 | fn do_find<'a>(args: &[&str], deps: &'a Dependencies<'a>) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:198:47 [INFO] [stderr] | [INFO] [stderr] 198 | pub fn find_main<'a>(args: &[&str], deps: &'a Dependencies<'a>) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 24.68s [INFO] running `"docker" "inspect" "01bf2758fcaa6005275d9e72f36677d009669cea0bdddf85754eb3e81fddc7d7"` [INFO] running `"docker" "rm" "-f" "01bf2758fcaa6005275d9e72f36677d009669cea0bdddf85754eb3e81fddc7d7"` [INFO] [stdout] 01bf2758fcaa6005275d9e72f36677d009669cea0bdddf85754eb3e81fddc7d7 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-7/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/uutils/findutils:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen" "--no-run"` [INFO] [stdout] 76ea59fee63e02b785541772af21381fddee6ae211338da24557dc3645014ee3 [INFO] running `"docker" "start" "-a" "76ea59fee63e02b785541772af21381fddee6ae211338da24557dc3645014ee3"` [INFO] [stderr] Compiling findutils v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> tests/common/test_helpers.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_output(&'a self) -> &'a RefCell { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> tests/common/test_helpers.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_output(&'a self) -> &'a RefCell { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/exec.rs:32:40 [INFO] [stderr] | [INFO] [stderr] 32 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [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/find/matchers/exec.rs:52:21 [INFO] [stderr] | [INFO] [stderr] 52 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/exec.rs:52:35 [INFO] [stderr] | [INFO] [stderr] 52 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:24:26 [INFO] [stderr] | [INFO] [stderr] 24 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:28:37 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn new(submatchers: Vec>) -> AndMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:63:26 [INFO] [stderr] | [INFO] [stderr] 63 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:73:54 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn new_and_condition(&mut self, matcher: Box) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:78:35 [INFO] [stderr] | [INFO] [stderr] 78 | pub fn build(mut 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/find/matchers/logical_matchers.rs:95:26 [INFO] [stderr] | [INFO] [stderr] 95 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:99:37 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn new(submatchers: Vec>) -> OrMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:138:54 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new_and_condition(&mut self, matcher: Box) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:146:69 [INFO] [stderr] | [INFO] [stderr] 146 | pub fn new_or_condition(&mut self, arg: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:167:35 [INFO] [stderr] | [INFO] [stderr] 167 | pub fn build(mut 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/find/matchers/logical_matchers.rs:187:26 [INFO] [stderr] | [INFO] [stderr] 187 | submatchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:191:37 [INFO] [stderr] | [INFO] [stderr] 191 | pub fn new(submatchers: Vec>) -> ListMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:231:54 [INFO] [stderr] | [INFO] [stderr] 231 | pub fn new_and_condition(&mut self, matcher: Box) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:239:69 [INFO] [stderr] | [INFO] [stderr] 239 | pub fn new_or_condition(&mut self, arg: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:243:65 [INFO] [stderr] | [INFO] [stderr] 243 | pub fn check_new_and_condition(&mut self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:258:60 [INFO] [stderr] | [INFO] [stderr] 258 | pub fn new_list_condition(&mut self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:283:35 [INFO] [stderr] | [INFO] [stderr] 283 | pub fn build(mut 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/find/matchers/logical_matchers.rs:301:29 [INFO] [stderr] | [INFO] [stderr] 301 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:322:29 [INFO] [stderr] | [INFO] [stderr] 322 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:329:21 [INFO] [stderr] | [INFO] [stderr] 329 | submatcher: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:333:32 [INFO] [stderr] | [INFO] [stderr] 333 | pub fn new(submatcher: Box) -> NotMatcher { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:339:36 [INFO] [stderr] | [INFO] [stderr] 339 | pub fn new_box(submatcher: Box) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/logical_matchers.rs:385:33 [INFO] [stderr] | [INFO] [stderr] 385 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/name.rs:26:56 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn new_box(pattern_string: &str) -> Result, PatternError> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/name.rs:51:56 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn new_box(pattern_string: &str) -> Result, PatternError> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:33:20 [INFO] [stderr] | [INFO] [stderr] 33 | type Err = Box; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:34:56 [INFO] [stderr] | [INFO] [stderr] 34 | fn from_str(s: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:97:43 [INFO] [stderr] | [INFO] [stderr] 97 | fn error(&self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:104:66 [INFO] [stderr] | [INFO] [stderr] 104 | fn handle_char(&mut self, char: &char) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:233:75 [INFO] [stderr] | [INFO] [stderr] 233 | pub fn parse(string_value: &str) -> Result<(u32, ComparisonType), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:273:58 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn new(pattern: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:288:49 [INFO] [stderr] | [INFO] [stderr] 288 | pub fn new_box(pattern: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/perm.rs:288:63 [INFO] [stderr] | [INFO] [stderr] 288 | pub fn new_box(pattern: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/printer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/prune.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_box() -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:25:20 [INFO] [stderr] | [INFO] [stderr] 25 | type Err = Box; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:26:46 [INFO] [stderr] | [INFO] [stderr] 26 | fn from_str(s: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:78:34 [INFO] [stderr] | [INFO] [stderr] 78 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:88:21 [INFO] [stderr] | [INFO] [stderr] 88 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/size.rs:88:35 [INFO] [stderr] | [INFO] [stderr] 88 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:24:64 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn new(path_to_file: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:31:54 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn new_box(path_to_file: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:31:68 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn new_box(path_to_file: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:37:70 [INFO] [stderr] | [INFO] [stderr] 37 | fn matches_impl(&self, file_info: &DirEntry) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:114:87 [INFO] [stderr] | [INFO] [stderr] 114 | fn matches_impl(&self, file_info: &DirEntry, now: SystemTime) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/time.rs:143:80 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn new_box(file_time_type: FileTimeType, days: ComparableValue) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/type_matcher.rs:19:62 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new(type_string: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/type_matcher.rs:41:53 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new_box(type_string: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/type_matcher.rs:41:67 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new_box(type_string: &str) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:29:15 [INFO] [stderr] | [INFO] [stderr] 29 | deps: &'a Dependencies<'a>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn new(deps: &'a Dependencies<'a>) -> MatcherIO<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:110:31 [INFO] [stderr] | [INFO] [stderr] 110 | ) -> Result, Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:128:89 [INFO] [stderr] | [INFO] [stderr] 128 | fn convert_arg_to_number(option_name: &str, value_as_string: &str) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:142:34 [INFO] [stderr] | [INFO] [stderr] 142 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:163:44 [INFO] [stderr] | [INFO] [stderr] 163 | ) -> Result<(ComparableValue, String), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:193:25 [INFO] [stderr] | [INFO] [stderr] 193 | ) -> Result<(usize, Box), Box> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/matchers/mod.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | ) -> Result<(usize, Box), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:39:44 [INFO] [stderr] | [INFO] [stderr] 39 | fn get_output(&'a self) -> &'a RefCell; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:45:24 [INFO] [stderr] | [INFO] [stderr] 45 | output: Rc>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:59:44 [INFO] [stderr] | [INFO] [stderr] 59 | fn get_output(&'a self) -> &'a RefCell { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:70:18 [INFO] [stderr] | [INFO] [stderr] 70 | matcher: Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn self::matchers::Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:76:56 [INFO] [stderr] | [INFO] [stderr] 76 | fn parse_args(args: &[&str]) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:103:15 [INFO] [stderr] | [INFO] [stderr] 103 | deps: &'a Dependencies<'a>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:104:19 [INFO] [stderr] | [INFO] [stderr] 104 | matcher: &Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn matchers::Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:105:22 [INFO] [stderr] | [INFO] [stderr] 105 | ) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:138:41 [INFO] [stderr] | [INFO] [stderr] 138 | fn do_find<'a>(args: &[&str], deps: &'a Dependencies<'a>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:138:78 [INFO] [stderr] | [INFO] [stderr] 138 | fn do_find<'a>(args: &[&str], deps: &'a Dependencies<'a>) -> Result> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:198:47 [INFO] [stderr] | [INFO] [stderr] 198 | pub fn find_main<'a>(args: &[&str], deps: &'a Dependencies<'a>) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Dependencies<'a>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/find/mod.rs:267:48 [INFO] [stderr] | [INFO] [stderr] 267 | fn get_output(&'a self) -> &'a RefCell { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 7.95s [INFO] running `"docker" "inspect" "76ea59fee63e02b785541772af21381fddee6ae211338da24557dc3645014ee3"` [INFO] running `"docker" "rm" "-f" "76ea59fee63e02b785541772af21381fddee6ae211338da24557dc3645014ee3"` [INFO] [stdout] 76ea59fee63e02b785541772af21381fddee6ae211338da24557dc3645014ee3 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-7/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/uutils/findutils:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen"` [INFO] [stdout] a71074d58a04e3305189d5bd69ec150dc8b0dcba3c67b2d7c3f6e99d0a247b18 [INFO] running `"docker" "start" "-a" "a71074d58a04e3305189d5bd69ec150dc8b0dcba3c67b2d7c3f6e99d0a247b18"` [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running /opt/crater/target/debug/deps/findutils-94aa6167622b7af3 [INFO] [stdout] [INFO] [stdout] running 86 tests [INFO] [stdout] test find::matchers::logical_matchers::tests::and_has_side_effects_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::false_has_side_effects_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::list_has_side_effects_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::not_has_side_effects_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::and_matches_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::list_matches_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::false_matches_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::or_has_side_effects_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::true_matches_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::true_has_side_effects_works ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::not_matches_works ... ok [INFO] [stdout] test find::matchers::name::tests::caseless_cant_create_with_invalid_pattern ... ok [INFO] [stdout] test find::matchers::name::tests::cant_create_with_invalid_pattern ... ok [INFO] [stdout] test find::matchers::name::tests::caseless_matching_with_right_case_returns_true ... ok [INFO] [stdout] test find::matchers::logical_matchers::tests::or_matches_works ... ok [INFO] [stdout] test find::matchers::name::tests::caseless_not_matching_returns_false ... ok [INFO] [stdout] test find::matchers::name::tests::matching_with_right_case_returns_true ... ok [INFO] [stdout] test find::matchers::name::tests::matching_with_wrong_case_returns_false ... ok [INFO] [stdout] test find::matchers::name::tests::caseless_matching_with_wrong_case_returns_true ... ok [INFO] [stdout] test find::matchers::name::tests::not_matching_returns_false ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_human_readable_multiple_bits ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_human_readable_set_id_bits ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_human_readable_sticky_bit ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_human_readable_multiple_categories ... ok [INFO] [stdout] test find::matchers::prune::tests::file_type_matcher ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_octal ... ok [INFO] [stdout] test find::matchers::size::tests::size_matcher_bad_unit ... ok [INFO] [stdout] test find::matchers::size::tests::size_matcher ... ok [INFO] [stdout] test find::matchers::size::tests::test_byte_size_to_unit_size ... ok [INFO] [stdout] test find::matchers::printer::tests::prints ... ok [INFO] [stdout] test find::matchers::size::tests::unit_from_string ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_fails ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_exec_not_enough_args ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_prefix ... ok [INFO] [stdout] test find::matchers::perm::tests::comparison_type_matching ... ok [INFO] [stdout] test find::matchers::perm::tests::perm_matches ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_and_without_expr1 ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_and_without_expr2 ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_can_use_bracket_as_arg ... ok [INFO] [stdout] test find::matchers::perm::tests::parsing_human_readable_individual_bits ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_list_without_expr1 ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_and_works ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_brackets_work ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_dash_a_works ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_exec_should_eat_args ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_iname ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_bad_ctime_value ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_list_without_expr2 ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_list_works ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_not_needs_expression ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_or_without_expr2 ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_not_double_negation ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_not_enough_brackets ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_or_without_expr1 ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_or_works ... ok [INFO] [stdout] test find::matchers::tests::comparable_value_imatches ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_not_and_brackets_work ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_name ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_not ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_missing_args ... ok [INFO] [stdout] test find::matchers::time::tests::file_time_matcher ... ok [INFO] [stdout] test find::matchers::tests::comparable_value_matches ... ok [INFO] [stdout] test find::matchers::type_matcher::tests::cant_create_with_invalid_pattern ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_too_many_brackets ... ok [INFO] [stdout] test find::tests::find_ctime ... ok [INFO] [stdout] test find::matchers::time::tests::newer_matcher ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_perm_bad ... ok [INFO] [stdout] test find::matchers::type_matcher::tests::dir_type_matcher ... ok [INFO] [stdout] test find::tests::find_maxdepth_depth_first ... ok [INFO] [stdout] test find::matchers::type_matcher::tests::file_type_matcher ... ok [INFO] [stdout] test find::matchers::tests::build_top_level_matcher_perm ... ok [INFO] [stdout] test find::tests::find_mindepth ... ok [INFO] [stdout] test find::tests::find_mindepth_depth_first ... ok [INFO] [stdout] test find::tests::find_maxdepth ... ok [INFO] [stdout] test find::tests::find_main_not_depth_first ... ok [INFO] [stdout] test find::tests::find_prune ... ok [INFO] [stdout] test find::tests::find_zero_maxdepth ... ok [INFO] [stdout] test find::tests::find_zero_maxdepth_depth_first ... ok [INFO] [stdout] test find::tests::find_mtime ... ok [INFO] [stdout] test find::tests::find_atime ... ok [INFO] [stdout] test find::tests::parse_args_handles_single_dash ... ok [INFO] [stdout] test find::tests::parse_args_bad_flag ... ok [INFO] [stdout] test find::tests::find_main_depth_first ... ok [INFO] [stdout] test find::tests::find_newer ... ok [INFO] [stdout] test find::tests::find_size ... ok [INFO] [stdout] test find::matchers::time::tests::file_time_matcher_modified_created_accessed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 86 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/find-48262c5ee8cd8064 [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] [stderr] Running /opt/crater/target/debug/deps/testing_commandline-6d4245d0ba0d4ce9 [INFO] [stderr] Running /opt/crater/target/debug/deps/exec_unit_tests-add4585d3dac170b [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] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test matching_fails_if_executable_fails ... ok [INFO] [stdout] test matching_executes_code_in_files_directory ... ok [INFO] [stdout] test matching_executes_code ... ok [INFO] [stdout] test execdir_in_current_directory ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/find_exec_tests-51ba5f3dabb90725 [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test find_execdir ... ok [INFO] [stdout] test find_exec ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests findutils [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" "a71074d58a04e3305189d5bd69ec150dc8b0dcba3c67b2d7c3f6e99d0a247b18"` [INFO] running `"docker" "rm" "-f" "a71074d58a04e3305189d5bd69ec150dc8b0dcba3c67b2d7c3f6e99d0a247b18"` [INFO] [stdout] a71074d58a04e3305189d5bd69ec150dc8b0dcba3c67b2d7c3f6e99d0a247b18