[INFO] fetching crate envelope-cli 0.2.6... [INFO] testing envelope-cli-0.2.6 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate envelope-cli 0.2.6 into /workspace/builds/worker-6-tc2/source [INFO] started tweaking crates.io crate envelope-cli 0.2.6 [INFO] finished tweaking crates.io crate envelope-cli 0.2.6 [INFO] tweaked toml for crates.io crate envelope-cli 0.2.6 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate envelope-cli 0.2.6 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate envelope-cli 0.2.6 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f3eb8002d3bbf06c4dd6301962c29061f202843d42c68ca34d520157133b3967 [INFO] running `Command { std: "docker" "start" "-a" "f3eb8002d3bbf06c4dd6301962c29061f202843d42c68ca34d520157133b3967", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f3eb8002d3bbf06c4dd6301962c29061f202843d42c68ca34d520157133b3967", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f3eb8002d3bbf06c4dd6301962c29061f202843d42c68ca34d520157133b3967", kill_on_drop: false }` [INFO] [stdout] f3eb8002d3bbf06c4dd6301962c29061f202843d42c68ca34d520157133b3967 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ed98f88f3a7b8e6245b4ee8b0135ae65a7de2506f5b54d9ce62a972c61ec9157 [INFO] running `Command { std: "docker" "start" "-a" "ed98f88f3a7b8e6245b4ee8b0135ae65a7de2506f5b54d9ce62a972c61ec9157", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling inout v0.1.4 [INFO] [stderr] Compiling signal-hook-registry v1.4.7 [INFO] [stderr] Compiling log v0.4.28 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling proc-macro-error-attr2 v2.0.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling mio v1.1.0 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling polyval v0.6.2 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling base64ct v1.8.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling bytecount v0.6.9 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling papergrid v0.13.0 [INFO] [stderr] Compiling compact_str v0.8.1 [INFO] [stderr] Compiling clap_builder v4.5.53 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling password-hash v0.5.0 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling ghash v0.5.1 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling csv-core v0.1.13 [INFO] [stderr] Compiling rtoolbox v0.0.3 [INFO] [stderr] Compiling csv v1.4.0 [INFO] [stderr] Compiling rpassword v7.4.0 [INFO] [stderr] Compiling aes-gcm v0.10.3 [INFO] [stderr] Compiling argon2 v0.5.3 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling tabled_derive v0.9.0 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling tabled v0.17.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling clap v4.5.53 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling instability v0.3.9 [INFO] [stderr] Compiling ratatui v0.28.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_yaml v0.9.34+deprecated [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling envelope-cli v0.2.6 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 18s [INFO] running `Command { std: "docker" "inspect" "ed98f88f3a7b8e6245b4ee8b0135ae65a7de2506f5b54d9ce62a972c61ec9157", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ed98f88f3a7b8e6245b4ee8b0135ae65a7de2506f5b54d9ce62a972c61ec9157", kill_on_drop: false }` [INFO] [stdout] ed98f88f3a7b8e6245b4ee8b0135ae65a7de2506f5b54d9ce62a972c61ec9157 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e980c9bdb40c0fcbd1cd163a3cac5edfd726e79e6fdaeed607faabc656b97cf2 [INFO] running `Command { std: "docker" "start" "-a" "e980c9bdb40c0fcbd1cd163a3cac5edfd726e79e6fdaeed607faabc656b97cf2", kill_on_drop: false }` [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling assert_cmd v2.1.1 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling tempfile v3.23.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling predicates v3.1.3 [INFO] [stderr] Compiling envelope-cli v0.2.6 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 30.83s [INFO] running `Command { std: "docker" "inspect" "e980c9bdb40c0fcbd1cd163a3cac5edfd726e79e6fdaeed607faabc656b97cf2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e980c9bdb40c0fcbd1cd163a3cac5edfd726e79e6fdaeed607faabc656b97cf2", kill_on_drop: false }` [INFO] [stdout] e980c9bdb40c0fcbd1cd163a3cac5edfd726e79e6fdaeed607faabc656b97cf2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c1d3b5bfb808d94606b11bac264f59333c80e3e93351fbac4c3df5b0a93b9fa4 [INFO] running `Command { std: "docker" "start" "-a" "c1d3b5bfb808d94606b11bac264f59333c80e3e93351fbac4c3df5b0a93b9fa4", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/envelope_cli-e720fd4de45bfd05) [INFO] [stdout] [INFO] [stdout] running 348 tests [INFO] [stdout] test audit::diff::tests::test_detailed_diff_nested ... ok [INFO] [stdout] test audit::diff::tests::test_format_value ... ok [INFO] [stdout] test audit::diff::tests::test_bool_change ... ok [INFO] [stdout] test audit::diff::tests::test_multiple_changes ... ok [INFO] [stdout] test audit::diff::tests::test_no_changes ... ok [INFO] [stdout] test audit::diff::tests::test_null_handling ... ok [INFO] [stdout] test audit::diff::tests::test_simple_field_change ... ok [INFO] [stdout] test audit::diff::tests::test_string_field_change ... ok [INFO] [stdout] test audit::entry::tests::test_create_entry ... ok [INFO] [stdout] test audit::entry::tests::test_delete_entry ... ok [INFO] [stdout] test audit::entry::tests::test_entity_type_display ... ok [INFO] [stdout] test audit::diff::tests::test_field_added ... ok [INFO] [stdout] test audit::entry::tests::test_serialization ... ok [INFO] [stdout] test audit::entry::tests::test_update_entry ... ok [INFO] [stdout] test audit::entry::tests::test_human_readable_format ... ok [INFO] [stdout] test audit::entry::tests::test_operation_display ... ok [INFO] [stdout] test audit::logger::tests::test_empty_log ... ok [INFO] [stdout] test audit::logger::tests::test_log_and_read ... ok [INFO] [stdout] test audit::logger::tests::test_log_batch ... ok [INFO] [stdout] test audit::logger::tests::test_delete_entry_logged ... ok [INFO] [stdout] test audit::logger::tests::test_multiple_entries ... ok [INFO] [stdout] test audit::logger::tests::test_survives_crash_simulation ... ok [INFO] [stdout] test backup::manager::tests::test_backup_archive_structure ... ok [INFO] [stdout] test audit::logger::tests::test_update_entry_logged ... ok [INFO] [stdout] test backup::manager::tests::test_create_backup ... ok [INFO] [stdout] test backup::manager::tests::test_empty_backup_dir ... ok [INFO] [stdout] test backup::manager::tests::test_parse_backup_timestamp ... ok [INFO] [stdout] test backup::manager::tests::test_get_latest_backup ... ok [INFO] [stdout] test backup::restore::tests::test_restore_creates_files ... ok [INFO] [stdout] test backup::restore::tests::test_restore_from_backup ... ok [INFO] [stdout] test backup::restore::tests::test_restore_result_summary ... ok [INFO] [stdout] test backup::restore::tests::test_validate_backup ... ok [INFO] [stdout] test backup::restore::tests::test_validation_result_summary ... ok [INFO] [stdout] test config::paths::tests::test_custom_base_dir ... ok [INFO] [stdout] test audit::logger::tests::test_read_recent ... ok [INFO] [stdout] test config::paths::tests::test_ensure_directories ... ok [INFO] [stdout] test config::paths::tests::test_env_var_override ... ok [INFO] [stdout] test config::settings::tests::test_default_settings ... ok [INFO] [stdout] test config::paths::tests::test_file_paths ... ok [INFO] [stdout] test config::settings::tests::test_save_and_load ... ok [INFO] [stdout] test config::settings::tests::test_serde_round_trip ... ok [INFO] [stdout] test audit::diff::tests::test_array_change_summary ... ok [INFO] [stdout] test audit::diff::tests::test_field_removed ... ok [INFO] [stdout] test audit::diff::tests::test_long_string_truncation ... ok [INFO] [stdout] test backup::manager::tests::test_list_backups ... ok [INFO] [stdout] test backup::manager::tests::test_retention_policy ... ok [INFO] [stdout] test backup::manager::tests::test_create_backup_with_retention ... ok [INFO] [stdout] test crypto::key_derivation::tests::test_derive_key ... ok [INFO] [stdout] test crypto::encryption::tests::test_encrypt_decrypt ... ok [INFO] [stdout] test crypto::encryption::tests::test_empty_plaintext ... ok [INFO] [stdout] test crypto::encryption::tests::test_tampered_ciphertext_fails ... ok [INFO] [stdout] test crypto::encryption::tests::test_large_plaintext ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_bytes_creation ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_bytes_debug ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_bytes_from_slice ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_bytes_from_vec ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_string_creation ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_string_debug ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_string_deref ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_string_display ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_string_from_str ... ok [INFO] [stdout] test crypto::secure_memory::tests::test_secure_string_from_string ... ok [INFO] [stdout] test display::account::tests::test_format_account_details ... ok [INFO] [stdout] test display::account::tests::test_format_account_list_plain ... ok [INFO] [stdout] test display::account::tests::test_format_account_list_pretty ... ok [INFO] [stdout] test display::account::tests::test_format_empty_list ... ok [INFO] [stdout] test display::category::tests::test_format_category_tree ... ok [INFO] [stdout] test display::category::tests::test_format_category_with_goal ... ok [INFO] [stdout] test display::category::tests::test_format_empty_tree ... ok [INFO] [stdout] test display::report::tests::test_alignment ... ok [INFO] [stdout] test display::report::tests::test_format_bar ... ok [INFO] [stdout] test display::report::tests::test_format_percentage ... ok [INFO] [stdout] test display::report::tests::test_truncate ... ok [INFO] [stdout] test display::transaction::tests::test_format_empty_register ... ok [INFO] [stdout] test display::transaction::tests::test_format_transaction_details ... ok [INFO] [stdout] test display::transaction::tests::test_format_transaction_row ... ok [INFO] [stdout] test display::transaction::tests::test_truncate ... ok [INFO] [stdout] test error::tests::test_error_display ... ok [INFO] [stdout] test error::tests::test_from_io_error ... ok [INFO] [stdout] test error::tests::test_insufficient_funds_error ... ok [INFO] [stdout] test error::tests::test_not_found_error ... ok [INFO] [stdout] test export::csv::tests::test_export_accounts_csv ... ok [INFO] [stdout] test export::csv::tests::test_export_transactions_csv ... ok [INFO] [stdout] test export::json::tests::test_full_export ... ok [INFO] [stdout] test export::json::tests::test_json_roundtrip ... ok [INFO] [stdout] test export::json::tests::test_metadata ... ok [INFO] [stdout] test export::yaml::tests::test_yaml_export ... ok [INFO] [stdout] test export::yaml::tests::test_yaml_roundtrip ... ok [INFO] [stdout] test models::account::tests::test_account_type_parsing ... ok [INFO] [stdout] test models::account::tests::test_archive ... ok [INFO] [stdout] test models::account::tests::test_display ... ok [INFO] [stdout] test models::account::tests::test_is_liability ... ok [INFO] [stdout] test models::account::tests::test_new_account ... ok [INFO] [stdout] test models::account::tests::test_serialization ... ok [INFO] [stdout] test models::account::tests::test_validation ... ok [INFO] [stdout] test models::account::tests::test_with_starting_balance ... ok [INFO] [stdout] test models::budget::tests::test_category_summary ... ok [INFO] [stdout] test models::budget::tests::test_negative_carryover ... ok [INFO] [stdout] test models::budget::tests::test_new_allocation ... ok [INFO] [stdout] test models::budget::tests::test_overspent_summary ... ok [INFO] [stdout] test models::budget::tests::test_serialization ... ok [INFO] [stdout] test models::budget::tests::test_total_budgeted ... ok [INFO] [stdout] test models::budget::tests::test_validation ... ok [INFO] [stdout] test models::budget::tests::test_with_budget ... ok [INFO] [stdout] test models::category::tests::test_category_goal ... ok [INFO] [stdout] test models::category::tests::test_category_validation ... ok [INFO] [stdout] test models::category::tests::test_default_groups ... ok [INFO] [stdout] test models::category::tests::test_group_validation ... ok [INFO] [stdout] test models::category::tests::test_move_category ... ok [INFO] [stdout] test models::category::tests::test_new_category ... ok [INFO] [stdout] test models::category::tests::test_new_group ... ok [INFO] [stdout] test models::category::tests::test_serialization ... ok [INFO] [stdout] test models::ids::tests::test_account_id_creation ... ok [INFO] [stdout] test models::ids::tests::test_different_id_types_not_mixable ... ok [INFO] [stdout] test models::ids::tests::test_id_display ... ok [INFO] [stdout] test models::ids::tests::test_id_equality ... ok [INFO] [stdout] test models::ids::tests::test_id_parse ... ok [INFO] [stdout] test models::ids::tests::test_id_serialization ... ok [INFO] [stdout] test models::income::tests::test_budget_difference ... ok [INFO] [stdout] test models::income::tests::test_new_income_expectation ... ok [INFO] [stdout] test models::income::tests::test_over_budget_detection ... ok [INFO] [stdout] test models::income::tests::test_serialization ... ok [INFO] [stdout] test models::income::tests::test_set_expected_amount ... ok [INFO] [stdout] test models::income::tests::test_set_notes ... ok [INFO] [stdout] test models::income::tests::test_validation_negative_amount ... ok [INFO] [stdout] test models::money::tests::test_arithmetic ... ok [INFO] [stdout] test models::money::tests::test_comparison ... ok [INFO] [stdout] test models::money::tests::test_display ... ok [INFO] [stdout] test models::money::tests::test_from_cents ... ok [INFO] [stdout] test models::money::tests::test_from_dollars_cents ... ok [INFO] [stdout] test models::money::tests::test_is_checks ... ok [INFO] [stdout] test models::money::tests::test_parse ... ok [INFO] [stdout] test models::money::tests::test_serialization ... ok [INFO] [stdout] test models::money::tests::test_sum ... ok [INFO] [stdout] test models::payee::tests::test_category_learning ... ok [INFO] [stdout] test models::payee::tests::test_manual_override ... ok [INFO] [stdout] test models::payee::tests::test_name_matching ... ok [INFO] [stdout] test models::payee::tests::test_new_payee ... ok [INFO] [stdout] test models::payee::tests::test_serialization ... ok [INFO] [stdout] test models::payee::tests::test_similarity_score ... ok [INFO] [stdout] test models::payee::tests::test_validation ... ok [INFO] [stdout] test models::payee::tests::test_with_default_category ... ok [INFO] [stdout] test models::period::tests::test_contains ... ok [INFO] [stdout] test models::period::tests::test_display ... ok [INFO] [stdout] test models::period::tests::test_monthly_navigation ... ok [INFO] [stdout] test models::period::tests::test_monthly_period ... ok [INFO] [stdout] test models::period::tests::test_parse_monthly ... ok [INFO] [stdout] test models::period::tests::test_parse_weekly ... ok [INFO] [stdout] test models::period::tests::test_serialization ... ok [INFO] [stdout] test models::period::tests::test_weekly_period ... ok [INFO] [stdout] test models::target::tests::test_by_date_cadence_serialization ... ok [INFO] [stdout] test models::target::tests::test_by_date_one_month_away ... ok [INFO] [stdout] test models::target::tests::test_by_date_six_months_away ... ok [INFO] [stdout] test models::target::tests::test_by_date_target_at_period_end ... ok [INFO] [stdout] test models::target::tests::test_by_date_target_date_in_current_period ... ok [INFO] [stdout] test models::target::tests::test_by_date_target_date_passed ... ok [INFO] [stdout] test models::target::tests::test_by_date_twelve_months_away ... ok [INFO] [stdout] test models::target::tests::test_by_date_uneven_distribution ... ok [INFO] [stdout] test models::target::tests::test_cadence_display ... ok [INFO] [stdout] test models::target::tests::test_custom_cadence_serialization ... ok [INFO] [stdout] test models::target::tests::test_custom_interval_for_monthly_period ... ok [INFO] [stdout] test models::target::tests::test_custom_interval_for_weekly_period ... ok [INFO] [stdout] test models::target::tests::test_custom_interval_one_day ... ok [INFO] [stdout] test models::target::tests::test_custom_interval_validation ... ok [INFO] [stdout] test models::target::tests::test_inactive_by_date_target ... ok [INFO] [stdout] test models::target::tests::test_inactive_target_returns_zero ... ok [INFO] [stdout] test models::target::tests::test_inactive_weekly_target ... ok [INFO] [stdout] test models::target::tests::test_inactive_yearly_target ... ok [INFO] [stdout] test models::target::tests::test_monthly_target_for_biweekly_period ... ok [INFO] [stdout] test models::target::tests::test_monthly_target_for_custom_period ... ok [INFO] [stdout] test models::target::tests::test_monthly_target_for_monthly_period ... ok [INFO] [stdout] test models::target::tests::test_monthly_target_for_weekly_period ... ok [INFO] [stdout] test models::target::tests::test_new_target ... ok [INFO] [stdout] test models::target::tests::test_reactivated_target ... ok [INFO] [stdout] test models::target::tests::test_serialization ... ok [INFO] [stdout] test models::target::tests::test_set_amount_updates_timestamp ... ok [INFO] [stdout] test models::target::tests::test_set_cadence_updates_timestamp ... ok [INFO] [stdout] test models::target::tests::test_target_display ... ok [INFO] [stdout] test models::target::tests::test_target_id_display ... ok [INFO] [stdout] test models::target::tests::test_validation ... ok [INFO] [stdout] test models::target::tests::test_weekly_cadence_serialization ... ok [INFO] [stdout] test models::target::tests::test_weekly_target_for_30_day_month ... ok [INFO] [stdout] test models::target::tests::test_weekly_target_for_31_day_month ... ok [INFO] [stdout] test models::target::tests::test_weekly_target_for_custom_period ... ok [INFO] [stdout] test models::target::tests::test_weekly_target_for_leap_year_february ... ok [INFO] [stdout] test models::target::tests::test_weekly_target_for_non_leap_year_february ... ok [INFO] [stdout] test models::target::tests::test_yearly_cadence_serialization ... ok [INFO] [stdout] test models::target::tests::test_yearly_target_for_biweekly_period ... ok [INFO] [stdout] test models::target::tests::test_yearly_target_for_custom_period ... ok [INFO] [stdout] test models::target::tests::test_yearly_target_for_monthly_period ... ok [INFO] [stdout] test models::target::tests::test_yearly_target_for_weekly_period ... ok [INFO] [stdout] test models::transaction::tests::test_category_and_splits_validation ... ok [INFO] [stdout] test models::transaction::tests::test_display ... ok [INFO] [stdout] test models::transaction::tests::test_import_id_generation ... ok [INFO] [stdout] test models::transaction::tests::test_inflow_outflow ... ok [INFO] [stdout] test models::transaction::tests::test_new_transaction ... ok [INFO] [stdout] test models::transaction::tests::test_serialization ... ok [INFO] [stdout] test models::transaction::tests::test_split_transaction ... ok [INFO] [stdout] test models::transaction::tests::test_split_validation_mismatch ... ok [INFO] [stdout] test models::transaction::tests::test_status_transitions ... ok [INFO] [stdout] test reports::account_register::tests::test_csv_export ... ok [INFO] [stdout] test reports::account_register::tests::test_generate_register_report ... ok [INFO] [stdout] test reports::account_register::tests::test_register_filter ... ok [INFO] [stdout] test reports::budget_overview::tests::test_csv_export ... ok [INFO] [stdout] test reports::budget_overview::tests::test_generate_report ... ok [INFO] [stdout] test reports::budget_overview::tests::test_terminal_format ... ok [INFO] [stdout] test reports::net_worth::tests::test_csv_export ... ok [INFO] [stdout] test crypto::encryption::tests::test_encrypt_decrypt_string ... ok [INFO] [stdout] test reports::net_worth::tests::test_generate_net_worth_report ... ok [INFO] [stdout] test reports::spending::tests::test_generate_spending_report ... ok [INFO] [stdout] test reports::spending::tests::test_top_categories ... ok [INFO] [stdout] test services::account::tests::test_archive_account ... ok [INFO] [stdout] test services::account::tests::test_balance_calculation ... ok [INFO] [stdout] test services::account::tests::test_create_account ... ok [INFO] [stdout] test services::account::tests::test_create_duplicate_name ... ok [INFO] [stdout] test services::account::tests::test_list_accounts ... ok [INFO] [stdout] test services::account::tests::test_update_account ... ok [INFO] [stdout] test services::budget::tests::test_add_to_category ... ok [INFO] [stdout] test services::budget::tests::test_apply_rollover ... ok [INFO] [stdout] test services::budget::tests::test_apply_rollover_all ... ok [INFO] [stdout] test services::budget::tests::test_assign_to_category ... ok [INFO] [stdout] test services::account::tests::test_find_account ... ok [INFO] [stdout] test services::budget::tests::test_category_activity ... ok [INFO] [stdout] test services::budget::tests::test_available_to_budget ... ok [INFO] [stdout] test services::budget::tests::test_cumulative_paid_for_bydate_progress ... ok [INFO] [stdout] test services::budget::tests::test_cumulative_budgeted_for_bydate_progress ... ok [INFO] [stdout] test services::budget::tests::test_move_between_categories ... ok [INFO] [stdout] test services::budget::tests::test_move_insufficient_funds ... ok [INFO] [stdout] test services::budget::tests::test_overspent_categories ... ok [INFO] [stdout] test services::budget::tests::test_paid_wins_over_budgeted ... ok [INFO] [stdout] test services::budget::tests::test_negative_carryover ... ok [INFO] [stdout] test services::budget::tests::test_positive_carryover ... ok [INFO] [stdout] test services::budget::tests::test_suggested_budget_fully_paid_suggests_zero ... ok [INFO] [stdout] test services::budget::tests::test_suggested_budget_accounts_for_cumulative_paid ... ok [INFO] [stdout] test services::budget::tests::test_suggested_budget_recurring_targets_unchanged ... ok [INFO] [stdout] test services::category::tests::test_create_duplicate_group ... ok [INFO] [stdout] test services::category::tests::test_create_category ... ok [INFO] [stdout] test services::category::tests::test_create_group ... ok [INFO] [stdout] test services::category::tests::test_delete_category ... ok [INFO] [stdout] test services::category::tests::test_find_category ... ok [INFO] [stdout] test services::category::tests::test_list_groups_with_categories ... ok [INFO] [stdout] test services::import::tests::test_detect_mapping ... ok [INFO] [stdout] test services::category::tests::test_move_category ... ok [INFO] [stdout] test services::import::tests::test_duplicate_detection ... ok [INFO] [stdout] test services::import::tests::test_parse_accounting_negative_format ... ok [INFO] [stdout] test services::import::tests::test_parse_separate_inflow_outflow ... ok [INFO] [stdout] test services::import::tests::test_import_result ... ok [INFO] [stdout] test services::import::tests::test_parse_simple_csv ... ok [INFO] [stdout] test services::import::tests::test_parse_various_date_formats ... ok [INFO] [stdout] test services::income::tests::test_get_expected_income ... ok [INFO] [stdout] test services::income::tests::test_negative_amount_rejected ... ok [INFO] [stdout] test services::income::tests::test_set_expected_income ... ok [INFO] [stdout] test services::income::tests::test_update_expected_income ... ok [INFO] [stdout] test services::income::tests::test_delete_expected_income ... ok [INFO] [stdout] test services::payee::tests::test_category_learning ... ok [INFO] [stdout] test services::payee::tests::test_create_payee ... ok [INFO] [stdout] test services::payee::tests::test_delete_payee ... ok [INFO] [stdout] test services::payee::tests::test_duplicate_payee ... ok [INFO] [stdout] test services::payee::tests::test_create_with_category ... ok [INFO] [stdout] test services::payee::tests::test_search_payees ... ok [INFO] [stdout] test services::payee::tests::test_rename_payee ... ok [INFO] [stdout] test services::period::tests::test_current_period ... ok [INFO] [stdout] test services::period::tests::test_format_period_friendly ... ok [INFO] [stdout] test services::period::tests::test_parse_month_name ... ok [INFO] [stdout] test services::period::tests::test_parse_relative ... ok [INFO] [stdout] test services::period::tests::test_parse_standard ... ok [INFO] [stdout] test services::period::tests::test_period_navigation ... ok [INFO] [stdout] test services::period::tests::test_recent_periods ... ok [INFO] [stdout] test services::reconciliation::tests::test_cannot_complete_without_zero_difference ... ok [INFO] [stdout] test crypto::encryption::tests::test_different_nonces ... ok [INFO] [stdout] test services::payee::tests::test_set_default_category ... ok [INFO] [stdout] test services::reconciliation::tests::test_clear_unclear_transaction ... ok [INFO] [stdout] test services::reconciliation::tests::test_complete_reconciliation ... ok [INFO] [stdout] test services::reconciliation::tests::test_complete_with_adjustment ... ok [INFO] [stdout] test services::reconciliation::tests::test_reconciliation_summary ... ok [INFO] [stdout] test services::reconciliation::tests::test_start_reconciliation ... ok [INFO] [stdout] test services::transaction::tests::test_delete_transaction ... ok [INFO] [stdout] test services::transaction::tests::test_create_transaction ... ok [INFO] [stdout] test services::transaction::tests::test_list_transactions ... ok [INFO] [stdout] test services::transaction::tests::test_split_transactions ... ok [INFO] [stdout] test services::transaction::tests::test_locked_transaction ... ok [INFO] [stdout] test services::transfer::tests::test_create_transfer ... ok [INFO] [stdout] test services::transaction::tests::test_status_transitions ... ok [INFO] [stdout] test services::transaction::tests::test_update_transaction ... ok [INFO] [stdout] test services::transfer::tests::test_get_linked_transaction ... ok [INFO] [stdout] test services::transfer::tests::test_delete_transfer ... ok [INFO] [stdout] test services::transfer::tests::test_transfer_to_same_account_fails ... ok [INFO] [stdout] test services::transfer::tests::test_update_transfer_date ... ok [INFO] [stdout] test storage::accounts::tests::test_delete ... ok [INFO] [stdout] test storage::accounts::tests::test_empty_load ... ok [INFO] [stdout] test storage::accounts::tests::test_get_active_filters_archived ... ok [INFO] [stdout] test storage::accounts::tests::test_get_by_name ... ok [INFO] [stdout] test services::transfer::tests::test_transfer_zero_amount_fails ... ok [INFO] [stdout] test storage::accounts::tests::test_name_exists ... ok [INFO] [stdout] test storage::accounts::tests::test_upsert_and_get ... ok [INFO] [stdout] test storage::budget::tests::test_delete ... ok [INFO] [stdout] test storage::budget::tests::test_delete_for_category ... ok [INFO] [stdout] test storage::budget::tests::test_empty_load ... ok [INFO] [stdout] test storage::budget::tests::test_get_for_period ... ok [INFO] [stdout] test storage::budget::tests::test_get_or_default ... ok [INFO] [stdout] test storage::accounts::tests::test_save_and_reload ... ok [INFO] [stdout] test services::transfer::tests::test_update_transfer_amount ... ok [INFO] [stdout] test storage::budget::tests::test_upsert_and_get ... ok [INFO] [stdout] test storage::categories::tests::test_category_operations ... ok [INFO] [stdout] test storage::categories::tests::test_delete_group_with_categories ... ok [INFO] [stdout] test storage::categories::tests::test_get_by_name ... ok [INFO] [stdout] test storage::budget::tests::test_save_and_reload ... ok [INFO] [stdout] test storage::categories::tests::test_group_operations ... ok [INFO] [stdout] test storage::categories::tests::test_empty_load ... ok [INFO] [stdout] test storage::file_io::tests::test_json_file_valid ... ok [INFO] [stdout] test storage::file_io::tests::test_atomic_write_no_temp_file_left ... ok [INFO] [stdout] test storage::file_io::tests::test_read_json_required ... ok [INFO] [stdout] test storage::file_io::tests::test_read_nonexistent_returns_default ... ok [INFO] [stdout] test storage::categories::tests::test_save_and_reload ... ok [INFO] [stdout] test storage::income::tests::test_delete ... ok [INFO] [stdout] test storage::income::tests::test_get_all ... ok [INFO] [stdout] test storage::file_io::tests::test_write_creates_parent_directories ... ok [INFO] [stdout] test storage::file_io::tests::test_write_and_read ... ok [INFO] [stdout] test storage::income::tests::test_save_and_load ... ok [INFO] [stdout] test storage::income::tests::test_upsert_and_get ... ok [INFO] [stdout] test storage::init::tests::test_default_categories_created ... ok [INFO] [stdout] test storage::init::tests::test_initialize_storage ... ok [INFO] [stdout] test storage::payees::tests::test_empty_load ... ok [INFO] [stdout] test storage::payees::tests::test_get_by_name ... ok [INFO] [stdout] test storage::payees::tests::test_get_or_create ... ok [INFO] [stdout] test storage::payees::tests::test_delete ... ok [INFO] [stdout] test storage::payees::tests::test_search ... ok [INFO] [stdout] test storage::payees::tests::test_save_and_reload ... ok [INFO] [stdout] test storage::payees::tests::test_upsert_and_get ... ok [INFO] [stdout] test storage::transactions::tests::test_date_range_query ... ok [INFO] [stdout] test storage::transactions::tests::test_delete ... ok [INFO] [stdout] test storage::transactions::tests::test_empty_load ... ok [INFO] [stdout] test storage::transactions::tests::test_get_by_account ... ok [INFO] [stdout] test storage::tests::test_storage_creation ... ok [INFO] [stdout] test storage::transactions::tests::test_upsert_and_get ... ok [INFO] [stdout] test tui::widgets::error_dialog::tests::test_error_info_from_not_found ... ok [INFO] [stdout] test storage::transactions::tests::test_save_and_reload ... ok [INFO] [stdout] test tui::widgets::error_dialog::tests::test_error_info_from_validation_error ... ok [INFO] [stdout] test tui::widgets::notification::tests::test_notification_creation ... ok [INFO] [stdout] test tui::widgets::notification::tests::test_notification_queue ... ok [INFO] [stdout] test tui::widgets::notification::tests::test_notification_types ... ok [INFO] [stdout] test tui::widgets::error_dialog::tests::test_simple_error_info ... ok [INFO] [stdout] test storage::init::tests::test_doesnt_overwrite_existing ... ok [INFO] [stdout] test crypto::encryption::tests::test_wrong_key_fails has been running for over 60 seconds [INFO] [stdout] test crypto::key_derivation::tests::test_key_zeroized_on_drop ... ok [INFO] [stdout] test crypto::encryption::tests::test_wrong_key_fails ... ok [INFO] [stdout] test crypto::key_derivation::tests::test_different_passphrase_different_key ... ok [INFO] [stdout] test crypto::key_derivation::tests::test_same_passphrase_same_key ... ok [INFO] [stdout] test crypto::key_derivation::tests::test_different_salt_different_key ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 348 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 75.01s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/envelope-f9ed7659f9d1c9dc) [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 envelope_cli [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test src/audit/mod.rs - audit (line 19) ... ignored [INFO] [stdout] test src/backup/mod.rs - backup (line 31) ... ignored [INFO] [stdout] test src/lib.rs - (line 21) ... ignored [INFO] [stdout] test src/models/money.rs - models::money::Money::from_cents (line 22) ... ok [INFO] [stdout] test src/models/money.rs - models::money::Money::from_dollars_cents (line 33) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.22s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c1d3b5bfb808d94606b11bac264f59333c80e3e93351fbac4c3df5b0a93b9fa4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c1d3b5bfb808d94606b11bac264f59333c80e3e93351fbac4c3df5b0a93b9fa4", kill_on_drop: false }` [INFO] [stdout] c1d3b5bfb808d94606b11bac264f59333c80e3e93351fbac4c3df5b0a93b9fa4