[INFO] fetching crate cronparse 0.5.1... [INFO] testing cronparse-0.5.1 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate cronparse 0.5.1 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate cronparse 0.5.1 [INFO] finished tweaking crates.io crate cronparse 0.5.1 [INFO] tweaked toml for crates.io crate cronparse 0.5.1 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate cronparse 0.5.1 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 15 packages to latest compatible versions [INFO] [stderr] Adding skeptic v0.5.0 (available: v0.13.7) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded skeptic v0.5.0 [INFO] [stderr] Downloaded pulldown-cmark v0.0.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3f953b26ab87767b8412b39176a9368bfb8d22cf1b671154675359be0444ab67 [INFO] running `Command { std: "docker" "start" "-a" "3f953b26ab87767b8412b39176a9368bfb8d22cf1b671154675359be0444ab67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3f953b26ab87767b8412b39176a9368bfb8d22cf1b671154675359be0444ab67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f953b26ab87767b8412b39176a9368bfb8d22cf1b671154675359be0444ab67", kill_on_drop: false }` [INFO] [stdout] 3f953b26ab87767b8412b39176a9368bfb8d22cf1b671154675359be0444ab67 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] e1c837315494ec3432ae5689f1991f70e3273b5243709df86e001ecd7e799330 [INFO] running `Command { std: "docker" "start" "-a" "e1c837315494ec3432ae5689f1991f70e3273b5243709df86e001ecd7e799330", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling unicode-width v0.2.1 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling getopts v0.2.23 [INFO] [stderr] Compiling pulldown-cmark v0.0.3 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling skeptic v0.5.0 [INFO] [stderr] Compiling cronparse v0.5.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/schedule.rs:218:18 [INFO] [stdout] | [INFO] [stdout] 218 | _ => try!(s.parse().map(Period::Days)), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:94:27 [INFO] [stdout] | [INFO] [stdout] 94 | (&s[..slash], try!(s[slash+1..].parse())) // FIXME [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:108:45 [INFO] [stdout] | [INFO] [stdout] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | try!(item.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | try!(f.write_str(",")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | try!(self.0.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | try!(f.write_str(":")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:171:13 [INFO] [stdout] | [INFO] [stdout] 171 | try!(group.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | try!(f.write_str(":")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | try!(class.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | try!(splits.next().ok_or(UserInfoParseError).map(ToOwned::to_owned)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:276:20 [INFO] [stdout] | [INFO] [stdout] 276 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:295:20 [INFO] [stdout] | [INFO] [stdout] 295 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:296:19 [INFO] [stdout] | [INFO] [stdout] 296 | user: try!(splits.next().ok_or(UserInfoParseError).and_then(FromStr::from_str)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:315:21 [INFO] [stdout] | [INFO] [stdout] 315 | ... period: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidPeriod)).unwrap_or(Err(CrontabEntryParseError::... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:316:20 [INFO] [stdout] | [INFO] [stdout] 316 | ... delay: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidDelay)).unwrap_or(Err(CrontabEntryParseError::Mi... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:317:20 [INFO] [stdout] | [INFO] [stdout] 317 | jobid: try!(splits.next().map(ToOwned::to_owned).ok_or(CrontabEntryParseError::MissingJobId)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/schedule.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 108 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:176:32 [INFO] [stdout] | [INFO] [stdout] 176 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 176 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:297:32 [INFO] [stdout] | [INFO] [stdout] 297 | fn cause(&self) -> Option<&Error> { None } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 297 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:402:32 [INFO] [stdout] | [INFO] [stdout] 402 | fn cause(&self) -> Option<&Error> { None } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 402 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:467:32 [INFO] [stdout] | [INFO] [stdout] 467 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 467 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/interval.rs:78:32 [INFO] [stdout] | [INFO] [stdout] 78 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/crontab.rs:197:32 [INFO] [stdout] | [INFO] [stdout] 197 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/crontab.rs:251:32 [INFO] [stdout] | [INFO] [stdout] 251 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 251 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:85:32 [INFO] [stdout] | [INFO] [stdout] 85 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 85 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/crontab.rs:132:26 [INFO] [stdout] | [INFO] [stdout] 132 | Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 132 - Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stdout] 132 + Some(n) => n.trim_end_matches(&spaces[..]), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/crontab.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 145 - Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stdout] 145 + Some(v) => v.trim_start_matches(&spaces[..]), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/crontab.rs:230:35 [INFO] [stdout] | [INFO] [stdout] 230 | _ => f.write_str(self.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromIterator` [INFO] [stdout] --> src/schedule.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::iter::{FromIterator, IntoIterator, Iterator}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/crontab.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/schedule.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.02s [INFO] running `Command { std: "docker" "inspect" "e1c837315494ec3432ae5689f1991f70e3273b5243709df86e001ecd7e799330", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e1c837315494ec3432ae5689f1991f70e3273b5243709df86e001ecd7e799330", kill_on_drop: false }` [INFO] [stdout] e1c837315494ec3432ae5689f1991f70e3273b5243709df86e001ecd7e799330 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 7934e31d35bb89ac607fa9499649a0753840897b8d4273c622e241720fb0ae06 [INFO] running `Command { std: "docker" "start" "-a" "7934e31d35bb89ac607fa9499649a0753840897b8d4273c622e241720fb0ae06", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling unicode-width v0.2.1 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/schedule.rs:218:18 [INFO] [stdout] | [INFO] [stdout] 218 | _ => try!(s.parse().map(Period::Days)), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:94:27 [INFO] [stdout] | [INFO] [stdout] 94 | (&s[..slash], try!(s[slash+1..].parse())) // FIXME [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:108:45 [INFO] [stdout] | [INFO] [stdout] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | try!(item.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | try!(f.write_str(",")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | try!(self.0.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | try!(f.write_str(":")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:171:13 [INFO] [stdout] | [INFO] [stdout] 171 | try!(group.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | try!(f.write_str(":")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | try!(class.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | try!(splits.next().ok_or(UserInfoParseError).map(ToOwned::to_owned)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:276:20 [INFO] [stdout] | [INFO] [stdout] 276 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:295:20 [INFO] [stdout] | [INFO] [stdout] 295 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:296:19 [INFO] [stdout] | [INFO] [stdout] 296 | user: try!(splits.next().ok_or(UserInfoParseError).and_then(FromStr::from_str)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:315:21 [INFO] [stdout] | [INFO] [stdout] 315 | ... period: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidPeriod)).unwrap_or(Err(CrontabEntryParseError::... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:316:20 [INFO] [stdout] | [INFO] [stdout] 316 | ... delay: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidDelay)).unwrap_or(Err(CrontabEntryParseError::Mi... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:317:20 [INFO] [stdout] | [INFO] [stdout] 317 | jobid: try!(splits.next().map(ToOwned::to_owned).ok_or(CrontabEntryParseError::MissingJobId)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/schedule.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 108 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:176:32 [INFO] [stdout] | [INFO] [stdout] 176 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 176 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:297:32 [INFO] [stdout] | [INFO] [stdout] 297 | fn cause(&self) -> Option<&Error> { None } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 297 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:402:32 [INFO] [stdout] | [INFO] [stdout] 402 | fn cause(&self) -> Option<&Error> { None } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 402 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:467:32 [INFO] [stdout] | [INFO] [stdout] 467 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 467 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/interval.rs:78:32 [INFO] [stdout] | [INFO] [stdout] 78 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/crontab.rs:197:32 [INFO] [stdout] | [INFO] [stdout] 197 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/crontab.rs:251:32 [INFO] [stdout] | [INFO] [stdout] 251 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 251 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:85:32 [INFO] [stdout] | [INFO] [stdout] 85 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 85 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/crontab.rs:132:26 [INFO] [stdout] | [INFO] [stdout] 132 | Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 132 - Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stdout] 132 + Some(n) => n.trim_end_matches(&spaces[..]), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/crontab.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 145 - Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stdout] 145 + Some(v) => v.trim_start_matches(&spaces[..]), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/crontab.rs:230:35 [INFO] [stdout] | [INFO] [stdout] 230 | _ => f.write_str(self.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromIterator` [INFO] [stdout] --> src/schedule.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::iter::{FromIterator, IntoIterator, Iterator}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/crontab.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/schedule.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling getopts v0.2.23 [INFO] [stderr] Compiling pulldown-cmark v0.0.3 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling skeptic v0.5.0 [INFO] [stderr] Compiling cronparse v0.5.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/schedule.rs:218:18 [INFO] [stdout] | [INFO] [stdout] 218 | _ => try!(s.parse().map(Period::Days)), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:94:27 [INFO] [stdout] | [INFO] [stdout] 94 | (&s[..slash], try!(s[slash+1..].parse())) // FIXME [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:108:45 [INFO] [stdout] | [INFO] [stdout] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | try!(item.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interval.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | try!(f.write_str(",")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | try!(self.0.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | try!(f.write_str(":")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:171:13 [INFO] [stdout] | [INFO] [stdout] 171 | try!(group.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | try!(f.write_str(":")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | try!(class.fmt(f)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | try!(splits.next().ok_or(UserInfoParseError).map(ToOwned::to_owned)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:276:20 [INFO] [stdout] | [INFO] [stdout] 276 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:295:20 [INFO] [stdout] | [INFO] [stdout] 295 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:296:19 [INFO] [stdout] | [INFO] [stdout] 296 | user: try!(splits.next().ok_or(UserInfoParseError).and_then(FromStr::from_str)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:315:21 [INFO] [stdout] | [INFO] [stdout] 315 | ... period: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidPeriod)).unwrap_or(Err(CrontabEntryParseError::... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:316:20 [INFO] [stdout] | [INFO] [stdout] 316 | ... delay: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidDelay)).unwrap_or(Err(CrontabEntryParseError::Mi... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/crontab.rs:317:20 [INFO] [stdout] | [INFO] [stdout] 317 | jobid: try!(splits.next().map(ToOwned::to_owned).ok_or(CrontabEntryParseError::MissingJobId)), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/schedule.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 108 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:176:32 [INFO] [stdout] | [INFO] [stdout] 176 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 176 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:297:32 [INFO] [stdout] | [INFO] [stdout] 297 | fn cause(&self) -> Option<&Error> { None } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 297 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:402:32 [INFO] [stdout] | [INFO] [stdout] 402 | fn cause(&self) -> Option<&Error> { None } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 402 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/schedule.rs:467:32 [INFO] [stdout] | [INFO] [stdout] 467 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 467 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/interval.rs:78:32 [INFO] [stdout] | [INFO] [stdout] 78 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/crontab.rs:197:32 [INFO] [stdout] | [INFO] [stdout] 197 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/crontab.rs:251:32 [INFO] [stdout] | [INFO] [stdout] 251 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 251 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:85:32 [INFO] [stdout] | [INFO] [stdout] 85 | fn cause(&self) -> Option<&Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 85 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/crontab.rs:132:26 [INFO] [stdout] | [INFO] [stdout] 132 | Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 132 - Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stdout] 132 + Some(n) => n.trim_end_matches(&spaces[..]), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/crontab.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 145 - Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stdout] 145 + Some(v) => v.trim_start_matches(&spaces[..]), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/crontab.rs:230:35 [INFO] [stdout] | [INFO] [stdout] 230 | _ => f.write_str(self.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromIterator` [INFO] [stdout] --> src/schedule.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::iter::{FromIterator, IntoIterator, Iterator}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/crontab.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/schedule.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.09s [INFO] running `Command { std: "docker" "inspect" "7934e31d35bb89ac607fa9499649a0753840897b8d4273c622e241720fb0ae06", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7934e31d35bb89ac607fa9499649a0753840897b8d4273c622e241720fb0ae06", kill_on_drop: false }` [INFO] [stdout] 7934e31d35bb89ac607fa9499649a0753840897b8d4273c622e241720fb0ae06 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 47d40fe321d6ed93b39d036cf84bd88d47274379804568c4fb5dbae3171116f1 [INFO] running `Command { std: "docker" "start" "-a" "47d40fe321d6ed93b39d036cf84bd88d47274379804568c4fb5dbae3171116f1", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/schedule.rs:218:18 [INFO] [stderr] | [INFO] [stderr] 218 | _ => try!(s.parse().map(Period::Days)), [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/interval.rs:94:27 [INFO] [stderr] | [INFO] [stderr] 94 | (&s[..slash], try!(s[slash+1..].parse())) // FIXME [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/interval.rs:108:14 [INFO] [stderr] | [INFO] [stderr] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/interval.rs:108:45 [INFO] [stderr] | [INFO] [stderr] 108 | (try!(range[..hyphen].parse()), try!(range[hyphen+1..].parse())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/interval.rs:210:13 [INFO] [stderr] | [INFO] [stderr] 210 | try!(item.fmt(f)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/interval.rs:207:17 [INFO] [stderr] | [INFO] [stderr] 207 | try!(f.write_str(",")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | try!(self.0.fmt(f)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:170:13 [INFO] [stderr] | [INFO] [stderr] 170 | try!(f.write_str(":")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:171:13 [INFO] [stderr] | [INFO] [stderr] 171 | try!(group.fmt(f)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:174:13 [INFO] [stderr] | [INFO] [stderr] 174 | try!(f.write_str(":")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:175:13 [INFO] [stderr] | [INFO] [stderr] 175 | try!(class.fmt(f)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:186:13 [INFO] [stderr] | [INFO] [stderr] 186 | try!(splits.next().ok_or(UserInfoParseError).map(ToOwned::to_owned)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:276:20 [INFO] [stderr] | [INFO] [stderr] 276 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:295:20 [INFO] [stderr] | [INFO] [stderr] 295 | sched: try!(Schedule::from_iter(&mut splits)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:296:19 [INFO] [stderr] | [INFO] [stderr] 296 | user: try!(splits.next().ok_or(UserInfoParseError).and_then(FromStr::from_str)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:315:21 [INFO] [stderr] | [INFO] [stderr] 315 | ... period: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidPeriod)).unwrap_or(Err(CrontabEntryParseError::... [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:316:20 [INFO] [stderr] | [INFO] [stderr] 316 | ... delay: try!(splits.next().map(|v| v.parse().map_err(CrontabEntryParseError::InvalidDelay)).unwrap_or(Err(CrontabEntryParseError::Mi... [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/crontab.rs:317:20 [INFO] [stderr] | [INFO] [stderr] 317 | jobid: try!(splits.next().map(ToOwned::to_owned).ok_or(CrontabEntryParseError::MissingJobId)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stderr] --> src/schedule.rs:7:17 [INFO] [stderr] | [INFO] [stderr] 7 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/schedule.rs:108:32 [INFO] [stderr] | [INFO] [stderr] 108 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 108 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/schedule.rs:176:32 [INFO] [stderr] | [INFO] [stderr] 176 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 176 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/schedule.rs:297:32 [INFO] [stderr] | [INFO] [stderr] 297 | fn cause(&self) -> Option<&Error> { None } [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 297 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/schedule.rs:402:32 [INFO] [stderr] | [INFO] [stderr] 402 | fn cause(&self) -> Option<&Error> { None } [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 402 | fn cause(&self) -> Option<&dyn Error> { None } [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/schedule.rs:467:32 [INFO] [stderr] | [INFO] [stderr] 467 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 467 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/interval.rs:78:32 [INFO] [stderr] | [INFO] [stderr] 78 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 78 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/crontab.rs:197:32 [INFO] [stderr] | [INFO] [stderr] 197 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 197 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/crontab.rs:251:32 [INFO] [stderr] | [INFO] [stderr] 251 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 251 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:85:32 [INFO] [stderr] | [INFO] [stderr] 85 | fn cause(&self) -> Option<&Error> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 85 | fn cause(&self) -> Option<&dyn Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/crontab.rs:132:26 [INFO] [stderr] | [INFO] [stderr] 132 | Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: replace the use of the deprecated method [INFO] [stderr] | [INFO] [stderr] 132 - Some(n) => n.trim_right_matches(&spaces[..]), [INFO] [stderr] 132 + Some(n) => n.trim_end_matches(&spaces[..]), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/crontab.rs:145:26 [INFO] [stderr] | [INFO] [stderr] 145 | Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: replace the use of the deprecated method [INFO] [stderr] | [INFO] [stderr] 145 - Some(v) => v.trim_left_matches(&spaces[..]), [INFO] [stderr] 145 + Some(v) => v.trim_start_matches(&spaces[..]), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/crontab.rs:230:35 [INFO] [stderr] | [INFO] [stderr] 230 | _ => f.write_str(self.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `FromIterator` [INFO] [stderr] --> src/schedule.rs:8:17 [INFO] [stderr] | [INFO] [stderr] 8 | use std::iter::{FromIterator, IntoIterator, Iterator}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FromIterator` [INFO] [stderr] --> src/crontab.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::iter::FromIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/schedule.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `cronparse` (lib) generated 34 warnings (run `cargo fix --lib -p cronparse` to apply 11 suggestions) [INFO] [stderr] warning: `cronparse` (lib test) generated 34 warnings (34 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/cronparse-bebf1f263044b0fe) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stderr] Running tests/skeptic.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/skeptic-b6eca837803f181d) [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] error[E0461]: couldn't find crate `cronparse` with expected target triple x86_64-unknown-linux-gnu [INFO] [stderr] --> /tmp/rust-skeptic.y3XY4VwQDYoE/test.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | extern crate cronparse; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the following crate versions were found: [INFO] [stderr] crate `cronparse`, target triple x86_64-unknown-linux-musl: /opt/rustwide/target/x86_64-unknown-linux-musl/debug/libcronparse.rlib [INFO] [stderr] crate `cronparse`, target triple x86_64-unknown-linux-musl: /opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libcronparse-3abb1464add1d5b6.rmeta [INFO] [stderr] crate `cronparse`, target triple x86_64-unknown-linux-musl: /opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libcronparse-3abb1464add1d5b6.rlib [INFO] [stderr] [INFO] [stderr] error: aborting due to 1 previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0461`. [INFO] [stderr] error: test failed, to rerun pass `--test skeptic` [INFO] [stdout] test readme_0 ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- readme_0 stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'readme_0' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/skeptic-0.5.0/lib.rs:351:13: [INFO] [stdout] command failed [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x77973741c8b2 - std::backtrace_rs::backtrace::libunwind::trace::h559918daaaf51ab7 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x77973741c8b2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb04fbcf80d07af8b [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x77973741c8b2 - std::sys::backtrace::_print_fmt::h7c0bbbbfac0065d4 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x77973741c8b2 - ::fmt::hb62c8ed31943daa5 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x7797374573c3 - core::fmt::rt::Argument::fmt::he5eaa7dd607ed4c9 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x7797374573c3 - core::fmt::write::h375399f8cb90b45a [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/fmt/mod.rs:1460:25 [INFO] [stdout] 6: 0x779737419a43 - std::io::default_write_fmt::hdc1b4dd565dd0099 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x779737419a43 - std::io::Write::write_fmt::h29f6044e9bc43c23 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x77973741c702 - std::sys::backtrace::BacktraceLock::print::ha189c586374f916a [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x77973741dfac - std::panicking::default_hook::{{closure}}::ha3a26c98ff210e12 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:300:27 [INFO] [stdout] 10: 0x77973741de02 - std::panicking::default_hook::h8c8a86b4390ab794 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:324:9 [INFO] [stdout] 11: 0x7797373d54a4 - as core::ops::function::Fn>::call::ha39ae63ed1e9a130 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/alloc/src/boxed.rs:1980:9 [INFO] [stdout] 12: 0x7797373d54a4 - test::test_main_with_exit_callback::{{closure}}::h9df7c328ebe18c28 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x77973741ea13 - as core::ops::function::Fn>::call::h96b7201b552e9069 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/alloc/src/boxed.rs:1980:9 [INFO] [stdout] 14: 0x77973741ea13 - std::panicking::rust_panic_with_hook::hb3b66c2e80efa371 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:841:13 [INFO] [stdout] 15: 0x77973741e81c - std::panicking::begin_panic::{{closure}}::h3ce7fe5f3d6361b4 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:770:9 [INFO] [stdout] 16: 0x77973741cda9 - std::sys::backtrace::__rust_end_short_backtrace::h0bc33d2a8e0bcf29 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/sys/backtrace.rs:168:18 [INFO] [stdout] 17: 0x77973739b300 - std::panicking::begin_panic::h7531254884c52765 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:769:5 [INFO] [stdout] 18: 0x7797373e1b98 - skeptic::rt::interpret_output::h0699124ebc11a18e [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/skeptic-0.5.0/lib.rs:351:13 [INFO] [stdout] 19: 0x7797373e1352 - skeptic::rt::compile_test_case::h97a4a5217b70ecfc [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/skeptic-0.5.0/lib.rs:323:9 [INFO] [stdout] 20: 0x7797373e0c55 - skeptic::rt::run_test::ha4fef5460315e866 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/skeptic-0.5.0/lib.rs:299:9 [INFO] [stdout] 21: 0x77973739d220 - skeptic::readme_0::h6c3f449ebd61fecb [INFO] [stdout] at /opt/rustwide/target/x86_64-unknown-linux-musl/debug/build/cronparse-7d71d75624e7aba2/out/skeptic-tests.rs:16:5 [INFO] [stdout] 22: 0x77973739d157 - skeptic::readme_0::{{closure}}::h9ca84af144120ee3 [INFO] [stdout] at /opt/rustwide/target/x86_64-unknown-linux-musl/debug/build/cronparse-7d71d75624e7aba2/out/skeptic-tests.rs:3:22 [INFO] [stdout] 23: 0x77973739cb76 - core::ops::function::FnOnce::call_once::h7abf911bac4a3d64 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x7797373dab9b - core::ops::function::FnOnce::call_once::h9633dcf760ae81b2 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x7797373dab9b - test::__rust_begin_short_backtrace::h12ad5e04c8d7b4a5 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/test/src/lib.rs:648:18 [INFO] [stdout] 26: 0x7797373d9e0e - test::run_test_in_process::{{closure}}::he596b4fd3fa4893c [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/test/src/lib.rs:671:74 [INFO] [stdout] 27: 0x7797373d9e0e - as core::ops::function::FnOnce<()>>::call_once::hc746bc3fa75190e0 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 28: 0x7797373d9e0e - std::panicking::catch_unwind::do_call::hf4843906108d6299 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:589:40 [INFO] [stdout] 29: 0x7797373d9e0e - std::panicking::catch_unwind::h849d4e8b03577bb9 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:552:19 [INFO] [stdout] 30: 0x7797373d9e0e - std::panic::catch_unwind::ha1f814c1dec025d2 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x7797373d9e0e - test::run_test_in_process::h542aad3fe61255e7 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/test/src/lib.rs:671:27 [INFO] [stdout] 32: 0x7797373d9e0e - test::run_test::{{closure}}::h612788d75908cb63 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/test/src/lib.rs:592:43 [INFO] [stdout] 33: 0x77973739ec94 - test::run_test::{{closure}}::hbfeea3bcb7245123 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/test/src/lib.rs:622:41 [INFO] [stdout] 34: 0x77973739ec94 - std::sys::backtrace::__rust_begin_short_backtrace::h72542b83b4f87d5b [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/sys/backtrace.rs:152:18 [INFO] [stdout] 35: 0x7797373a248a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hff26a7547ea762c9 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 36: 0x7797373a248a - as core::ops::function::FnOnce<()>>::call_once::hbee49bc759312884 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 37: 0x7797373a248a - std::panicking::catch_unwind::do_call::h61de12ce5e04e28f [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:589:40 [INFO] [stdout] 38: 0x7797373a248a - std::panicking::catch_unwind::h454dd49873d22e18 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panicking.rs:552:19 [INFO] [stdout] 39: 0x7797373a248a - std::panic::catch_unwind::h5c15187324f8cebb [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x7797373a248a - std::thread::Builder::spawn_unchecked_::{{closure}}::hbc9d9c7427673d42 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 41: 0x7797373a248a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hefd458a129ddca13 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 42: 0x779737421467 - as core::ops::function::FnOnce>::call_once::h2d6e2e526b02c3da [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/alloc/src/boxed.rs:1966:9 [INFO] [stdout] 43: 0x779737421467 - as core::ops::function::FnOnce>::call_once::h1aefced482b33c72 [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/alloc/src/boxed.rs:1966:9 [INFO] [stdout] 44: 0x779737421467 - std::sys::pal::unix::thread::Thread::new::thread_start::h7c9c6951b48f721d [INFO] [stdout] at /rustc/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/library/std/src/sys/pal/unix/thread.rs:97:17 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] readme_0 [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "47d40fe321d6ed93b39d036cf84bd88d47274379804568c4fb5dbae3171116f1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "47d40fe321d6ed93b39d036cf84bd88d47274379804568c4fb5dbae3171116f1", kill_on_drop: false }` [INFO] [stdout] 47d40fe321d6ed93b39d036cf84bd88d47274379804568c4fb5dbae3171116f1