[INFO] cloning repository https://github.com/jgmontoya/toy-payments-engine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jgmontoya/toy-payments-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjgmontoya%2Ftoy-payments-engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjgmontoya%2Ftoy-payments-engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 67a44df90482a11d8d2a8659c3c39164704c1ba8 [INFO] testing jgmontoya/toy-payments-engine against 1.99.0-beta.1+cargoflags=--release for beta-release-1.99-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjgmontoya%2Ftoy-payments-engine" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/jgmontoya/toy-payments-engine [INFO] finished tweaking git repo https://github.com/jgmontoya/toy-payments-engine [INFO] tweaked toml for git repo https://github.com/jgmontoya/toy-payments-engine written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jgmontoya/toy-payments-engine on toolchain 1.99.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jgmontoya/toy-payments-engine 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.99.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a [INFO] running `Command { std: "docker" "start" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.229 [INFO] [stderr] Compiling thiserror v2.0.20 [INFO] [stderr] Compiling memchr v2.8.3 [INFO] [stderr] Compiling syn v3.0.3 [INFO] [stderr] Compiling csv-core v0.1.13 [INFO] [stderr] Compiling thiserror-impl v2.0.20 [INFO] [stderr] Compiling serde_derive v1.0.229 [INFO] [stderr] Compiling csv v1.4.0 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling toy-payments-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 13.63s [INFO] running `Command { std: "docker" "inspect" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling toy-payments-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 3.15s [INFO] running `Command { std: "docker" "inspect" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.05s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/toy_payments_engine-b520888a48247cf7) [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test account::tests::apply_transaction_adds_deposit_balance ... ok [INFO] [stdout] test account::tests::apply_transaction_deposit_overflow_errors ... ok [INFO] [stdout] test account::tests::apply_transaction_idempotently_holds_disputed_balance ... ok [INFO] [stdout] test account::tests::apply_transaction_rejects_non_matching_client ... ok [INFO] [stdout] test account::tests::apply_transaction_resolve_idempotently_frees_disputed_balance ... ok [INFO] [stdout] test account::tests::apply_transaction_subtracts_withdrawal_balance ... ok [INFO] [stdout] test account::tests::displays_properly ... ok [INFO] [stdout] test account::tests::rejected_total_overflow_preserves_the_complete_account_state ... ok [INFO] [stdout] test amount::tests::checked_add ... ok [INFO] [stdout] test amount::tests::deserializes_from_str ... ok [INFO] [stdout] test amount::tests::checked_sub ... ok [INFO] [stdout] test amount::tests::is_negative ... ok [INFO] [stdout] test amount::tests::displays_properly ... ok [INFO] [stdout] test amount::tests::is_positive ... ok [INFO] [stdout] test amount::tests::parse_rejects_empty_string ... ok [INFO] [stdout] test amount::tests::parse_rejects_higher_precision ... ok [INFO] [stdout] test amount::tests::parse_rejects_non_number_strings ... ok [INFO] [stdout] test amount::tests::parses_float ... ok [INFO] [stdout] test amount::tests::parse_rejects_overflowing_numbers ... ok [INFO] [stdout] test amount::tests::parses_integer ... ok [INFO] [stdout] test amount::tests::zero ... ok [INFO] [stdout] test engine::tests::output_writes_processed_accounts_to_writer ... ok [INFO] [stdout] test engine::tests::test_process_updates_accounts ... ok [INFO] [stdout] test account::tests::apply_transaction_chargeback_idempotently_subtracts_held_balance ... ok [INFO] [stdout] test csv_io::tests::streams_transactions_from_reader ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/release/deps/toy_payments_engine-b3e1f19e95a14d73) [INFO] [stderr] Running tests/cli.rs (/opt/rustwide/target/release/deps/cli-59a6de6f208d7e5a) [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 6 tests [INFO] [stdout] test valid_input_exits_successfully ... ok [INFO] [stdout] test unparsable_amount_exits_with_failure_without_changing_account_output ... ok [INFO] [stdout] test rejected_transaction_exits_with_failure_without_changing_account_output ... ok [INFO] [stdout] test nonexistent_input_file_exits_with_failure ... ok [INFO] [stdout] test too_many_arguments_exit_with_failure ... ok [INFO] [stdout] test no_input_argument_exits_with_failure ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/integration.rs (/opt/rustwide/target/release/deps/integration-5683f6668eb3a5ac) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stderr] Doc-tests toy_payments_engine [INFO] [stdout] test run_accumulates_interleaved_deposits_and_withdrawals_per_account ... ok [INFO] [stdout] test run_continues_after_a_rejected_transaction ... ok [INFO] [stdout] test run_continues_after_an_unparsable_amount ... ok [INFO] [stdout] test run_ignores_chargeback_without_prior_dispute ... ok [INFO] [stdout] test run_ignores_dispute_referencing_another_clients_transaction ... ok [INFO] [stdout] test run_ignores_dispute_referencing_unknown_transaction ... ok [INFO] [stdout] test run_ignores_every_transaction_type_after_account_is_locked ... ok [INFO] [stdout] test run_keeps_divergent_dispute_lifecycles_isolated_per_account ... ok [INFO] [stdout] test run_rejects_a_dispute_with_an_amount ... ok [INFO] [stdout] test run_processes_transactions_and_writes_accounts ... ok [INFO] [stdout] test run_rejects_a_transaction_that_would_overflow_the_account_total ... ok [INFO] [stdout] test run_reports_flush_failure_after_a_rejected_transaction ... ok [INFO] [stdout] test run_reports_writer_failure_after_a_rejected_transaction ... ok [INFO] [stdout] test run_reports_reader_failure_as_load_error ... ok [INFO] [stdout] test run_ignores_withdrawal_beyond_available_balance ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [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" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a", kill_on_drop: false }` [INFO] [stdout] f99a1c616dac6f35ae9d3692d84cfa92fac0bf1a9cfddd1fce97507024b3923a