[INFO] cloning repository https://github.com/lhohan/simple-time-tracker [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lhohan/simple-time-tracker" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flhohan%2Fsimple-time-tracker", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flhohan%2Fsimple-time-tracker'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 08dc1b81ff6c78c06ac441b23d301bfff6762340 [INFO] testing lhohan/simple-time-tracker against 1.90.0 for beta-1.91-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flhohan%2Fsimple-time-tracker" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/lhohan/simple-time-tracker [INFO] finished tweaking git repo https://github.com/lhohan/simple-time-tracker [INFO] tweaked toml for git repo https://github.com/lhohan/simple-time-tracker written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lhohan/simple-time-tracker on toolchain 1.90.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/lhohan/simple-time-tracker 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" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded assert_fs v1.1.3 [INFO] [stderr] Downloaded assert_cmd v2.0.17 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7dfc8c5ac52b9883529ed1f746a7f1e0530a71a3cfa85f97d3366587c67c7eab [INFO] running `Command { std: "docker" "start" "-a" "7dfc8c5ac52b9883529ed1f746a7f1e0530a71a3cfa85f97d3366587c67c7eab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7dfc8c5ac52b9883529ed1f746a7f1e0530a71a3cfa85f97d3366587c67c7eab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7dfc8c5ac52b9883529ed1f746a7f1e0530a71a3cfa85f97d3366587c67c7eab", kill_on_drop: false }` [INFO] [stdout] 7dfc8c5ac52b9883529ed1f746a7f1e0530a71a3cfa85f97d3366587c67c7eab [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5c1d1f747d3b69d562ca5bd960b75e005f11f60335dda0a0063a04bf2523f617 [INFO] running `Command { std: "docker" "start" "-a" "5c1d1f747d3b69d562ca5bd960b75e005f11f60335dda0a0063a04bf2523f617", kill_on_drop: false }` [INFO] [stderr] Compiling anstyle v1.0.11 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling anstyle-query v1.1.3 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling clap_lex v0.7.5 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling iana-time-zone v0.1.63 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling syn v2.0.103 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling anstream v0.6.19 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling clap_builder v4.5.40 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling clap_derive v4.5.40 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling clap v4.5.40 [INFO] [stderr] Compiling time-tracker v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/domain/mod.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | pub(crate) fn parse(line: &str) -> Option { [INFO] [stdout] | ^^^^ --------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 80 | pub(crate) fn parse(line: &str) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/domain/mod.rs:176:21 [INFO] [stdout] | [INFO] [stdout] 176 | fn parse_part(part: &str) -> Result { [INFO] [stdout] | ^^^^ -------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 176 | fn parse_part(part: &str) -> Result, ParseError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.26s [INFO] running `Command { std: "docker" "inspect" "5c1d1f747d3b69d562ca5bd960b75e005f11f60335dda0a0063a04bf2523f617", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c1d1f747d3b69d562ca5bd960b75e005f11f60335dda0a0063a04bf2523f617", kill_on_drop: false }` [INFO] [stdout] 5c1d1f747d3b69d562ca5bd960b75e005f11f60335dda0a0063a04bf2523f617 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2212169d5f22a225424d86cbc60b7469d2ff739647fa3064f7ac262ddbe1409e [INFO] running `Command { std: "docker" "start" "-a" "2212169d5f22a225424d86cbc60b7469d2ff739647fa3064f7ac262ddbe1409e", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling serde_json v1.0.143 [INFO] [stderr] Compiling syn v2.0.103 [INFO] [stderr] Compiling predicates-core v1.0.9 [INFO] [stderr] Compiling winnow v0.7.11 [INFO] [stderr] Compiling doc-comment v0.3.3 [INFO] [stderr] Compiling half v2.6.0 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling itoa v1.0.15 [INFO] [stderr] Compiling ryu v1.0.20 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling predicates-tree v1.0.12 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling slab v0.4.10 [INFO] [stderr] Compiling assert_cmd v2.0.17 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling rstest_macros v0.24.0 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling is-terminal v0.4.16 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling tempfile v3.20.0 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling proc-macro-crate v3.3.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling bstr v1.12.0 [INFO] [stderr] Compiling predicates v3.1.3 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling clap_derive v4.5.40 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling globset v0.4.16 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling ignore v0.4.23 [INFO] [stderr] Compiling clap v4.5.40 [INFO] [stderr] Compiling time-tracker v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling globwalk v0.9.1 [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/domain/mod.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | pub(crate) fn parse(line: &str) -> Option { [INFO] [stdout] | ^^^^ --------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 80 | pub(crate) fn parse(line: &str) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/domain/mod.rs:176:21 [INFO] [stdout] | [INFO] [stdout] 176 | fn parse_part(part: &str) -> Result { [INFO] [stdout] | ^^^^ -------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 176 | fn parse_part(part: &str) -> Result, ParseError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling assert_fs v1.1.3 [INFO] [stderr] Compiling rstest v0.24.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/domain/mod.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | pub(crate) fn parse(line: &str) -> Option { [INFO] [stdout] | ^^^^ --------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 80 | pub(crate) fn parse(line: &str) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/domain/mod.rs:176:21 [INFO] [stdout] | [INFO] [stdout] 176 | fn parse_part(part: &str) -> Result { [INFO] [stdout] | ^^^^ -------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 176 | fn parse_part(part: &str) -> Result, ParseError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 47.64s [INFO] running `Command { std: "docker" "inspect" "2212169d5f22a225424d86cbc60b7469d2ff739647fa3064f7ac262ddbe1409e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2212169d5f22a225424d86cbc60b7469d2ff739647fa3064f7ac262ddbe1409e", kill_on_drop: false }` [INFO] [stdout] 2212169d5f22a225424d86cbc60b7469d2ff739647fa3064f7ac262ddbe1409e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 4d5ff0f998b2b84485019b44515a8ff2bb0347a19597c62355d35cc5aa4b512f [INFO] running `Command { std: "docker" "start" "-a" "4d5ff0f998b2b84485019b44515a8ff2bb0347a19597c62355d35cc5aa4b512f", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/domain/mod.rs:80:31 [INFO] [stderr] | [INFO] [stderr] 80 | pub(crate) fn parse(line: &str) -> Option { [INFO] [stderr] | ^^^^ --------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 80 | pub(crate) fn parse(line: &str) -> Option> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/domain/mod.rs:176:21 [INFO] [stderr] | [INFO] [stderr] 176 | fn parse_part(part: &str) -> Result { [INFO] [stderr] | ^^^^ -------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 176 | fn parse_part(part: &str) -> Result, ParseError> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `time-tracker` (lib) generated 2 warnings [INFO] [stderr] warning: `time-tracker` (lib test) generated 2 warnings (2 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/time_tracker-ba74d739af8f4eb5) [INFO] [stdout] [INFO] [stdout] running 35 tests [INFO] [stdout] test domain::tests::line_entry_parsing::parse_invalid_time ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_invalid_times_ending_in_time_unit::supported_time_unit_1___h__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_1____hash__notinstartofline__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_multiple_time_entries ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_4_____ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_5___sometext__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_2___dash___notinstartofline__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_6____not_a_tag__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_outcome ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_project_missing ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_simple_hours ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_simple_minutes ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_outcome_should_fail_when_multiple_outcomes ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_task_description_is_optional ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_3_____ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::tag_parsing::parse_line_with_only_context_tags ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::tag_parsing::parse_line_with_project_and_tags ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::tag_parsing::parse_line_with_project_prefix_tag ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_simple_complete_line ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_outcome_first_hash_in_line ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_time_missing ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_invalid_times_ending_in_time_unit::supported_time_unit_3___p__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_outcome_when_outcome_is_missing ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_non_entries::line_7____not_a_tag__ ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_pomodoros ... ok [INFO] [stdout] test domain::tests::parser_error_handling::error_conversion ... ok [INFO] [stdout] test domain::tests::parser_error_handling::error_messages ... ok [INFO] [stdout] test parsing::filter::tests::test_week_of_date_range ... ok [INFO] [stdout] test reporting::tests::report_tests::test_overview_report_ordering ... ok [INFO] [stdout] test parsing::processor::tests::handles_non_existent_file ... ok [INFO] [stdout] test parsing::processor::tests::handles_empty_directory ... ok [INFO] [stdout] test parsing::processor::tests::processes_nested_directories ... ok [INFO] [stdout] test parsing::processor::tests::processes_single_markdown_file ... ok [INFO] [stdout] test parsing::processor::tests::processes_only_supported_files_in_directory ... ok [INFO] [stdout] test domain::tests::line_entry_parsing::parse_invalid_times_ending_in_time_unit::supported_time_unit_2___m__ ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tt-c4f304f871d8b13a) [INFO] [stdout] [INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/acceptance/main.rs (/opt/rustwide/target/debug/deps/acceptance-94efd100f5305bc3) [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] [stdout] [INFO] [stdout] running 132 tests [INFO] [stdout] test general::directory_processing::app_should_process_markdown_files ... ok [INFO] [stdout] test general::directory_processing::app_should_process_multiple_files ... ok [INFO] [stdout] test general::directory_processing::app_should_not_process_doc_files ... ok [INFO] [stdout] test general::directory_processing::app_should_merge_same_project_across_files ... ok [INFO] [stdout] test general::app_should_ignore_non_entry_lines::non_entry_input_2_____ ... ok [INFO] [stdout] test general::app_should_generate_report_when_valid_entries_provided ... ok [INFO] [stdout] test general::app_should_only_process_tt_sections ... ok [INFO] [stdout] test details::details_flag_should_show_tasks_when_multiple_tags_specified ... ok [INFO] [stdout] test general::error_reporting::app_should_not_warn_when_errors_outside_tt_sections ... ok [INFO] [stdout] test general::app_should_ignore_non_entry_lines::non_entry_input_3___sometextinatimetrackingsection__ ... ok [INFO] [stdout] test details::details_flag_should_fail_when_no_tags_specified ... ok [INFO] [stdout] test general::app_should_report_no_data_when_input_empty::empty_input_1_____ ... ok [INFO] [stdout] test general::app_should_report_no_data_when_input_empty::empty_input_2___TT2020_01_01__ ... ok [INFO] [stdout] test general::directory_processing::app_should_process_nested_directories ... ok [INFO] [stdout] test general::directory_processing::app_should_process_txt_files ... ok [INFO] [stdout] test general::error_reporting::app_should_report_warnings_when_entries_invalid ... ok [INFO] [stdout] test general::directory_processing::app_should_report_invalid_files_with_warnings ... ok [INFO] [stdout] test general::error_reporting::app_should_show_correct_line_numbers_for_multiple_errors ... ok [INFO] [stdout] test general::error_reporting::app_should_show_file_name_in_warnings ... ok [INFO] [stdout] test general::error_reporting::app_should_only_warn_for_tt_sections ... ok [INFO] [stdout] test details::details_flag_should_succeed_when_tags_specified ... ok [INFO] [stdout] test general::app_should_ignore_non_entry_lines::non_entry_input_1_____ ... ok [INFO] [stdout] test general::filters_should_work_when_combined ... ok [INFO] [stdout] test details::details_flag_should_filter_tasks_by_tags ... ok [INFO] [stdout] test general::from_filter_should_fail_when_date_invalid::value_2___2020_00_01__ ... ok [INFO] [stdout] test general::from_filter_should_show_report_description ... ok [INFO] [stdout] test general::from_filter_should_fail_when_date_invalid::value_4___abc__ ... ok [INFO] [stdout] test general::from_filter_should_adjust_start_date ... ok [INFO] [stdout] test limit::app_should_show_all_projects_when_limit_not_specified ... ok [INFO] [stdout] test general::verbose_flag_should_show_processing_output ... ok [INFO] [stdout] test general::report_should_show_end_date ... ok [INFO] [stdout] test general::report_should_include_summary_statistics ... ok [INFO] [stdout] test general::project_filter_should_default_empty_task_descriptions ... ok [INFO] [stdout] test general::error_reporting::app_should_show_line_number_when_date_invalid ... ok [INFO] [stdout] test general::report_should_show_date_range_when_no_period_filter ... ok [INFO] [stdout] test general::help_flag_should_show_help_information ... ok [INFO] [stdout] test details::details_flag_should_show_task_details ... ok [INFO] [stdout] test general::project_filter_should_aggregate_duplicate_tasks ... ok [INFO] [stdout] test general::from_filter_should_fail_when_date_invalid::value_1___01_01_2020__ ... ok [INFO] [stdout] test limit::limit_flag_should_show_first_project_above_threshold ... ok [INFO] [stdout] test outcomes::report_should_not_show_outcomes_when_no_outcomes_are_present ... ok [INFO] [stdout] test limit::limit_flag_should_filter_projects_above_threshold ... ok [INFO] [stdout] test general::report_should_show_start_date ... ok [INFO] [stdout] test markdown::markdown_should_bold_format_project_names ... ok [INFO] [stdout] test general::project_filter_should_show_project_details ... ok [INFO] [stdout] test general::from_filter_should_fail_when_date_invalid::value_3___2020_01_00__ ... ok [INFO] [stdout] test general::error_reporting::app_should_show_line_numbers_when_errors_occur ... ok [INFO] [stdout] test outcomes::report_should_show_outcomes_when_outcomes_are_present ... ok [INFO] [stdout] test markdown::markdown_overview_should_format_with_correct_structure ... ok [INFO] [stdout] test limit::limit_flag_should_show_projects_at_threshold ... ok [INFO] [stdout] test markdown::markdown_should_handle_special_characters_in_project_names ... ok [INFO] [stdout] test markdown::markdown_details_should_format_with_correct_structure ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_02___month_0__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_06___2020_w00__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_04___m_0__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_01___abc__ ... ok [INFO] [stdout] test outcomes::report_should_show_sum_outcomes ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_january_current::last_month_1___last_month__::at_date_3___2020_01_31__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_08___2020_00__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_january_current::last_month_1___last_month__::at_date_1___2020_01_01__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_january_current::last_month_1___last_month__::at_date_2___2020_01_15__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_specified::last_month_1___last_month__::at_date_1___2020_02_01__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_january_current::last_month_2___lm__::at_date_1___2020_01_01__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_january_current::last_month_2___lm__::at_date_2___2020_01_15__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_specified::last_month_1___last_month__::at_date_2___2020_02_02__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_specified::last_month_2___lm__::at_date_1___2020_02_01__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_week_when_specified::last_week_2___lw__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_specified::last_month_2___lm__::at_date_3___2020_02_28__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_january_current::last_month_2___lm__::at_date_3___2020_01_31__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_specified::last_month_2___lm__::at_date_2___2020_02_02__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_today_when_specified::today_1___today__::at_date_and_expected_duration_1____2020_01_01_____1h00m___ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_07___2020_w53__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_this_month_when_specified::this_month_1___this_month__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_this_week_when_specified::this_week_2___tw__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_this_month_when_specified::this_month_2___tm__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_month_when_specified::last_month_1___last_month__::at_date_3___2020_02_28__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_05___m_13__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_03___month_13__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_last_week_when_specified::last_week_1___last_week__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_13___0999_01__ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_11___2020_00_00__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_today_when_specified::today_1___today__::at_date_and_expected_duration_3____2020_01_03_____4h00m___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_this_week_when_specified::this_week_1___this_week__ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_today_when_specified::today_2___t__::at_date_and_expected_duration_1____2020_01_01_____1h00m___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_yesterday_when_specified::yesterday_1___yesterday__::test_data_1_YesterdayReport_input_clock_date___2020_01_02___expected_reporte ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_1_when_specified::month_1_1___month_1__::data_1____2019_____1h00m_____2019_01___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_today_when_specified::today_1___today__::at_date_and_expected_duration_2____2020_01_02_____2h00m___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_yesterday_when_specified::yesterday_2___y__::test_data_1_YesterdayReport_input_clock_date___2020_01_02___expected_reporte ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_yesterday_when_specified::yesterday_1___yesterday__::test_data_3_YesterdayReport_input_clock_date___2020_01_04___expected_reporte ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_yesterday_when_specified::yesterday_1___yesterday__::test_data_2_YesterdayReport_input_clock_date___2020_01_03___expected_reporte ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_1_when_specified::month_1_2___m_1__::data_2____2020_____2h00m_____2020_01___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_2_when_specified::month_2_1___month_2__::data_2____2020_____2h00m_____2020_02___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_today_when_specified::today_2___t__::at_date_and_expected_duration_2____2020_01_02_____2h00m___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_1_when_specified::month_1_1___month_1__::data_3____2021_____8h00m_____2021_01___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_yesterday_when_specified::yesterday_2___y__::test_data_2_YesterdayReport_input_clock_date___2020_01_03___expected_reporte ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_2_when_specified::month_2_2___m_2__::data_2____2020_____2h00m_____2020_02___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_2_when_specified::month_2_2___m_2__::data_1____2019_____1h00m_____2019_02___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_yesterday_when_specified::yesterday_2___y__::test_data_3_YesterdayReport_input_clock_date___2020_01_04___expected_reporte ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_2_when_specified::month_2_1___month_2__::data_3____2021_____4h00m_____2021_02___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_1_when_specified::month_1_1___month_1__::data_2____2020_____2h00m_____2020_01___ ... ok [INFO] [stdout] test periods::literal_periods::period_filter_should_show_today_when_specified::today_2___t__::at_date_and_expected_duration_3____2020_01_03_____4h00m___ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_09___2020_13__ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_1_when_specified::month_1_2___m_1__::data_3____2021_____8h00m_____2021_01___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_1_when_specified::month_1_2___m_1__::data_1____2019_____1h00m_____2019_01___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_2_when_specified::month_2_2___m_2__::data_3____2021_____4h00m_____2021_02___ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_date_when_specified::test_data_1_DateValueSpecified_date_value___2020_01_01___expectations____202 ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_month_when_specified::test_data_2_MonthValueSpecified_month_value___2020_1___expectations____2020_ ... ok [INFO] [stdout] test tags::exclude_tags_filter::app_should_support_exclude_tags_filter ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_10___2020_00_01__ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_month_when_specified::test_data_3_MonthValueSpecified_month_value___2020_02___expectations____2020 ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_date_when_specified::test_data_2_DateValueSpecified_date_value___2020_01_02___expectations____202 ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_week_when_specified::test_data_2_WeekValueSpecified_week_value___2020_w1___expectations____week1_ ... ok [INFO] [stdout] test tags::app_should_use_first_tag_as_main_project ... ok [INFO] [stdout] test tags::exclude_tags_filter::exclude_tags_filter_should_hide_entry_if_any_tag_matches ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_month_2_when_specified::month_2_1___month_2__::data_1____2019_____1h00m_____2019_02___ ... ok [INFO] [stdout] test tags::project_filter::project_filter_should_match_any_tag_in_entry::tag_2___tag2__ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_month_when_specified::test_data_1_MonthValueSpecified_month_value___2020_01___expectations____2020 ... ok [INFO] [stdout] test tags::exclude_tags_filter::exclude_tags_filter_should_hide_entries_matching_any_tag ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_week_when_specified::test_data_1_WeekValueSpecified_week_value___2020_w01___expectations____week1 ... ok [INFO] [stdout] test tags::exclude_tags_filter::exclude_tags_filter_should_hide_matching_entries ... ok [INFO] [stdout] test tags::project_filter::project_filter_should_match_any_tag_in_entry::tag_1___tag1__ ... ok [INFO] [stdout] test tags::tags_filter::app_should_support_tags_filter ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_week_when_specified::test_data_3_WeekValueSpecified_week_value___2020_w02___expectations____week2 ... ok [INFO] [stdout] test tags::tags_filter::tags_filter_should_show_all_entries_when_empty ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_year_when_specified::test_data_1_YearValueSpecified_year_value___2020___expectations____2020_____ ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_14___0999__ ... ok [INFO] [stdout] test tags::project_filter::project_filter_should_match_any_tag_in_entry::tag_3___tag3__ ... ok [INFO] [stdout] test periods::value_periods::period_filter_should_show_specific_year_when_specified::test_data_2_YearValueSpecified_year_value___2021___expectations____2021_____ ... ok [INFO] [stdout] test tags::tags_filter::tags_filter_should_show_matching_entries ... ok [INFO] [stdout] test periods::invalid_periods::period_filter_should_fail_when_period_invalid::invalid_period_value_12___2020_01_32__ ... ok [INFO] [stdout] test tags::tags_filter::tags_filter_should_show_entries_matching_any_tag ... ok [INFO] [stdout] test tags::tags_filter::tags_filter_should_show_no_data_when_no_match ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 132 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.80s [INFO] [stdout] [INFO] [stderr] Doc-tests time_tracker [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" "4d5ff0f998b2b84485019b44515a8ff2bb0347a19597c62355d35cc5aa4b512f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4d5ff0f998b2b84485019b44515a8ff2bb0347a19597c62355d35cc5aa4b512f", kill_on_drop: false }` [INFO] [stdout] 4d5ff0f998b2b84485019b44515a8ff2bb0347a19597c62355d35cc5aa4b512f