[INFO] fetching crate zoneinfo_parse 0.1.4... [INFO] testing zoneinfo_parse-0.1.4 against 1.60.0 for beta-1.61-1 [INFO] extracting crate zoneinfo_parse 0.1.4 into /workspace/builds/worker-58/source [INFO] validating manifest of crates.io crate zoneinfo_parse 0.1.4 on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate zoneinfo_parse 0.1.4 [INFO] finished tweaking crates.io crate zoneinfo_parse 0.1.4 [INFO] tweaked toml for crates.io crate zoneinfo_parse 0.1.4 written to /workspace/builds/worker-58/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded nom v1.2.4 [INFO] [stderr] Downloaded iso8601 v0.1.1 [INFO] [stderr] Downloaded locale v0.2.2 [INFO] [stderr] Downloaded pad v0.1.6 [INFO] [stderr] Downloaded datetime v0.4.7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] af738ca7da9332c3af090fcb0e45acfdc402f87eaefc1ea9c8d6a6df8ea92797 [INFO] running `Command { std: "docker" "start" "-a" "af738ca7da9332c3af090fcb0e45acfdc402f87eaefc1ea9c8d6a6df8ea92797", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "af738ca7da9332c3af090fcb0e45acfdc402f87eaefc1ea9c8d6a6df8ea92797", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "af738ca7da9332c3af090fcb0e45acfdc402f87eaefc1ea9c8d6a6df8ea92797", kill_on_drop: false }` [INFO] [stdout] af738ca7da9332c3af090fcb0e45acfdc402f87eaefc1ea9c8d6a6df8ea92797 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 08a39e6136d250d6aa4a2b1004678acedef2f2eb9eb6d55951f46f0b92016cd9 [INFO] running `Command { std: "docker" "start" "-a" "08a39e6136d250d6aa4a2b1004678acedef2f2eb9eb6d55951f46f0b92016cd9", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.123 [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling winapi v0.2.8 [INFO] [stderr] Compiling unicode-width v0.1.9 [INFO] [stderr] Compiling nom v1.2.4 [INFO] [stderr] Compiling utf8-ranges v0.1.3 [INFO] [stderr] Compiling regex-syntax v0.3.9 [INFO] [stderr] Compiling lazy_static v0.2.11 [INFO] [stderr] Compiling pad v0.1.6 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling iso8601 v0.1.1 [INFO] [stderr] Compiling thread-id v2.0.0 [INFO] [stderr] Compiling memchr v0.1.11 [INFO] [stderr] Compiling locale v0.2.2 [INFO] [stderr] Compiling thread_local v0.2.7 [INFO] [stderr] Compiling aho-corasick v0.5.3 [INFO] [stderr] Compiling regex v0.1.80 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling datetime v0.4.7 [INFO] [stderr] Compiling zoneinfo_parse v0.1.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/line.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 91 | / /// A set of regexes to test against. [INFO] [stdout] 92 | | /// [INFO] [stdout] 93 | | /// All of these regexes use the `(?x)` flag, which means they support [INFO] [stdout] 94 | | /// comments and whitespace directly in the regex string! [INFO] [stdout] | |_--------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:221:29 [INFO] [stdout] | [INFO] [stdout] 221 | let from_year = try!(caps.name("from").unwrap().parse()); [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/line.rs:227:33 [INFO] [stdout] | [INFO] [stdout] 227 | to => Some(try!(to.parse())), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:239:32 [INFO] [stdout] | [INFO] [stdout] 239 | let month = try!(caps.name("in").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:240:32 [INFO] [stdout] | [INFO] [stdout] 240 | let day = try!(caps.name("on").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | let time = try!(caps.name("at").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:242:32 [INFO] [stdout] | [INFO] [stdout] 242 | let time_to_add = try!(caps.name("save").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:301:24 [INFO] [stdout] | [INFO] [stdout] 301 | let info = try!(ZoneInfo::from_captures(caps)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:337:29 [INFO] [stdout] | [INFO] [stdout] 337 | let utc_offset = try!(caps.name("gmtoff").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:338:29 [INFO] [stdout] | [INFO] [stdout] 338 | let saving = try!(Saving::from_str(caps.name("rulessave").unwrap())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:82 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:99 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:116 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:133 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:82 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:99 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:116 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:347:82 [INFO] [stdout] | [INFO] [stdout] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:347:99 [INFO] [stdout] | [INFO] [stdout] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:348:82 [INFO] [stdout] | [INFO] [stdout] 348 | (Some(y), _ , _ , _ ) => Some(ChangeTime::UntilYear (try!(y.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:391:24 [INFO] [stdout] | [INFO] [stdout] 391 | let time = try!(input.parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `LocalDate` is imported redundantly [INFO] [stdout] --> src/line.rs:606:24 [INFO] [stdout] | [INFO] [stdout] 85 | use datetime::{LocalDate, LocalTime, LocalDateTime, Month, Weekday}; [INFO] [stdout] | --------- the item `LocalDate` is already imported here [INFO] [stdout] ... [INFO] [stdout] 606 | use datetime::{LocalDate, DatePiece, Year}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:640:27 [INFO] [stdout] | [INFO] [stdout] 640 | let weekday = try!(input[4..].parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:826:35 [INFO] [stdout] | [INFO] [stdout] 826 | Ok(Line::Continuation(try!(ZoneInfo::from_captures(caps)))) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/lib.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | #![crate_type = "dylib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] note: attribute also specified here [INFO] [stdout] --> src/lib.rs:31:1 [INFO] [stdout] | [INFO] [stdout] 31 | #![crate_type = "rlib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/line.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/line.rs:789:32 [INFO] [stdout] | [INFO] [stdout] 789 | fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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: use `dyn` [INFO] [stdout] | [INFO] [stdout] 789 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] 789 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:413:32 [INFO] [stdout] | [INFO] [stdout] 413 | fn cause(&self) -> Option<&ErrorTrait> { [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: use `dyn` [INFO] [stdout] | [INFO] [stdout] 413 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] 413 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/line.rs:780:30 [INFO] [stdout] | [INFO] [stdout] 780 | write!(f, "{}", self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/table.rs:404:30 [INFO] [stdout] | [INFO] [stdout] 404 | write!(f, "{}", self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/line.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | let mut zoneset = match self.table.zonesets.entry(zone_line.name.to_owned()) { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:342:13 [INFO] [stdout] | [INFO] [stdout] 342 | let mut zoneset = match self.current_zoneset_name { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/table.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | pub fn format(&self, dst_offset: i64, letters: Option<&String>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/table.rs:282:5 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn format_constant(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:308:25 [INFO] [stdout] | [INFO] [stdout] 308 | replace(start_utc_offset, timespan.offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:309:25 [INFO] [stdout] | [INFO] [stdout] 309 | replace(start_dst_offset, *dst_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:310:25 [INFO] [stdout] | [INFO] [stdout] 310 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:315:25 [INFO] [stdout] | [INFO] [stdout] 315 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused result of type `bool` [INFO] [stdout] --> src/structure.rs:63:17 [INFO] [stdout] | [INFO] [stdout] 63 | set.insert(Child::TimeZone(&key[last_slash + 1 ..])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | #![warn(unused_results)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused result of type `bool` [INFO] [stdout] --> src/structure.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | set.insert(Child::Submodule(&parent[first_slash + 1 ..])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 14.98s [INFO] running `Command { std: "docker" "inspect" "08a39e6136d250d6aa4a2b1004678acedef2f2eb9eb6d55951f46f0b92016cd9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "08a39e6136d250d6aa4a2b1004678acedef2f2eb9eb6d55951f46f0b92016cd9", kill_on_drop: false }` [INFO] [stdout] 08a39e6136d250d6aa4a2b1004678acedef2f2eb9eb6d55951f46f0b92016cd9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 10c6cdf59ab6ca7d84a6752294fd19fdfe786f0422b52fd8957125952bb5da1d [INFO] running `Command { std: "docker" "start" "-a" "10c6cdf59ab6ca7d84a6752294fd19fdfe786f0422b52fd8957125952bb5da1d", kill_on_drop: false }` [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/line.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 91 | / /// A set of regexes to test against. [INFO] [stdout] 92 | | /// [INFO] [stdout] 93 | | /// All of these regexes use the `(?x)` flag, which means they support [INFO] [stdout] 94 | | /// comments and whitespace directly in the regex string! [INFO] [stdout] | |_--------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:221:29 [INFO] [stdout] | [INFO] [stdout] 221 | let from_year = try!(caps.name("from").unwrap().parse()); [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/line.rs:227:33 [INFO] [stdout] | [INFO] [stdout] 227 | to => Some(try!(to.parse())), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:239:32 [INFO] [stdout] | [INFO] [stdout] 239 | let month = try!(caps.name("in").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:240:32 [INFO] [stdout] | [INFO] [stdout] 240 | let day = try!(caps.name("on").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | let time = try!(caps.name("at").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:242:32 [INFO] [stdout] | [INFO] [stdout] 242 | let time_to_add = try!(caps.name("save").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:301:24 [INFO] [stdout] | [INFO] [stdout] 301 | let info = try!(ZoneInfo::from_captures(caps)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:337:29 [INFO] [stdout] | [INFO] [stdout] 337 | let utc_offset = try!(caps.name("gmtoff").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:338:29 [INFO] [stdout] | [INFO] [stdout] 338 | let saving = try!(Saving::from_str(caps.name("rulessave").unwrap())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:82 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:99 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:116 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:133 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:82 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:99 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:116 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:347:82 [INFO] [stdout] | [INFO] [stdout] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:347:99 [INFO] [stdout] | [INFO] [stdout] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:348:82 [INFO] [stdout] | [INFO] [stdout] 348 | (Some(y), _ , _ , _ ) => Some(ChangeTime::UntilYear (try!(y.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:391:24 [INFO] [stdout] | [INFO] [stdout] 391 | let time = try!(input.parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `LocalDate` is imported redundantly [INFO] [stdout] --> src/line.rs:606:24 [INFO] [stdout] | [INFO] [stdout] 85 | use datetime::{LocalDate, LocalTime, LocalDateTime, Month, Weekday}; [INFO] [stdout] | --------- the item `LocalDate` is already imported here [INFO] [stdout] ... [INFO] [stdout] 606 | use datetime::{LocalDate, DatePiece, Year}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:640:27 [INFO] [stdout] | [INFO] [stdout] 640 | let weekday = try!(input[4..].parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:826:35 [INFO] [stdout] | [INFO] [stdout] 826 | Ok(Line::Continuation(try!(ZoneInfo::from_captures(caps)))) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/lib.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | #![crate_type = "dylib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] note: attribute also specified here [INFO] [stdout] --> src/lib.rs:31:1 [INFO] [stdout] | [INFO] [stdout] 31 | #![crate_type = "rlib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/line.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling zoneinfo_parse v0.1.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/line.rs:789:32 [INFO] [stdout] | [INFO] [stdout] 789 | fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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: use `dyn` [INFO] [stdout] | [INFO] [stdout] 789 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] 789 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:413:32 [INFO] [stdout] | [INFO] [stdout] 413 | fn cause(&self) -> Option<&ErrorTrait> { [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: use `dyn` [INFO] [stdout] | [INFO] [stdout] 413 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] 413 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/line.rs:780:30 [INFO] [stdout] | [INFO] [stdout] 780 | write!(f, "{}", self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/table.rs:404:30 [INFO] [stdout] | [INFO] [stdout] 404 | write!(f, "{}", self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/line.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | let mut zoneset = match self.table.zonesets.entry(zone_line.name.to_owned()) { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:342:13 [INFO] [stdout] | [INFO] [stdout] 342 | let mut zoneset = match self.current_zoneset_name { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/table.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | pub fn format(&self, dst_offset: i64, letters: Option<&String>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/table.rs:282:5 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn format_constant(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:308:25 [INFO] [stdout] | [INFO] [stdout] 308 | replace(start_utc_offset, timespan.offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:309:25 [INFO] [stdout] | [INFO] [stdout] 309 | replace(start_dst_offset, *dst_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:310:25 [INFO] [stdout] | [INFO] [stdout] 310 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:315:25 [INFO] [stdout] | [INFO] [stdout] 315 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused result of type `bool` [INFO] [stdout] --> src/structure.rs:63:17 [INFO] [stdout] | [INFO] [stdout] 63 | set.insert(Child::TimeZone(&key[last_slash + 1 ..])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | #![warn(unused_results)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused result of type `bool` [INFO] [stdout] --> src/structure.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | set.insert(Child::Submodule(&parent[first_slash + 1 ..])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/line.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 91 | / /// A set of regexes to test against. [INFO] [stdout] 92 | | /// [INFO] [stdout] 93 | | /// All of these regexes use the `(?x)` flag, which means they support [INFO] [stdout] 94 | | /// comments and whitespace directly in the regex string! [INFO] [stdout] | |_--------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:221:29 [INFO] [stdout] | [INFO] [stdout] 221 | let from_year = try!(caps.name("from").unwrap().parse()); [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/line.rs:227:33 [INFO] [stdout] | [INFO] [stdout] 227 | to => Some(try!(to.parse())), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:239:32 [INFO] [stdout] | [INFO] [stdout] 239 | let month = try!(caps.name("in").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:240:32 [INFO] [stdout] | [INFO] [stdout] 240 | let day = try!(caps.name("on").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | let time = try!(caps.name("at").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:242:32 [INFO] [stdout] | [INFO] [stdout] 242 | let time_to_add = try!(caps.name("save").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:301:24 [INFO] [stdout] | [INFO] [stdout] 301 | let info = try!(ZoneInfo::from_captures(caps)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:337:29 [INFO] [stdout] | [INFO] [stdout] 337 | let utc_offset = try!(caps.name("gmtoff").unwrap().parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:338:29 [INFO] [stdout] | [INFO] [stdout] 338 | let saving = try!(Saving::from_str(caps.name("rulessave").unwrap())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:82 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:99 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:116 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:345:133 [INFO] [stdout] | [INFO] [stdout] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:82 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:99 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:346:116 [INFO] [stdout] | [INFO] [stdout] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:347:82 [INFO] [stdout] | [INFO] [stdout] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:347:99 [INFO] [stdout] | [INFO] [stdout] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:348:82 [INFO] [stdout] | [INFO] [stdout] 348 | (Some(y), _ , _ , _ ) => Some(ChangeTime::UntilYear (try!(y.parse()))), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:391:24 [INFO] [stdout] | [INFO] [stdout] 391 | let time = try!(input.parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `LocalDate` is imported redundantly [INFO] [stdout] --> src/line.rs:606:24 [INFO] [stdout] | [INFO] [stdout] 85 | use datetime::{LocalDate, LocalTime, LocalDateTime, Month, Weekday}; [INFO] [stdout] | --------- the item `LocalDate` is already imported here [INFO] [stdout] ... [INFO] [stdout] 606 | use datetime::{LocalDate, DatePiece, Year}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:640:27 [INFO] [stdout] | [INFO] [stdout] 640 | let weekday = try!(input[4..].parse()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/line.rs:826:35 [INFO] [stdout] | [INFO] [stdout] 826 | Ok(Line::Continuation(try!(ZoneInfo::from_captures(caps)))) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/lib.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | #![crate_type = "dylib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] note: attribute also specified here [INFO] [stdout] --> src/lib.rs:31:1 [INFO] [stdout] | [INFO] [stdout] 31 | #![crate_type = "rlib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/line.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/line.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | / lazy_static! { [INFO] [stdout] 96 | | [INFO] [stdout] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stdout] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stdout] ... | [INFO] [stdout] 170 | | $"##).unwrap(); [INFO] [stdout] 171 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/line.rs:789:32 [INFO] [stdout] | [INFO] [stdout] 789 | fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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: use `dyn` [INFO] [stdout] | [INFO] [stdout] 789 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] 789 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:413:32 [INFO] [stdout] | [INFO] [stdout] 413 | fn cause(&self) -> Option<&ErrorTrait> { [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: use `dyn` [INFO] [stdout] | [INFO] [stdout] 413 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stdout] 413 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/line.rs:780:30 [INFO] [stdout] | [INFO] [stdout] 780 | write!(f, "{}", self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/table.rs:404:30 [INFO] [stdout] | [INFO] [stdout] 404 | write!(f, "{}", self.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/line.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | let mut zoneset = match self.table.zonesets.entry(zone_line.name.to_owned()) { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:342:13 [INFO] [stdout] | [INFO] [stdout] 342 | let mut zoneset = match self.current_zoneset_name { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:308:25 [INFO] [stdout] | [INFO] [stdout] 308 | replace(start_utc_offset, timespan.offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:309:25 [INFO] [stdout] | [INFO] [stdout] 309 | replace(start_dst_offset, *dst_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:310:25 [INFO] [stdout] | [INFO] [stdout] 310 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/transitions.rs:315:25 [INFO] [stdout] | [INFO] [stdout] 315 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused result of type `bool` [INFO] [stdout] --> src/structure.rs:63:17 [INFO] [stdout] | [INFO] [stdout] 63 | set.insert(Child::TimeZone(&key[last_slash + 1 ..])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | #![warn(unused_results)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused result of type `bool` [INFO] [stdout] --> src/structure.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | set.insert(Child::Submodule(&parent[first_slash + 1 ..])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 47 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.72s [INFO] running `Command { std: "docker" "inspect" "10c6cdf59ab6ca7d84a6752294fd19fdfe786f0422b52fd8957125952bb5da1d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "10c6cdf59ab6ca7d84a6752294fd19fdfe786f0422b52fd8957125952bb5da1d", kill_on_drop: false }` [INFO] [stdout] 10c6cdf59ab6ca7d84a6752294fd19fdfe786f0422b52fd8957125952bb5da1d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-58/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 5d9cd21d56781cfa8b0792707adabb37308cac1efeeb2a1c323af96aa4c2ac12 [INFO] running `Command { std: "docker" "start" "-a" "5d9cd21d56781cfa8b0792707adabb37308cac1efeeb2a1c323af96aa4c2ac12", kill_on_drop: false }` [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/line.rs:91:1 [INFO] [stderr] | [INFO] [stderr] 91 | / /// A set of regexes to test against. [INFO] [stderr] 92 | | /// [INFO] [stderr] 93 | | /// All of these regexes use the `(?x)` flag, which means they support [INFO] [stderr] 94 | | /// comments and whitespace directly in the regex string! [INFO] [stderr] | |_--------------------------------------------------------^ [INFO] [stderr] | | [INFO] [stderr] | rustdoc does not generate documentation for macro invocations [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:221:29 [INFO] [stderr] | [INFO] [stderr] 221 | let from_year = try!(caps.name("from").unwrap().parse()); [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/line.rs:227:33 [INFO] [stderr] | [INFO] [stderr] 227 | to => Some(try!(to.parse())), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:239:32 [INFO] [stderr] | [INFO] [stderr] 239 | let month = try!(caps.name("in").unwrap().parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:240:32 [INFO] [stderr] | [INFO] [stderr] 240 | let day = try!(caps.name("on").unwrap().parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:241:32 [INFO] [stderr] | [INFO] [stderr] 241 | let time = try!(caps.name("at").unwrap().parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:242:32 [INFO] [stderr] | [INFO] [stderr] 242 | let time_to_add = try!(caps.name("save").unwrap().parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:301:24 [INFO] [stderr] | [INFO] [stderr] 301 | let info = try!(ZoneInfo::from_captures(caps)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:337:29 [INFO] [stderr] | [INFO] [stderr] 337 | let utc_offset = try!(caps.name("gmtoff").unwrap().parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:338:29 [INFO] [stderr] | [INFO] [stderr] 338 | let saving = try!(Saving::from_str(caps.name("rulessave").unwrap())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:345:82 [INFO] [stderr] | [INFO] [stderr] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:345:99 [INFO] [stderr] | [INFO] [stderr] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:345:116 [INFO] [stderr] | [INFO] [stderr] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:345:133 [INFO] [stderr] | [INFO] [stderr] 345 | ... (Some(y), Some(m), Some(d), Some(t)) => Some(ChangeTime::UntilTime (try!(y.parse()), try!(m.parse()), try!(d.parse()), try!(t.pars... [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:346:82 [INFO] [stderr] | [INFO] [stderr] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:346:99 [INFO] [stderr] | [INFO] [stderr] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:346:116 [INFO] [stderr] | [INFO] [stderr] 346 | (Some(y), Some(m), Some(d), _ ) => Some(ChangeTime::UntilDay (try!(y.parse()), try!(m.parse()), try!(d.parse()))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:347:82 [INFO] [stderr] | [INFO] [stderr] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:347:99 [INFO] [stderr] | [INFO] [stderr] 347 | (Some(y), Some(m), _ , _ ) => Some(ChangeTime::UntilMonth (try!(y.parse()), try!(m.parse()))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:348:82 [INFO] [stderr] | [INFO] [stderr] 348 | (Some(y), _ , _ , _ ) => Some(ChangeTime::UntilYear (try!(y.parse()))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:391:24 [INFO] [stderr] | [INFO] [stderr] 391 | let time = try!(input.parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `LocalDate` is imported redundantly [INFO] [stderr] --> src/line.rs:606:24 [INFO] [stderr] | [INFO] [stderr] 85 | use datetime::{LocalDate, LocalTime, LocalDateTime, Month, Weekday}; [INFO] [stderr] | --------- the item `LocalDate` is already imported here [INFO] [stderr] ... [INFO] [stderr] 606 | use datetime::{LocalDate, DatePiece, Year}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:640:27 [INFO] [stderr] | [INFO] [stderr] 640 | let weekday = try!(input[4..].parse()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/line.rs:826:35 [INFO] [stderr] | [INFO] [stderr] 826 | Ok(Line::Continuation(try!(ZoneInfo::from_captures(caps)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/lib.rs:32:1 [INFO] [stderr] | [INFO] [stderr] 32 | #![crate_type = "dylib"] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] note: attribute also specified here [INFO] [stderr] --> src/lib.rs:31:1 [INFO] [stderr] | [INFO] [stderr] 31 | #![crate_type = "rlib"] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stderr] --> src/line.rs:80:17 [INFO] [stderr] | [INFO] [stderr] 80 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/line.rs:95:1 [INFO] [stderr] | [INFO] [stderr] 95 | / lazy_static! { [INFO] [stderr] 96 | | [INFO] [stderr] 97 | | /// Format of a Rule line: one capturing group per field. [INFO] [stderr] 98 | | static ref RULE_LINE: Regex = Regex::new(r##"(?x) ^ [INFO] [stderr] ... | [INFO] [stderr] 170 | | $"##).unwrap(); [INFO] [stderr] 171 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/line.rs:789:32 [INFO] [stderr] | [INFO] [stderr] 789 | fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [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: use `dyn` [INFO] [stderr] | [INFO] [stderr] 789 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stderr] 789 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/table.rs:413:32 [INFO] [stderr] | [INFO] [stderr] 413 | fn cause(&self) -> Option<&ErrorTrait> { [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: use `dyn` [INFO] [stderr] | [INFO] [stderr] 413 - fn cause(&self) -> Option<&ErrorTrait> { [INFO] [stderr] 413 + fn cause(&self) -> Option<&dyn ErrorTrait> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/line.rs:780:30 [INFO] [stderr] | [INFO] [stderr] 780 | write!(f, "{}", self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/table.rs:404:30 [INFO] [stderr] | [INFO] [stderr] 404 | write!(f, "{}", self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/line.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/table.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | let mut zoneset = match self.table.zonesets.entry(zone_line.name.to_owned()) { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/table.rs:342:13 [INFO] [stderr] | [INFO] [stderr] 342 | let mut zoneset = match self.current_zoneset_name { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/table.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn format(&self, dst_offset: i64, letters: Option<&String>) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | #![warn(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/table.rs:282:5 [INFO] [stderr] | [INFO] [stderr] 282 | pub fn format_constant(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/transitions.rs:308:25 [INFO] [stderr] | [INFO] [stderr] 308 | replace(start_utc_offset, timespan.offset); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/transitions.rs:309:25 [INFO] [stderr] | [INFO] [stderr] 309 | replace(start_dst_offset, *dst_offset); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/transitions.rs:310:25 [INFO] [stderr] | [INFO] [stderr] 310 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/transitions.rs:315:25 [INFO] [stderr] | [INFO] [stderr] 315 | replace(start_zone_id, Some(timespan.format.format(*dst_offset, earliest_rule.letters.as_ref()))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] [INFO] [stderr] warning: unused result of type `bool` [INFO] [stderr] --> src/structure.rs:63:17 [INFO] [stderr] | [INFO] [stderr] 63 | set.insert(Child::TimeZone(&key[last_slash + 1 ..])); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | #![warn(unused_results)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused result of type `bool` [INFO] [stderr] --> src/structure.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | set.insert(Child::Submodule(&parent[first_slash + 1 ..])); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `zoneinfo_parse` (lib) generated 49 warnings (7 duplicates) [INFO] [stderr] warning: `zoneinfo_parse` (lib test) generated 47 warnings (47 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/zoneinfo_parse-0e1ef0615b78a0bd) [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test line::test::month ... ok [INFO] [stdout] test line::test::another_comment ... ok [INFO] [stdout] test line::test::empty ... ok [INFO] [stdout] test line::test::spaces ... ok [INFO] [stdout] test line::test::comment ... ok [INFO] [stdout] test line::test::multiple_hash ... ok [INFO] [stdout] test structure::test::child ... ok [INFO] [stdout] test structure::test::empty ... ok [INFO] [stdout] test structure::test::hierarchy ... ok [INFO] [stdout] test transitions::test::optimise_macquarie ... ok [INFO] [stdout] test structure::test::separate ... ok [INFO] [stdout] test line::test::zones::negative_offsets_3 ... ok [INFO] [stdout] test line::test::zones::zone ... ok [INFO] [stdout] test line::test::zones::negative_offsets ... ok [INFO] [stdout] test line::test::non_comment ... ok [INFO] [stdout] test line::test::zones::continuation_2 ... ok [INFO] [stdout] test line::test::rules::rule_2 ... ok [INFO] [stdout] test line::test::zones::negative_offsets_2 ... ok [INFO] [stdout] test line::test::zones::zone_hyphen ... ok [INFO] [stdout] test line::test::zones::continuation_1 ... ok [INFO] [stdout] test line::test::rules::rule_1 ... ok [INFO] [stdout] test line::test::link ... ok [INFO] [stdout] test line::test::golb ... ok [INFO] [stdout] test line::test::rules::no_hyphen ... ok [INFO] [stdout] test line::test::rules::bad_month ... ok [INFO] [stdout] test line::test::two_comments_after ... ok [INFO] [stdout] test line::test::comment_after ... ok [INFO] [stderr] Running tests/transition_tests.rs (/opt/rustwide/target/debug/deps/transition_tests-4cf5ab87711b615b) [INFO] [stdout] test line::test::rules::rule_3 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test one_rule ... ok [INFO] [stdout] test one_transition ... ok [INFO] [stdout] test two_transitions ... ok [INFO] [stdout] test two_rules ... ok [INFO] [stdout] test no_transitions ... ok [INFO] [stdout] test tripoli ... ok [INFO] [stdout] test dushanbe ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Doc-tests zoneinfo_parse [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test src/line.rs - line (line 41) ... ok [INFO] [stdout] test src/line.rs - line (line 16) ... ok [INFO] [stdout] test src/line.rs - line (line 70) ... ok [INFO] [stdout] test src/table.rs - table (line 19) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.82s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5d9cd21d56781cfa8b0792707adabb37308cac1efeeb2a1c323af96aa4c2ac12", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5d9cd21d56781cfa8b0792707adabb37308cac1efeeb2a1c323af96aa4c2ac12", kill_on_drop: false }` [INFO] [stdout] 5d9cd21d56781cfa8b0792707adabb37308cac1efeeb2a1c323af96aa4c2ac12