[INFO] fetching crate date_utils 0.0.10... [INFO] testing date_utils-0.0.10 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7 [INFO] extracting crate date_utils 0.0.10 into /workspace/builds/worker-4-tc1/source [INFO] started tweaking crates.io crate date_utils 0.0.10 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate date_utils 0.0.10 [INFO] tweaked toml for crates.io crate date_utils 0.0.10 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate date_utils 0.0.10 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate date_utils 0.0.10 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cc v1.0.104 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ec0879e5214f445c2f07e6f06541c0aaea92715521a4bb0d5ced983761f3f5f6 [INFO] running `Command { std: "docker" "start" "-a" "ec0879e5214f445c2f07e6f06541c0aaea92715521a4bb0d5ced983761f3f5f6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ec0879e5214f445c2f07e6f06541c0aaea92715521a4bb0d5ced983761f3f5f6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ec0879e5214f445c2f07e6f06541c0aaea92715521a4bb0d5ced983761f3f5f6", kill_on_drop: false }` [INFO] [stdout] ec0879e5214f445c2f07e6f06541c0aaea92715521a4bb0d5ced983761f3f5f6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e530979972313f35b329709a769c7bcf271fb530ad11ad3aeb357fe50db02813 [INFO] running `Command { std: "docker" "start" "-a" "e530979972313f35b329709a769c7bcf271fb530ad11ad3aeb357fe50db02813", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling chrono v0.4.38 [INFO] [stderr] Compiling date_utils v0.0.10 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `daytime_helper::DayTimeHelper` [INFO] [stdout] --> src/day/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use daytime_helper::DayTimeHelper; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `today::*` [INFO] [stdout] --> src/day/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use today::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tomorrow::*` [INFO] [stdout] --> src/day/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use tomorrow::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `yesterday::*` [INFO] [stdout] --> src/day/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use yesterday::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> src/utils.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DayHelper` is never used [INFO] [stdout] --> src/day/day_helper.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait DayHelper { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DayTimeHelper` is never used [INFO] [stdout] --> src/day/daytime_helper.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait DayTimeHelper { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TodayHelper` is never used [INFO] [stdout] --> src/day/today.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait TodayHelper { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `today` is never used [INFO] [stdout] --> src/day/today.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn today() -> NaiveDate { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_of_today` is never used [INFO] [stdout] --> src/day/today.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn begin_of_today() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `end_of_today` is never used [INFO] [stdout] --> src/day/today.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn end_of_today() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TomorrowHelper` is never used [INFO] [stdout] --> src/day/tomorrow.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait TomorrowHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tomorrow` is never used [INFO] [stdout] --> src/day/tomorrow.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn tomorrow() -> NaiveDate { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_of_tomorrow` is never used [INFO] [stdout] --> src/day/tomorrow.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn begin_of_tomorrow() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `end_of_tomorrow` is never used [INFO] [stdout] --> src/day/tomorrow.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn end_of_tomorrow() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `YesterdayHelper` is never used [INFO] [stdout] --> src/day/yesterday.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait YesterdayHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `yesterday` is never used [INFO] [stdout] --> src/day/yesterday.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn yesterday() -> NaiveDate { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_of_yesterday` is never used [INFO] [stdout] --> src/day/yesterday.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn begin_of_yesterday() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `end_of_yesterday` is never used [INFO] [stdout] --> src/day/yesterday.rs:65:4 [INFO] [stdout] | [INFO] [stdout] 65 | fn end_of_yesterday() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DecadeHelper` is never used [INFO] [stdout] --> src/decade.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait DecadeHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decade_start` is never used [INFO] [stdout] --> src/decade.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn get_decade_start(year: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decade_end` is never used [INFO] [stdout] --> src/decade.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn get_decade_end(year: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `HourHelper` is never used [INFO] [stdout] --> src/hour.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait HourHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MillisecondHelper` is never used [INFO] [stdout] --> src/millisecond.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait MillisecondHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MinuteHelper` is never used [INFO] [stdout] --> src/minute.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait MinuteHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MonthHelper` is never used [INFO] [stdout] --> src/month.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait MonthHelper { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Range` is never used [INFO] [stdout] --> src/month.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait Range { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `date_from_fn` is never used [INFO] [stdout] --> src/month.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn date_from_fn(start: T, end: T, count: &mut u64) -> Option [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_sat_sun` is never used [INFO] [stdout] --> src/month.rs:233:4 [INFO] [stdout] | [INFO] [stdout] 233 | fn collect_sat_sun(range: &[T]) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `each_weekend` is never used [INFO] [stdout] --> src/month.rs:255:4 [INFO] [stdout] | [INFO] [stdout] 255 | fn each_weekend(range: &[T]) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `between_months` is never used [INFO] [stdout] --> src/month.rs:275:4 [INFO] [stdout] | [INFO] [stdout] 275 | fn between_months(one: &NaiveDate, other: &NaiveDate) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Now` is never constructed [INFO] [stdout] --> src/now.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Now; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ZoneNum` is never constructed [INFO] [stdout] --> src/now.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct ZoneNum(i32); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/now.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl ZoneNum { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 14 | pub fn new(value: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ZoneType` is never used [INFO] [stdout] --> src/now.rs:35:10 [INFO] [stdout] | [INFO] [stdout] 35 | pub enum ZoneType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Timestamp` is never used [INFO] [stdout] --> src/now.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | enum Timestamp { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/now.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Now { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 50 | /// 以UTC形式显示当前时间 [INFO] [stdout] 51 | pub fn utc() -> NaiveDateTime { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn local(zone: ZoneType) -> NaiveDateTime { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn timestamp_utc(time_type: Timestamp) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn timestamp() -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn timestamp_nanos() -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn timestamp_micros() -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn timestamp_millis() -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn timestamp_with_local(zone_type: ZoneType, time_type: Timestamp) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn timestamp_local(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn timestamp_local_nanos(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn timestamp_local_milli(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn timestamp_local_micro(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Period` is never constructed [INFO] [stdout] --> src/period.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Period { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `between`, `calc_day`, `calc_month`, and `calc_year` are never used [INFO] [stdout] --> src/period.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Period { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 16 | /// 计算两个日期之间的间隔,使用x年x月x日的记录方式 [INFO] [stdout] 17 | pub fn between(one: &NaiveDate, other: &NaiveDate) -> Period { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn calc_day(other: &NaiveDate, another: &NaiveDate) -> i8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn calc_month(other: &NaiveDate, another: NaiveDate) -> (NaiveDate, i8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn calc_year(one: &NaiveDate, other: &NaiveDate) -> (NaiveDate, i16) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `QuarterHelper` is never used [INFO] [stdout] --> src/quarter/mod.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait QuarterHelper { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Quarter` is never used [INFO] [stdout] --> src/quarter/mod.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | pub enum Quarter { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DateRange` is never used [INFO] [stdout] --> src/range/mod.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait DateRange { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TimeRange` is never used [INFO] [stdout] --> src/range/mod.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub trait TimeRange { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `with_end` is never used [INFO] [stdout] --> src/range/date.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn with_end(mut start: NaiveDate, end: NaiveDate) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `with_end` is never used [INFO] [stdout] --> src/range/date_time.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn with_end(mut start: NaiveDateTime, end: NaiveDateTime) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SecondHelper` is never used [INFO] [stdout] --> src/second.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait SecondHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `utc_now` is never used [INFO] [stdout] --> src/utils.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) fn utc_now() -> DateTime { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_leap_year` is never used [INFO] [stdout] --> src/utils.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub(crate) fn is_leap_year(year: i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DAY_30` is never used [INFO] [stdout] --> src/utils.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const DAY_30: [u32; 4] = [4, 6, 9, 11]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DAY_31` is never used [INFO] [stdout] --> src/utils.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const DAY_31: [u32; 7] = [1, 3, 5, 7, 8, 10, 12]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MonthType` is never used [INFO] [stdout] --> src/utils.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | pub(crate) enum MonthType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `month_type` is never used [INFO] [stdout] --> src/utils.rs:33:15 [INFO] [stdout] | [INFO] [stdout] 33 | pub(crate) fn month_type(month: u32, year: i32) -> MonthType { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `second2minute` is never used [INFO] [stdout] --> src/utils.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn second2minute(second: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `second2hour` is never used [INFO] [stdout] --> src/utils.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn second2hour(second: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `second2day` is never used [INFO] [stdout] --> src/utils.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn second2day(second: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minute2hour` is never used [INFO] [stdout] --> src/utils.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn minute2hour(minute: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minute2day` is never used [INFO] [stdout] --> src/utils.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn minute2day(minute: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hour2day` is never used [INFO] [stdout] --> src/utils.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn hour2day(hour: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `WeekHelper` is never used [INFO] [stdout] --> src/week.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait WeekHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `YearHelper` is never used [INFO] [stdout] --> src/year.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait YearHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.37s [INFO] running `Command { std: "docker" "inspect" "e530979972313f35b329709a769c7bcf271fb530ad11ad3aeb357fe50db02813", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e530979972313f35b329709a769c7bcf271fb530ad11ad3aeb357fe50db02813", kill_on_drop: false }` [INFO] [stdout] e530979972313f35b329709a769c7bcf271fb530ad11ad3aeb357fe50db02813 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0c68f34666790adb57b503503554ed08eb1dd19f39a26ad35668ebed47e71e36 [INFO] running `Command { std: "docker" "start" "-a" "0c68f34666790adb57b503503554ed08eb1dd19f39a26ad35668ebed47e71e36", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `daytime_helper::DayTimeHelper` [INFO] [stdout] --> src/day/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use daytime_helper::DayTimeHelper; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `today::*` [INFO] [stdout] --> src/day/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use today::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tomorrow::*` [INFO] [stdout] --> src/day/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use tomorrow::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `yesterday::*` [INFO] [stdout] --> src/day/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use yesterday::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> src/utils.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DayHelper` is never used [INFO] [stdout] --> src/day/day_helper.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait DayHelper { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DayTimeHelper` is never used [INFO] [stdout] --> src/day/daytime_helper.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait DayTimeHelper { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TodayHelper` is never used [INFO] [stdout] --> src/day/today.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait TodayHelper { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `today` is never used [INFO] [stdout] --> src/day/today.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn today() -> NaiveDate { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_of_today` is never used [INFO] [stdout] --> src/day/today.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn begin_of_today() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `end_of_today` is never used [INFO] [stdout] --> src/day/today.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn end_of_today() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TomorrowHelper` is never used [INFO] [stdout] --> src/day/tomorrow.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait TomorrowHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tomorrow` is never used [INFO] [stdout] --> src/day/tomorrow.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn tomorrow() -> NaiveDate { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_of_tomorrow` is never used [INFO] [stdout] --> src/day/tomorrow.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn begin_of_tomorrow() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `end_of_tomorrow` is never used [INFO] [stdout] --> src/day/tomorrow.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn end_of_tomorrow() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `YesterdayHelper` is never used [INFO] [stdout] --> src/day/yesterday.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait YesterdayHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `yesterday` is never used [INFO] [stdout] --> src/day/yesterday.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn yesterday() -> NaiveDate { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_of_yesterday` is never used [INFO] [stdout] --> src/day/yesterday.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn begin_of_yesterday() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `end_of_yesterday` is never used [INFO] [stdout] --> src/day/yesterday.rs:65:4 [INFO] [stdout] | [INFO] [stdout] 65 | fn end_of_yesterday() -> NaiveDateTime { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DecadeHelper` is never used [INFO] [stdout] --> src/decade.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait DecadeHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decade_start` is never used [INFO] [stdout] --> src/decade.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn get_decade_start(year: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decade_end` is never used [INFO] [stdout] --> src/decade.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn get_decade_end(year: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `HourHelper` is never used [INFO] [stdout] --> src/hour.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait HourHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MillisecondHelper` is never used [INFO] [stdout] --> src/millisecond.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait MillisecondHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MinuteHelper` is never used [INFO] [stdout] --> src/minute.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait MinuteHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MonthHelper` is never used [INFO] [stdout] --> src/month.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait MonthHelper { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Range` is never used [INFO] [stdout] --> src/month.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait Range { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `date_from_fn` is never used [INFO] [stdout] --> src/month.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn date_from_fn(start: T, end: T, count: &mut u64) -> Option [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling date_utils v0.0.10 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `collect_sat_sun` is never used [INFO] [stdout] --> src/month.rs:233:4 [INFO] [stdout] | [INFO] [stdout] 233 | fn collect_sat_sun(range: &[T]) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `each_weekend` is never used [INFO] [stdout] --> src/month.rs:255:4 [INFO] [stdout] | [INFO] [stdout] 255 | fn each_weekend(range: &[T]) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `between_months` is never used [INFO] [stdout] --> src/month.rs:275:4 [INFO] [stdout] | [INFO] [stdout] 275 | fn between_months(one: &NaiveDate, other: &NaiveDate) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Now` is never constructed [INFO] [stdout] --> src/now.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Now; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ZoneNum` is never constructed [INFO] [stdout] --> src/now.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct ZoneNum(i32); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/now.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl ZoneNum { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 14 | pub fn new(value: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ZoneType` is never used [INFO] [stdout] --> src/now.rs:35:10 [INFO] [stdout] | [INFO] [stdout] 35 | pub enum ZoneType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Timestamp` is never used [INFO] [stdout] --> src/now.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | enum Timestamp { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/now.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Now { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 50 | /// 以UTC形式显示当前时间 [INFO] [stdout] 51 | pub fn utc() -> NaiveDateTime { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn local(zone: ZoneType) -> NaiveDateTime { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn timestamp_utc(time_type: Timestamp) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn timestamp() -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn timestamp_nanos() -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn timestamp_micros() -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn timestamp_millis() -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn timestamp_with_local(zone_type: ZoneType, time_type: Timestamp) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn timestamp_local(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn timestamp_local_nanos(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn timestamp_local_milli(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn timestamp_local_micro(zone_type: ZoneType) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Period` is never constructed [INFO] [stdout] --> src/period.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Period { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `between`, `calc_day`, `calc_month`, and `calc_year` are never used [INFO] [stdout] --> src/period.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Period { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 16 | /// 计算两个日期之间的间隔,使用x年x月x日的记录方式 [INFO] [stdout] 17 | pub fn between(one: &NaiveDate, other: &NaiveDate) -> Period { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn calc_day(other: &NaiveDate, another: &NaiveDate) -> i8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn calc_month(other: &NaiveDate, another: NaiveDate) -> (NaiveDate, i8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn calc_year(one: &NaiveDate, other: &NaiveDate) -> (NaiveDate, i16) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `QuarterHelper` is never used [INFO] [stdout] --> src/quarter/mod.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait QuarterHelper { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Quarter` is never used [INFO] [stdout] --> src/quarter/mod.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | pub enum Quarter { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DateRange` is never used [INFO] [stdout] --> src/range/mod.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait DateRange { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TimeRange` is never used [INFO] [stdout] --> src/range/mod.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub trait TimeRange { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `with_end` is never used [INFO] [stdout] --> src/range/date.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn with_end(mut start: NaiveDate, end: NaiveDate) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `with_end` is never used [INFO] [stdout] --> src/range/date_time.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn with_end(mut start: NaiveDateTime, end: NaiveDateTime) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SecondHelper` is never used [INFO] [stdout] --> src/second.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait SecondHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `utc_now` is never used [INFO] [stdout] --> src/utils.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) fn utc_now() -> DateTime { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_leap_year` is never used [INFO] [stdout] --> src/utils.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub(crate) fn is_leap_year(year: i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DAY_30` is never used [INFO] [stdout] --> src/utils.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const DAY_30: [u32; 4] = [4, 6, 9, 11]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DAY_31` is never used [INFO] [stdout] --> src/utils.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const DAY_31: [u32; 7] = [1, 3, 5, 7, 8, 10, 12]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MonthType` is never used [INFO] [stdout] --> src/utils.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | pub(crate) enum MonthType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `month_type` is never used [INFO] [stdout] --> src/utils.rs:33:15 [INFO] [stdout] | [INFO] [stdout] 33 | pub(crate) fn month_type(month: u32, year: i32) -> MonthType { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `second2minute` is never used [INFO] [stdout] --> src/utils.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn second2minute(second: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `second2hour` is never used [INFO] [stdout] --> src/utils.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn second2hour(second: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `second2day` is never used [INFO] [stdout] --> src/utils.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn second2day(second: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minute2hour` is never used [INFO] [stdout] --> src/utils.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn minute2hour(minute: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minute2day` is never used [INFO] [stdout] --> src/utils.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn minute2day(minute: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hour2day` is never used [INFO] [stdout] --> src/utils.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn hour2day(hour: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `WeekHelper` is never used [INFO] [stdout] --> src/week.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait WeekHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `YearHelper` is never used [INFO] [stdout] --> src/year.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait YearHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/date_operator/months.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/date_operator/weeks.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Weekday` [INFO] [stdout] --> tests/date_operator/weeks.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use chrono::Weekday; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::zip` [INFO] [stdout] --> tests/date_operator/weeks.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::iter::zip; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::calc_date` [INFO] [stdout] --> tests/date_operator/years.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::calc_date; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/datetime_operator/hours.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/datetime_operator/milliseconds.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Duration` [INFO] [stdout] --> tests/datetime_operator/milliseconds.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use chrono::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/datetime_operator/minutes.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::calc_datetime` [INFO] [stdout] --> tests/datetime_operator/months.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::calc_datetime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::NaiveDate` [INFO] [stdout] --> tests/datetime_operator/seconds.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use chrono::NaiveDate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::NaiveTime` [INFO] [stdout] --> tests/datetime_operator/seconds.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::NaiveTime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::calc_datetime` [INFO] [stdout] --> tests/datetime_operator/seconds.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::calc_datetime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Weekday` [INFO] [stdout] --> tests/datetime_operator/weeks.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::Weekday; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::zip` [INFO] [stdout] --> tests/datetime_operator/weeks.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::iter::zip; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::calc_datetime` [INFO] [stdout] --> tests/datetime_operator/weeks.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::calc_datetime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc_datetime` is never used [INFO] [stdout] --> tests/datetime_operator/main.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn calc_datetime( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `daytime_helper::DayTimeHelper` [INFO] [stdout] --> src/day/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use daytime_helper::DayTimeHelper; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `today::*` [INFO] [stdout] --> src/day/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use today::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tomorrow::*` [INFO] [stdout] --> src/day/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use tomorrow::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `yesterday::*` [INFO] [stdout] --> src/day/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use yesterday::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> src/utils.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp`: use `.and_utc().timestamp()` instead [INFO] [stdout] --> src/now.rs:182:36 [INFO] [stdout] | [INFO] [stdout] 182 | let t = get_utc().unwrap().timestamp(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_micros`: use `.and_utc().timestamp_micros()` instead [INFO] [stdout] --> src/now.rs:189:36 [INFO] [stdout] | [INFO] [stdout] 189 | let t = get_utc().unwrap().timestamp_micros(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_nanos_opt`: use `.and_utc().timestamp_nanos_opt()` instead [INFO] [stdout] --> src/now.rs:196:36 [INFO] [stdout] | [INFO] [stdout] 196 | let t = get_utc().unwrap().timestamp_nanos_opt().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_millis`: use `.and_utc().timestamp_millis()` instead [INFO] [stdout] --> src/now.rs:202:36 [INFO] [stdout] | [INFO] [stdout] 202 | let t = get_utc().unwrap().timestamp_millis(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp`: use `.and_utc().timestamp()` instead [INFO] [stdout] --> src/now.rs:209:37 [INFO] [stdout] | [INFO] [stdout] 209 | let t = get_east().unwrap().timestamp(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_micros`: use `.and_utc().timestamp_micros()` instead [INFO] [stdout] --> src/now.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let t = get_east().unwrap().timestamp_micros(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_millis`: use `.and_utc().timestamp_millis()` instead [INFO] [stdout] --> src/now.rs:222:37 [INFO] [stdout] | [INFO] [stdout] 222 | let t = get_east().unwrap().timestamp_millis(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_nanos_opt`: use `.and_utc().timestamp_nanos_opt()` instead [INFO] [stdout] --> src/now.rs:228:37 [INFO] [stdout] | [INFO] [stdout] 228 | let t = get_east().unwrap().timestamp_nanos_opt().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DecadeHelper` is never used [INFO] [stdout] --> src/decade.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait DecadeHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decade_start` is never used [INFO] [stdout] --> src/decade.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn get_decade_start(year: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decade_end` is never used [INFO] [stdout] --> src/decade.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn get_decade_end(year: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `HourHelper` is never used [INFO] [stdout] --> src/hour.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait HourHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MillisecondHelper` is never used [INFO] [stdout] --> src/millisecond.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait MillisecondHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `begin_of_minute` and `end_of_minute` are never used [INFO] [stdout] --> src/minute.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait MinuteHelper { [INFO] [stdout] | ------------ methods in this trait [INFO] [stdout] ... [INFO] [stdout] 19 | fn begin_of_minute(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn end_of_minute(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/month.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait MonthHelper { [INFO] [stdout] | ----------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 39 | fn diff_months(&self, other: &Self) -> i64; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn diff_calendar_months(&self, other: &Self) -> i64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn each_weekend(&self) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | fn weekend_list(&self) -> Vec [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn days_in_month(&self) -> u32; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn is_first_day_of_month(&self) -> bool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn is_last_day_of_month(&self) -> bool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | fn sub_months(&self, month: i64) -> Self; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn sub_months_opt(&self, month: i64) -> Option [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | fn last_day_of_month(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Range` is never used [INFO] [stdout] --> src/month.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait Range { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `date_from_fn` is never used [INFO] [stdout] --> src/month.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn date_from_fn(start: T, end: T, count: &mut u64) -> Option [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_sat_sun` is never used [INFO] [stdout] --> src/month.rs:233:4 [INFO] [stdout] | [INFO] [stdout] 233 | fn collect_sat_sun(range: &[T]) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `each_weekend` is never used [INFO] [stdout] --> src/month.rs:255:4 [INFO] [stdout] | [INFO] [stdout] 255 | fn each_weekend(range: &[T]) -> Vec<(Option, Option)> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `between_months` is never used [INFO] [stdout] --> src/month.rs:275:4 [INFO] [stdout] | [INFO] [stdout] 275 | fn between_months(one: &NaiveDate, other: &NaiveDate) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `QuarterHelper` is never used [INFO] [stdout] --> src/quarter/mod.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait QuarterHelper { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Quarter` is never used [INFO] [stdout] --> src/quarter/mod.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | pub enum Quarter { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DateRange` is never used [INFO] [stdout] --> src/range/mod.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait DateRange { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TimeRange` is never used [INFO] [stdout] --> src/range/mod.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub trait TimeRange { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `with_end` is never used [INFO] [stdout] --> src/range/date.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn with_end(mut start: NaiveDate, end: NaiveDate) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `with_end` is never used [INFO] [stdout] --> src/range/date_time.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn with_end(mut start: NaiveDateTime, end: NaiveDateTime) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SecondHelper` is never used [INFO] [stdout] --> src/second.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait SecondHelper { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `WeekHelper` is never used [INFO] [stdout] --> src/week.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait WeekHelper { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_leap_year` and `sub_years_opt` are never used [INFO] [stdout] --> src/year.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait YearHelper { [INFO] [stdout] | ---------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn is_leap_year(&self) -> bool; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn sub_years_opt(&self, n: i32) -> Option [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.77s [INFO] running `Command { std: "docker" "inspect" "0c68f34666790adb57b503503554ed08eb1dd19f39a26ad35668ebed47e71e36", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0c68f34666790adb57b503503554ed08eb1dd19f39a26ad35668ebed47e71e36", kill_on_drop: false }` [INFO] [stdout] 0c68f34666790adb57b503503554ed08eb1dd19f39a26ad35668ebed47e71e36 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 352dc176153cc51d20743290f0cd384e138c6f394e90e12881463bd208aeeebc [INFO] running `Command { std: "docker" "start" "-a" "352dc176153cc51d20743290f0cd384e138c6f394e90e12881463bd208aeeebc", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `daytime_helper::DayTimeHelper` [INFO] [stderr] --> src/day/mod.rs:8:9 [INFO] [stderr] | [INFO] [stderr] 8 | pub use daytime_helper::DayTimeHelper; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `today::*` [INFO] [stderr] --> src/day/mod.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | pub use today::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tomorrow::*` [INFO] [stderr] --> src/day/mod.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | pub use tomorrow::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `yesterday::*` [INFO] [stderr] --> src/day/mod.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | pub use yesterday::*; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stderr] --> src/utils.rs:3:11 [INFO] [stderr] | [INFO] [stderr] 3 | #[cfg(not(tarpaulin_include))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait `DayHelper` is never used [INFO] [stderr] --> src/day/day_helper.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub trait DayHelper { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: trait `DayTimeHelper` is never used [INFO] [stderr] --> src/day/daytime_helper.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | pub trait DayTimeHelper { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `TodayHelper` is never used [INFO] [stderr] --> src/day/today.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait TodayHelper { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `today` is never used [INFO] [stderr] --> src/day/today.rs:53:8 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn today() -> NaiveDate { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `begin_of_today` is never used [INFO] [stderr] --> src/day/today.rs:60:8 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn begin_of_today() -> NaiveDateTime { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `end_of_today` is never used [INFO] [stderr] --> src/day/today.rs:67:8 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn end_of_today() -> NaiveDateTime { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `TomorrowHelper` is never used [INFO] [stderr] --> src/day/tomorrow.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | pub trait TomorrowHelper { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `tomorrow` is never used [INFO] [stderr] --> src/day/tomorrow.rs:53:8 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn tomorrow() -> NaiveDate { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `begin_of_tomorrow` is never used [INFO] [stderr] --> src/day/tomorrow.rs:63:8 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn begin_of_tomorrow() -> NaiveDateTime { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `end_of_tomorrow` is never used [INFO] [stderr] --> src/day/tomorrow.rs:70:8 [INFO] [stderr] | [INFO] [stderr] 70 | pub fn end_of_tomorrow() -> NaiveDateTime { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `YesterdayHelper` is never used [INFO] [stderr] --> src/day/yesterday.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | pub trait YesterdayHelper { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `yesterday` is never used [INFO] [stderr] --> src/day/yesterday.rs:50:8 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn yesterday() -> NaiveDate { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `begin_of_yesterday` is never used [INFO] [stderr] --> src/day/yesterday.rs:59:4 [INFO] [stderr] | [INFO] [stderr] 59 | fn begin_of_yesterday() -> NaiveDateTime { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `end_of_yesterday` is never used [INFO] [stderr] --> src/day/yesterday.rs:65:4 [INFO] [stderr] | [INFO] [stderr] 65 | fn end_of_yesterday() -> NaiveDateTime { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `DecadeHelper` is never used [INFO] [stderr] --> src/decade.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait DecadeHelper { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_decade_start` is never used [INFO] [stderr] --> src/decade.rs:44:4 [INFO] [stderr] | [INFO] [stderr] 44 | fn get_decade_start(year: i32) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_decade_end` is never used [INFO] [stderr] --> src/decade.rs:48:4 [INFO] [stderr] | [INFO] [stderr] 48 | fn get_decade_end(year: i32) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `HourHelper` is never used [INFO] [stderr] --> src/hour.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub trait HourHelper { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `MillisecondHelper` is never used [INFO] [stderr] --> src/millisecond.rs:3:11 [INFO] [stderr] | [INFO] [stderr] 3 | pub trait MillisecondHelper { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `MinuteHelper` is never used [INFO] [stderr] --> src/minute.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait MinuteHelper { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `MonthHelper` is never used [INFO] [stderr] --> src/month.rs:12:11 [INFO] [stderr] | [INFO] [stderr] 12 | pub trait MonthHelper { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `Range` is never used [INFO] [stderr] --> src/month.rs:84:11 [INFO] [stderr] | [INFO] [stderr] 84 | pub trait Range { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `date_from_fn` is never used [INFO] [stderr] --> src/month.rs:97:4 [INFO] [stderr] | [INFO] [stderr] 97 | fn date_from_fn(start: T, end: T, count: &mut u64) -> Option [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `collect_sat_sun` is never used [INFO] [stderr] --> src/month.rs:233:4 [INFO] [stderr] | [INFO] [stderr] 233 | fn collect_sat_sun(range: &[T]) -> Vec<(Option, Option)> [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `each_weekend` is never used [INFO] [stderr] --> src/month.rs:255:4 [INFO] [stderr] | [INFO] [stderr] 255 | fn each_weekend(range: &[T]) -> Vec<(Option, Option)> [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `between_months` is never used [INFO] [stderr] --> src/month.rs:275:4 [INFO] [stderr] | [INFO] [stderr] 275 | fn between_months(one: &NaiveDate, other: &NaiveDate) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Now` is never constructed [INFO] [stderr] --> src/now.rs:8:12 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct Now; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ZoneNum` is never constructed [INFO] [stderr] --> src/now.rs:11:12 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct ZoneNum(i32); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/now.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 13 | impl ZoneNum { [INFO] [stderr] | ------------ associated function in this implementation [INFO] [stderr] 14 | pub fn new(value: i32) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `ZoneType` is never used [INFO] [stderr] --> src/now.rs:35:10 [INFO] [stderr] | [INFO] [stderr] 35 | pub enum ZoneType { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Timestamp` is never used [INFO] [stderr] --> src/now.rs:42:6 [INFO] [stderr] | [INFO] [stderr] 42 | enum Timestamp { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated functions are never used [INFO] [stderr] --> src/now.rs:51:12 [INFO] [stderr] | [INFO] [stderr] 49 | impl Now { [INFO] [stderr] | -------- associated functions in this implementation [INFO] [stderr] 50 | /// 以UTC形式显示当前时间 [INFO] [stderr] 51 | pub fn utc() -> NaiveDateTime { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | pub fn local(zone: ZoneType) -> NaiveDateTime { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 76 | fn timestamp_utc(time_type: Timestamp) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 86 | pub fn timestamp() -> i64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 91 | pub fn timestamp_nanos() -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 96 | pub fn timestamp_micros() -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 101 | pub fn timestamp_millis() -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 105 | fn timestamp_with_local(zone_type: ZoneType, time_type: Timestamp) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 116 | pub fn timestamp_local(zone_type: ZoneType) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 120 | pub fn timestamp_local_nanos(zone_type: ZoneType) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 124 | pub fn timestamp_local_milli(zone_type: ZoneType) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 128 | pub fn timestamp_local_micro(zone_type: ZoneType) -> i64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Period` is never constructed [INFO] [stderr] --> src/period.rs:6:12 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct Period { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `between`, `calc_day`, `calc_month`, and `calc_year` are never used [INFO] [stderr] --> src/period.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 15 | impl Period { [INFO] [stderr] | ----------- associated functions in this implementation [INFO] [stderr] 16 | /// 计算两个日期之间的间隔,使用x年x月x日的记录方式 [INFO] [stderr] 17 | pub fn between(one: &NaiveDate, other: &NaiveDate) -> Period { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 32 | fn calc_day(other: &NaiveDate, another: &NaiveDate) -> i8 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 37 | fn calc_month(other: &NaiveDate, another: NaiveDate) -> (NaiveDate, i8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 50 | fn calc_year(one: &NaiveDate, other: &NaiveDate) -> (NaiveDate, i16) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `QuarterHelper` is never used [INFO] [stderr] --> src/quarter/mod.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait QuarterHelper { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Quarter` is never used [INFO] [stderr] --> src/quarter/mod.rs:53:10 [INFO] [stderr] | [INFO] [stderr] 53 | pub enum Quarter { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `DateRange` is never used [INFO] [stderr] --> src/range/mod.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub trait DateRange { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `TimeRange` is never used [INFO] [stderr] --> src/range/mod.rs:98:11 [INFO] [stderr] | [INFO] [stderr] 98 | pub trait TimeRange { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `with_end` is never used [INFO] [stderr] --> src/range/date.rs:83:4 [INFO] [stderr] | [INFO] [stderr] 83 | fn with_end(mut start: NaiveDate, end: NaiveDate) -> impl Iterator { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `with_end` is never used [INFO] [stderr] --> src/range/date_time.rs:134:4 [INFO] [stderr] | [INFO] [stderr] 134 | fn with_end(mut start: NaiveDateTime, end: NaiveDateTime) -> impl Iterator { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `SecondHelper` is never used [INFO] [stderr] --> src/second.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | pub trait SecondHelper { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `utc_now` is never used [INFO] [stderr] --> src/utils.rs:4:15 [INFO] [stderr] | [INFO] [stderr] 4 | pub(crate) fn utc_now() -> DateTime { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `is_leap_year` is never used [INFO] [stderr] --> src/utils.rs:16:15 [INFO] [stderr] | [INFO] [stderr] 16 | pub(crate) fn is_leap_year(year: i32) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `DAY_30` is never used [INFO] [stderr] --> src/utils.rs:24:7 [INFO] [stderr] | [INFO] [stderr] 24 | const DAY_30: [u32; 4] = [4, 6, 9, 11]; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `DAY_31` is never used [INFO] [stderr] --> src/utils.rs:25:7 [INFO] [stderr] | [INFO] [stderr] 25 | const DAY_31: [u32; 7] = [1, 3, 5, 7, 8, 10, 12]; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `MonthType` is never used [INFO] [stderr] --> src/utils.rs:27:17 [INFO] [stderr] | [INFO] [stderr] 27 | pub(crate) enum MonthType { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `month_type` is never used [INFO] [stderr] --> src/utils.rs:33:15 [INFO] [stderr] | [INFO] [stderr] 33 | pub(crate) fn month_type(month: u32, year: i32) -> MonthType { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `second2minute` is never used [INFO] [stderr] --> src/utils.rs:43:8 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn second2minute(second: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `second2hour` is never used [INFO] [stderr] --> src/utils.rs:47:8 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn second2hour(second: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `second2day` is never used [INFO] [stderr] --> src/utils.rs:51:8 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn second2day(second: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `minute2hour` is never used [INFO] [stderr] --> src/utils.rs:55:8 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn minute2hour(minute: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `minute2day` is never used [INFO] [stderr] --> src/utils.rs:59:8 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn minute2day(minute: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `hour2day` is never used [INFO] [stderr] --> src/utils.rs:63:8 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn hour2day(hour: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `WeekHelper` is never used [INFO] [stderr] --> src/week.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub trait WeekHelper { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `YearHelper` is never used [INFO] [stderr] --> src/year.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub trait YearHelper { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp`: use `.and_utc().timestamp()` instead [INFO] [stderr] --> src/now.rs:182:36 [INFO] [stderr] | [INFO] [stderr] 182 | let t = get_utc().unwrap().timestamp(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_micros`: use `.and_utc().timestamp_micros()` instead [INFO] [stderr] --> src/now.rs:189:36 [INFO] [stderr] | [INFO] [stderr] 189 | let t = get_utc().unwrap().timestamp_micros(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_nanos_opt`: use `.and_utc().timestamp_nanos_opt()` instead [INFO] [stderr] --> src/now.rs:196:36 [INFO] [stderr] | [INFO] [stderr] 196 | let t = get_utc().unwrap().timestamp_nanos_opt().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_millis`: use `.and_utc().timestamp_millis()` instead [INFO] [stderr] --> src/now.rs:202:36 [INFO] [stderr] | [INFO] [stderr] 202 | let t = get_utc().unwrap().timestamp_millis(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp`: use `.and_utc().timestamp()` instead [INFO] [stderr] --> src/now.rs:209:37 [INFO] [stderr] | [INFO] [stderr] 209 | let t = get_east().unwrap().timestamp(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_micros`: use `.and_utc().timestamp_micros()` instead [INFO] [stderr] --> src/now.rs:216:37 [INFO] [stderr] | [INFO] [stderr] 216 | let t = get_east().unwrap().timestamp_micros(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_millis`: use `.and_utc().timestamp_millis()` instead [INFO] [stderr] --> src/now.rs:222:37 [INFO] [stderr] | [INFO] [stderr] 222 | let t = get_east().unwrap().timestamp_millis(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDateTime::timestamp_nanos_opt`: use `.and_utc().timestamp_nanos_opt()` instead [INFO] [stderr] --> src/now.rs:228:37 [INFO] [stderr] | [INFO] [stderr] 228 | let t = get_east().unwrap().timestamp_nanos_opt().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `DecadeHelper` is never used [INFO] [stderr] --> src/decade.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait DecadeHelper { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: methods `begin_of_minute` and `end_of_minute` are never used [INFO] [stderr] --> src/minute.rs:19:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait MinuteHelper { [INFO] [stderr] | ------------ methods in this trait [INFO] [stderr] ... [INFO] [stderr] 19 | fn begin_of_minute(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 28 | fn end_of_minute(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/month.rs:39:8 [INFO] [stderr] | [INFO] [stderr] 12 | pub trait MonthHelper { [INFO] [stderr] | ----------- methods in this trait [INFO] [stderr] ... [INFO] [stderr] 39 | fn diff_months(&self, other: &Self) -> i64; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | fn diff_calendar_months(&self, other: &Self) -> i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | fn each_weekend(&self) -> Vec<(Option, Option)> [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 53 | fn weekend_list(&self) -> Vec [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 59 | fn days_in_month(&self) -> u32; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | fn is_first_day_of_month(&self) -> bool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 67 | fn is_last_day_of_month(&self) -> bool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | fn sub_months(&self, month: i64) -> Self; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 75 | fn sub_months_opt(&self, month: i64) -> Option [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 81 | fn last_day_of_month(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `is_leap_year` and `sub_years_opt` are never used [INFO] [stderr] --> src/year.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 6 | pub trait YearHelper { [INFO] [stderr] | ---------- methods in this trait [INFO] [stderr] ... [INFO] [stderr] 22 | fn is_leap_year(&self) -> bool; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 54 | fn sub_years_opt(&self, n: i32) -> Option [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `date_utils` (lib) generated 60 warnings (run `cargo fix --lib -p date_utils` to apply 4 suggestions) [INFO] [stderr] warning: `date_utils` (lib test) generated 34 warnings (22 duplicates) [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/date_operator/months.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/date_operator/weeks.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Weekday` [INFO] [stderr] --> tests/date_operator/weeks.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use chrono::Weekday; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::zip` [INFO] [stderr] --> tests/date_operator/weeks.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::iter::zip; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::calc_date` [INFO] [stderr] --> tests/date_operator/years.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::calc_date; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/datetime_operator/hours.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/datetime_operator/milliseconds.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Duration` [INFO] [stderr] --> tests/datetime_operator/milliseconds.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use chrono::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/datetime_operator/minutes.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::calc_datetime` [INFO] [stderr] --> tests/datetime_operator/months.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::calc_datetime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::NaiveDate` [INFO] [stderr] --> tests/datetime_operator/seconds.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use chrono::NaiveDate; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::NaiveTime` [INFO] [stderr] --> tests/datetime_operator/seconds.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::NaiveTime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::calc_datetime` [INFO] [stderr] --> tests/datetime_operator/seconds.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use super::calc_datetime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Weekday` [INFO] [stderr] --> tests/datetime_operator/weeks.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::Weekday; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::zip` [INFO] [stderr] --> tests/datetime_operator/weeks.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::iter::zip; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::calc_datetime` [INFO] [stderr] --> tests/datetime_operator/weeks.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::calc_datetime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `calc_datetime` is never used [INFO] [stderr] --> tests/datetime_operator/main.rs:11:4 [INFO] [stderr] | [INFO] [stderr] 11 | fn calc_datetime( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `date_utils` (test "date_operator") generated 5 warnings (run `cargo fix --test "date_operator" -p date_utils` to apply 5 suggestions) [INFO] [stderr] warning: `date_utils` (test "datetime_operator") generated 12 warnings (run `cargo fix --test "datetime_operator" -p date_utils` to apply 11 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/date_utils-1df8216ba663f806) [INFO] [stdout] [INFO] [stdout] running 110 tests [INFO] [stdout] test common::date::test_close_to_index ... ok [INFO] [stdout] test common::date::test_date_is_future_false ... ok [INFO] [stdout] test common::date::test_close_to ... ok [INFO] [stdout] test common::date::test_date_is_past_false ... ok [INFO] [stdout] test common::date::test_date_is_past_true ... ok [INFO] [stdout] test common::date::test_date_is_future_true ... ok [INFO] [stdout] test common::date::test_date_is_same_false ... ok [INFO] [stdout] test common::date::test_date_is_same_true ... ok [INFO] [stdout] test common::date::test_is_exist ... ok [INFO] [stdout] test common::date_times::test_after_false ... ok [INFO] [stdout] test common::date_times::test_after_true ... ok [INFO] [stdout] test common::date_times::test_before_false ... ok [INFO] [stdout] test common::date_times::test_before_true ... ok [INFO] [stdout] test common::date_times::test_closet_to ... ok [INFO] [stdout] test common::date_times::test_closet_to_index ... ok [INFO] [stdout] test common::date_times::test_is_future_false ... ok [INFO] [stdout] test common::date_times::test_is_future_true ... ok [INFO] [stdout] test common::date_times::test_is_past_false ... ok [INFO] [stdout] test common::date_times::test_is_past_true ... ok [INFO] [stdout] test common::date_times::test_is_same_false ... ok [INFO] [stdout] test common::date_times::test_is_same_true ... ok [INFO] [stdout] test day::day_helper::tests::test_date_add_days ... ok [INFO] [stdout] test day::day_helper::tests::test_date_add_days_opt ... ok [INFO] [stdout] test day::day_helper::tests::test_date_begin_of_day ... ok [INFO] [stdout] test day::day_helper::tests::test_date_day_of_year ... ok [INFO] [stdout] test day::day_helper::tests::test_date_diff_calendar_days ... ok [INFO] [stdout] test day::day_helper::tests::test_date_diff_days ... ok [INFO] [stdout] test day::day_helper::tests::test_date_end_of_day ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_date_days ... ok [INFO] [stdout] test day::day_helper::tests::test_date_sub_days_opt ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_diff_calendar_days ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_diff_days ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_day_of_year ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_is_same_day_true ... ok [INFO] [stdout] test day::day_helper::tests::test_date_sub_days ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_sub_days ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_is_same_day_false ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_sub_days_opt ... ok [INFO] [stdout] test day::day_helper::tests::test_datetime_add_days_opt ... ok [INFO] [stdout] test day::daytime_helper::tests::test_datetime_start_of_today ... ok [INFO] [stdout] test day::daytime_helper::tests::test_end_of_today ... ok [INFO] [stdout] test day::today::tests::test_datetime_end_of_today ... ok [INFO] [stdout] test day::today::tests::test_end_of_today ... ok [INFO] [stdout] test day::today::tests::test_begin_of_today ... ok [INFO] [stdout] test day::today::tests::test_is_today_true ... ok [INFO] [stdout] test day::today::tests::test_is_today_false ... ok [INFO] [stdout] test day::tomorrow::tests::test_begin_of_tomorrow ... ok [INFO] [stdout] test day::tomorrow::tests::test_datetime_begin_of_tomorrow ... ok [INFO] [stdout] test day::tomorrow::tests::test_datetime_end_of_tomorrow ... ok [INFO] [stdout] test day::yesterday::tess::test_begin_of_yesterday ... ok [INFO] [stdout] test day::tomorrow::tests::test_end_of_tomorrow ... ok [INFO] [stdout] test day::yesterday::tess::test_datetime_begin_of_yesterday ... ok [INFO] [stdout] test day::today::tests::test_datetime_begin_of_today ... ok [INFO] [stdout] test day::yesterday::tess::test_datetime_end_of_yesterday ... ok [INFO] [stdout] test day::yesterday::tess::test_end_of_yesterday ... ok [INFO] [stdout] test day::yesterday::tess::test_is_yesterday_true ... ok [INFO] [stdout] test day::tomorrow::tests::test_is_tomorrow_false ... ok [INFO] [stdout] test minute::tests::test_add_minutes ... ok [INFO] [stdout] test minute::tests::test_same_minute_true ... ok [INFO] [stdout] test minute::tests::test_sub_minutes ... ok [INFO] [stdout] test month::tests::test_date_add_month ... ok [INFO] [stdout] test day::tomorrow::tests::test_is_tomorrow_true ... ok [INFO] [stdout] test month::tests::test_date_begin_of_month ... ok [INFO] [stdout] test month::tests::test_datetime_add_month ... ok [INFO] [stdout] test minute::tests::test_diff_minutes ... ok [INFO] [stdout] test month::tests::test_datetime_begin_of_month ... ok [INFO] [stdout] test day::yesterday::tess::test_is_yesterday_false ... ok [INFO] [stdout] test minute::tests::test_same_minute_false ... ok [INFO] [stdout] test month::tests::test_datetime_is_same_month ... ok [INFO] [stdout] test now::tests::test_local_timestamp ... ok [INFO] [stdout] test now::tests::test_now_local_east ... ok [INFO] [stdout] test now::tests::test_now_local_west ... ok [INFO] [stdout] test now::tests::test_local_timestamp_micros ... ok [INFO] [stdout] test month::tests::test_datetime_end_of_month ... ok [INFO] [stdout] test now::tests::test_now_timestamp ... ok [INFO] [stdout] test now::tests::test_now_timestamp_micros ... ok [INFO] [stdout] test period::tests::period_between_less_one_month_test ... ok [INFO] [stdout] test now::tests::test_local_timestamp_millis ... ok [INFO] [stdout] test period::tests::period_between_simple_test ... ok [INFO] [stdout] test now::tests::test_now_timestamp_millis ... ok [INFO] [stdout] test utils::tests::test_hour2day ... ok [INFO] [stdout] test period::tests::period_between_test ... ok [INFO] [stdout] test now::tests::test_local_timestamp_nanos ... ok [INFO] [stdout] test now::tests::test_now_timestamp_nanos ... ok [INFO] [stdout] test utils::tests::test_is_leap_year ... ok [INFO] [stdout] test utils::tests::test_minute2day ... ok [INFO] [stdout] test utils::tests::test_minute2hour ... ok [INFO] [stdout] test utils::tests::test_second2day ... ok [INFO] [stdout] test now::tests::test_now_utc ... ok [INFO] [stdout] test utils::tests::test_second2hour ... ok [INFO] [stdout] test utils::tests::test_second2minute ... ok [INFO] [stdout] test year::test::test_add_year ... ok [INFO] [stdout] test year::test::test_date_end_of_year ... ok [INFO] [stdout] test year::test::test_date_last_day_of_year ... ok [INFO] [stdout] test year::test::test_date_sub_years ... ok [INFO] [stdout] test year::test::test_datetime_add_years ... ok [INFO] [stdout] test year::test::test_datetime_begin_of_year ... ok [INFO] [stdout] test year::test::test_datetime_calendar_diff_years ... ok [INFO] [stdout] test year::test::test_datetime_end_of_year ... ok [INFO] [stdout] test year::test::test_datetime_is_same_year_false ... ok [INFO] [stdout] test year::test::test_datetime_is_same_year_true ... ok [INFO] [stdout] test year::test::test_datetime_last_day_of_year ... ok [INFO] [stdout] test year::test::test_diff_calendar_years ... ok [INFO] [stdout] test year::test::test_datetime_sub_years ... ok [INFO] [stdout] test year::test::test_diff_calendar_years_time1 ... ok [INFO] [stdout] test year::test::test_diff_calendar_years_time ... ok [INFO] [stdout] test year::test::test_diff_calendar_years_time2 ... ok [INFO] [stdout] test year::test::test_diff_years_1 ... ok [INFO] [stdout] test year::test::test_since_year ... ok [INFO] [stdout] test year::test::test_since_year1 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 110 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/date_operator/main.rs (/opt/rustwide/target/debug/deps/date_operator-c8d0b9235979e0f2) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test common::test_after_date ... ok [INFO] [stdout] test common::test_before_date ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/datetime_operator/main.rs (/opt/rustwide/target/debug/deps/datetime_operator-4fea4b3c3e7012a4) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/decade.rs (/opt/rustwide/target/debug/deps/decade-f11f4dfa27d45261) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/quarter.rs (/opt/rustwide/target/debug/deps/quarter-2170b35e9f0cfef8) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/range.rs (/opt/rustwide/target/debug/deps/range-75f6e7f7cc7f0bf8) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests date_utils [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "352dc176153cc51d20743290f0cd384e138c6f394e90e12881463bd208aeeebc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "352dc176153cc51d20743290f0cd384e138c6f394e90e12881463bd208aeeebc", kill_on_drop: false }` [INFO] [stdout] 352dc176153cc51d20743290f0cd384e138c6f394e90e12881463bd208aeeebc