[INFO] fetching crate dotfiles-manager 1.2.0...
[INFO] testing dotfiles-manager-1.2.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate dotfiles-manager 1.2.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate dotfiles-manager 1.2.0
[INFO] finished tweaking crates.io crate dotfiles-manager 1.2.0
[INFO] tweaked toml for crates.io crate dotfiles-manager 1.2.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate dotfiles-manager 1.2.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate dotfiles-manager 1.2.0 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:91:12
[INFO] [stderr]    |
[INFO] [stderr] 91 | homepage = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 | repository = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |              -----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dotfiles-manager` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b
[INFO] running `Command { std: "docker" "start" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", 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" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", 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" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:91:12
[INFO] [stderr]    |
[INFO] [stderr] 91 | homepage = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 | repository = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |              -----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dotfiles-manager` (manifest) generated 1 warning
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling hybrid-array v0.4.14
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling event-listener v5.4.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling futures-sink v0.3.33
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling futures-channel v0.3.33
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling rust-embed-utils v8.12.0
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling zeroize_derive v1.5.0
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling block-padding v0.3.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling unic-langid-impl v0.9.6
[INFO] [stderr]    Compiling futures-macro v0.3.33
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling unic-langid v0.9.6
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling futures-util v0.3.33
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling zvariant_utils v4.0.0
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling zcheapstr v1.1.0
[INFO] [stderr]    Compiling basic-toml v0.1.10
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling zvariant_derive v5.14.0
[INFO] [stderr]    Compiling sec1 v0.7.3
[INFO] [stderr]    Compiling crypto-bigint v0.5.5
[INFO] [stderr]    Compiling rust-embed-impl v8.12.0
[INFO] [stderr]    Compiling find-crate v0.6.3
[INFO] [stderr]    Compiling i18n-config v0.4.8
[INFO] [stderr]    Compiling zvariant v5.14.0
[INFO] [stderr]    Compiling intl-memoizer v0.5.3
[INFO] [stderr]    Compiling intl_pluralrules v7.0.2
[INFO] [stderr]    Compiling fluent-langneg v0.13.1
[INFO] [stderr]    Compiling fluent-syntax v0.12.0
[INFO] [stderr]    Compiling elliptic-curve v0.13.8
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling fluent-bundle v0.16.0
[INFO] [stderr]    Compiling primeorder v0.13.6
[INFO] [stderr]    Compiling futures-executor v0.3.33
[INFO] [stderr]    Compiling i18n-embed-impl v0.8.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-signal v0.2.14
[INFO] [stderr]    Compiling zbus_names v4.3.4
[INFO] [stderr]    Compiling piper v0.2.5
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling num-bigint v0.4.8
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling socket2 v0.6.5
[INFO] [stderr]    Compiling mio v1.2.2
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling clap_builder v4.6.6
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling clap_derive v4.6.4
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zbus_macros v5.19.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling futures v0.3.33
[INFO] [stderr]    Compiling p256 v0.13.2
[INFO] [stderr]    Compiling fluent v0.17.0
[INFO] [stderr]    Compiling rust-embed v8.12.0
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling async-executor v1.14.0
[INFO] [stderr]    Compiling num-iter v0.1.46
[INFO] [stderr]    Compiling uuid v1.24.0
[INFO] [stderr]    Compiling async-broadcast v0.7.2
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling ordered-stream v0.2.0
[INFO] [stderr]    Compiling proc-macro-error-attr3 v3.1.0
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling proc-macro-error3 v3.1.0
[INFO] [stderr]    Compiling sha3 v0.10.9
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling i18n-embed v0.16.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling hpke v0.12.0
[INFO] [stderr]    Compiling zbus v5.19.0
[INFO] [stderr]    Compiling rand v0.8.7
[INFO] [stderr]    Compiling cookie-factory v0.3.3
[INFO] [stderr]    Compiling clap v4.6.6
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling salsa20 v0.10.2
[INFO] [stderr]    Compiling pbkdf2 v0.12.2
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling kem v0.3.0-pre.0
[INFO] [stderr]    Compiling secrecy v0.10.3
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling indenter v0.3.4
[INFO] [stderr]    Compiling rustc-demangle v0.1.28
[INFO] [stderr]    Compiling age-core v0.12.0
[INFO] [stderr]    Compiling pin-project v1.1.13
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling i18n-embed-fl v0.10.1
[INFO] [stderr]    Compiling ml-kem v0.2.3
[INFO] [stderr]    Compiling scrypt v0.11.0
[INFO] [stderr]    Compiling x25519-dalek v2.0.1
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling keyring-core v1.0.0
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling rtoolbox v0.0.5
[INFO] [stderr]    Compiling roff v1.1.1
[INFO] [stderr]    Compiling clap_mangen v0.3.2
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling age v0.12.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling rpassword v7.5.4
[INFO] [stderr]    Compiling tar v0.4.46
[INFO] [stderr]    Compiling secret-service v5.1.0
[INFO] [stderr]    Compiling color-eyre v0.6.5
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling clap_complete v4.6.9
[INFO] [stderr]    Compiling zbus-secret-service-keyring-store v1.0.0
[INFO] [stderr]    Compiling colored v3.1.1
[INFO] [stderr]    Compiling dotfiles-manager v1.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 6m 21s
[INFO] running `Command { std: "docker" "inspect" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", 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" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:91:12
[INFO] [stderr]    |
[INFO] [stderr] 91 | homepage = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 | repository = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |              -----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dotfiles-manager` (manifest) generated 1 warning
[INFO] [stderr]    Compiling dotfiles-manager v1.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 29.80s
[INFO] running `Command { std: "docker" "inspect" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", 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" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:91:12
[INFO] [stderr]    |
[INFO] [stderr] 91 | homepage = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 | repository = "https://github.com/alexandretrotel/dotfiles-manager"
[INFO] [stderr]    |              -----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dotfiles-manager` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.27s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/dotfiles-manager/285bf51164187360/out/dotfiles_manager-285bf51164187360)
[INFO] [stdout] 
[INFO] [stdout] running 279 tests
[INFO] [stdout] test backup::config::tests::missing_original_path_is_skipped_not_fatal ... ok
[INFO] [stdout] test backup::config::tests::backs_up_a_plain_file_entry ... ok
[INFO] [stdout] test backup::config::tests::backs_up_a_directory_entry_with_nested_files ... ok
[INFO] [stdout] test backup::encrypted::tests::missing_original_path_is_skipped_and_no_bundle_written ... ok
[INFO] [stdout] test backup::package::tests::missing_package_manager_command_is_skipped_not_fatal ... ok
[INFO] [stdout] test backup::package::tests::platform_incompatible_entries_are_excluded_from_report ... ok
[INFO] [stdout] test backup::package::tests::writes_exported_package_list_to_output_file ... ok
[INFO] [stdout] test context::tests::active_profile_path_is_under_root ... ok
[INFO] [stdout] test context::tests::backup_dir_is_under_root ... ok
[INFO] [stdout] test context::tests::common_dir_is_under_backup_dir ... ok
[INFO] [stdout] test context::tests::config_registry_path_is_under_root ... ok
[INFO] [stdout] test context::tests::encrypted_common_dir_is_under_common_dir ... ok
[INFO] [stdout] test context::tests::encrypted_profile_dir_is_under_profile_dir ... ok
[INFO] [stdout] test context::tests::encrypted_registry_path_is_under_root ... ok
[INFO] [stdout] test context::tests::new_honors_dfm_root_env_var_and_falls_back_to_home_when_unset ... ok
[INFO] [stdout] test context::tests::package_registry_path_is_under_root ... ok
[INFO] [stdout] test context::tests::packages_dir_is_under_backup_dir ... ok
[INFO] [stdout] test context::tests::profile_dir_is_under_profiles_dir ... ok
[INFO] [stdout] test context::tests::profiles_config_path_is_under_root ... ok
[INFO] [stdout] test context::tests::profiles_root_dir_is_under_backup_dir ... ok
[INFO] [stdout] test context::tests::with_root_stores_the_given_root ... ok
[INFO] [stdout] test doctor::fix::tests::failed_is_true_only_for_err_outcome ... ok
[INFO] [stdout] test doctor::fix::tests::fix_reports_err_for_invalid_json ... ok
[INFO] [stdout] test doctor::fix::tests::fix_reports_ok_false_for_every_file_when_none_exist ... ok
[INFO] [stdout] test backup::tests::run_backs_up_configs_and_packages_without_encryption ... ok
[INFO] [stdout] test doctor::fix::tests::fix_rewrites_unsorted_registry_as_sorted_pretty_json ... ok
[INFO] [stdout] test doctor::fix::tests::fix_rewrites_unsorted_profile_config_as_sorted_pretty_json ... ok
[INFO] [stdout] test doctor::report::tests::add_result_stores_findings_in_run_order ... ok
[INFO] [stdout] test doctor::report::tests::default_report_has_no_results_and_zero_counts ... ok
[INFO] [stdout] test doctor::report::tests::doctor_report_serializes_to_json ... ok
[INFO] [stdout] test doctor::report::tests::error_constructor_sets_error_severity_and_no_fix ... ok
[INFO] [stdout] test doctor::report::tests::error_count_counts_only_error_severity_across_validators ... ok
[INFO] [stdout] test doctor::report::tests::severity_serializes_as_lowercase_string ... ok
[INFO] [stdout] test doctor::report::tests::info_constructor_sets_info_severity ... ok
[INFO] [stdout] test doctor::report::tests::warning_constructor_sets_warning_severity ... ok
[INFO] [stdout] test doctor::report::tests::with_fix_attaches_suggestion ... ok
[INFO] [stdout] test doctor::report::tests::warning_count_counts_only_warning_severity_across_validators ... ok
[INFO] [stdout] test doctor::tests::validate_surfaces_errors_from_an_unparsable_registry_file ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::dir_entry_file_missing_from_backup_produces_warning ... ok
[INFO] [stdout] test doctor::tests::validate_runs_every_validator_and_returns_one_result_each ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::dir_entry_file_missing_on_disk_produces_warning ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::dir_entry_in_sync_produces_no_warnings ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::disabled_entry_is_checked_when_include_disabled_is_true ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::disabled_entry_is_skipped_by_default ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::dir_entry_modified_file_produces_warning ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_bundle_generic_decrypt_failure_reports_generic_warning ... ok
[INFO] [stdout] test backup::tests::run_backs_up_encrypted_configs_when_password_given ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_bundle_unreadable_tar_reports_could_not_read_warning ... ok
[INFO] [stdout] test backup::encrypted::tests::rerunning_with_unchanged_content_does_not_rewrite_the_bundle ... ok
[INFO] [stdout] test backup::encrypted::tests::removing_the_last_entry_deletes_the_hash_sidecar_too ... ok
[INFO] [stdout] test backup::encrypted::tests::backs_up_a_file_entry_into_encrypted_bundle ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_dir_entry_file_missing_on_disk_produces_warning ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_dir_entry_file_missing_from_bundle_produces_warning ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_dir_entry_in_sync_produces_no_warnings ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::invalid_config_registry_json_reports_error_and_returns_early ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::invalid_encrypted_registry_json_reports_error_when_password_given ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::missing_original_path_is_skipped ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::missing_resolved_backup_path_is_skipped ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_bundle_wrong_password_reports_typed_incorrect_password_warning ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::name_is_backup_consistency_check ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::no_encrypted_bundle_found_reports_warning_when_candidates_exist ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::no_password_skips_encrypted_check_entirely ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::no_encrypted_candidates_returns_no_warnings ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::plain_file_differs_produces_warning ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::plain_file_in_sync_produces_no_warnings ... ok
[INFO] [stdout] test doctor::validators::registry_files::tests::duplicate_backup_path_produces_warning ... ok
[INFO] [stdout] test doctor::validators::registry_files::tests::missing_registry_files_produce_info_findings ... ok
[INFO] [stdout] test doctor::validators::registry_files::tests::invalid_config_json_produces_error_finding ... ok
[INFO] [stdout] test doctor::validators::registry_files::tests::package_entry_with_unavailable_command_produces_info_finding ... ok
[INFO] [stdout] test doctor::validators::registry_files::tests::name_is_registry_files ... ok
[INFO] [stdout] test doctor::validators::registry_files::tests::valid_config_registry_with_unique_backup_paths_produces_no_errors ... ok
[INFO] [stdout] test doctor::validators::tests::new_builds_suite_with_two_validators ... ok
[INFO] [stdout] test doctor::validators::tests::run_all_produces_one_result_per_validator_in_order ... ok
[INFO] [stdout] test edit::tests::open_errors_on_empty_editor_string ... ok
[INFO] [stdout] test edit::tests::open_creates_parent_directory_before_launching_editor ... ok
[INFO] [stdout] test edit::tests::open_errors_when_editor_binary_does_not_exist ... ok
[INFO] [stdout] test edit::tests::open_splits_custom_command_into_program_and_args ... ok
[INFO] [stdout] test edit::tests::open_errors_when_editor_exits_non_zero ... ok
[INFO] [stdout] test edit::tests::registry_target_paths_match_context_paths ... ok
[INFO] [stdout] test encryption::bundle::tests::enumerate_tar_files_skips_symlinks ... ok
[INFO] [stdout] test encryption::bundle::tests::create_temp_file_creates_an_existing_file ... ok
[INFO] [stdout] test encryption::bundle::tests::enumerate_tar_files_walks_nested_dirs_sorted_and_normalized ... ok
[INFO] [stdout] test encryption::bundle::tests::normalize_tar_path_converts_backslashes_to_forward_slashes ... ok
[INFO] [stdout] test encryption::bundle::tests::normalize_tar_path_strips_leading_dot_slash ... ok
[INFO] [stdout] test encryption::bundle::tests::load_tar_files_skips_directory_entries ... ok
[INFO] [stdout] test encryption::bundle::tests::write_tar_archive_errors_when_original_file_missing ... ok
[INFO] [stdout] test encryption::bundle::tests::write_tar_archive_round_trips_through_load_tar_files ... ok
[INFO] [stdout] test encryption::bundle::tests::set_private_file_permissions_succeeds_on_regular_file ... ok
[INFO] [stdout] test backup::encrypted::tests::rerunning_with_changed_content_rewrites_the_bundle ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_dir_entry_modified_file_produces_warning ... FAILED
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_single_file_in_sync_produces_no_warnings ... ok
[INFO] [stdout] test error::tests::context_error_displays_its_message_not_the_source ... ok
[INFO] [stdout] test error::tests::decrypt_error_decryption_failed_maps_to_incorrect_password ... ok
[INFO] [stdout] test error::tests::empty_password_has_fixed_message ... ok
[INFO] [stdout] test error::tests::encrypt_error_converts_to_encryption_variant ... ok
[INFO] [stdout] test error::tests::invalid_repo_spec_displays_the_offending_spec ... ok
[INFO] [stdout] test error::tests::is_password_error_false_for_unrelated_error ... ok
[INFO] [stdout] test error::tests::is_password_error_false_for_wrapped_io_error ... ok
[INFO] [stdout] test error::tests::is_password_error_true_for_incorrect_password ... ok
[INFO] [stdout] test error::tests::is_password_error_true_when_wrapped_once_in_context ... ok
[INFO] [stdout] test error::tests::is_password_error_true_when_wrapped_twice_in_context ... ok
[INFO] [stdout] test error::tests::other_decrypt_errors_map_to_encryption_variant ... ok
[INFO] [stdout] test error::tests::profile_not_found_displays_profile_name ... ok
[INFO] [stdout] test error::tests::wrap_err_attaches_message_and_preserves_source ... ok
[INFO] [stdout] test error::tests::wrap_err_passes_through_ok_values_unchanged ... ok
[INFO] [stdout] test error::tests::wrap_err_with_computes_message_lazily ... ok
[INFO] [stdout] test git::tests::ensure_git_repo_fails_when_no_git_dir_exists ... ok
[INFO] [stdout] test git::tests::ensure_git_repo_is_a_noop_when_called_twice ... ok
[INFO] [stdout] test git::tests::ensure_git_repo_succeeds_and_writes_gitignore_when_already_initialized ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_single_file_missing_from_bundle_produces_warning ... ok
[INFO] [stdout] test git::tests::init_repo_if_missing_creates_a_new_repo ... ok
[INFO] [stdout] test git::tests::init_repo_if_missing_does_not_recreate_an_existing_gitignore ... ok
[INFO] [stdout] On branch master
[INFO] [stdout] 
[INFO] [stdout] No commits yet
[INFO] [stdout] 
[INFO] [stdout] Untracked files:
[INFO] [stdout]   (use "git add <file>..." to include in what will be committed)
[INFO] [stdout] 	.gitignore
[INFO] [stdout] 
[INFO] [stdout] nothing added to commit but untracked files present (use "git add" to track)
[INFO] [stdout] test git::tests::init_repo_if_missing_reports_not_initialized_when_repo_already_exists ... ok
[INFO] [stdout] test git::tests::passthrough_runs_git_status_in_repo ... ok
[INFO] [stdout] test git::tests::run_cmd_passthrough_errors_when_dir_does_not_exist ... ok
[INFO] [stdout] git version 2.53.0
[INFO] [stdout] test git::tests::run_cmd_passthrough_succeeds_for_a_valid_command ... ok
[INFO] [stdout] test link::tests::https_url_passes_through_unchanged ... ok
[INFO] [stdout] test link::tests::invalid_spec_is_rejected ... ok
[INFO] [stderr] git: 'this-is-not-a-git-subcommand' is not a git command. See 'git --help'.warning: You appear to have cloned an empty repository.
[INFO] [stderr] 
[INFO] [stdout] test git::tests::run_cmd_passthrough_errors_on_invalid_git_subcommand ... ok
[INFO] [stderr] warning: You appear to have cloned an empty repository.
[INFO] [stdout] test encryption::tests::encrypt_creates_missing_parent_directories ... ok
[INFO] [stdout] test link::tests::shorthand_resolves_to_https_github_url ... ok
[INFO] [stdout] test link::tests::shorthand_strips_existing_git_suffix ... ok
[INFO] [stdout] test link::tests::ssh_url_passes_through_unchanged ... ok
[INFO] [stdout] test profiles::actions::tests::create_profile_allows_hyphens_and_underscores ... ok
[INFO] [stdout] test profiles::actions::tests::create_profile_backfills_empty_stored_version ... ok
[INFO] [stdout] test profiles::actions::tests::create_profile_errors_when_directory_path_is_blocked_by_a_file ... ok
[INFO] [stdout] test profiles::actions::tests::create_profile_registers_config_entry_and_directory ... ok
[INFO] [stdout] test profiles::actions::tests::create_profile_rejects_duplicate_name ... ok
[INFO] [stdout] test profiles::actions::tests::create_profile_rejects_empty_name ... ok
[INFO] [stderr] Cloning into '/tmp/.tmpl31syv/dfm-root'...
[INFO] [stdout] test profiles::actions::tests::create_profile_rejects_invalid_characters ... ok
[INFO] [stdout] test profiles::actions::tests::delete_profile_active_profile_errors ... ok
[INFO] [stdout] test profiles::actions::tests::delete_profile_missing_profile_errors ... ok
[INFO] [stdout] test profiles::actions::tests::delete_profile_removes_config_entry_but_keeps_directory ... ok
[INFO] [stdout] test profiles::actions::tests::switch_profile_already_active_returns_already_active ... ok
[INFO] [stdout] test profiles::actions::tests::switch_profile_common_name_clears_active_profile ... ok
[INFO] [stdout] test profiles::actions::tests::switch_profile_missing_profile_errors ... ok
[INFO] [stdout] test profiles::actions::tests::switch_profile_none_name_clears_active_profile ... ok
[INFO] [stdout] test profiles::actions::tests::switch_profile_switches_to_existing_profile ... ok
[INFO] [stdout] test profiles::active::tests::backup_path_uses_common_dir_when_unnamed ... ok
[INFO] [stdout] test profiles::active::tests::backup_path_uses_profile_dir_when_named ... ok
[INFO] [stdout] test profiles::active::tests::clear_active_profile_is_noop_when_file_missing ... ok
[INFO] [stdout] test profiles::active::tests::common_only_has_no_name ... ok
[INFO] [stdout] test profiles::active::tests::display_shows_common_when_no_profile ... ok
[INFO] [stdout] test link::tests::run_errors_when_root_already_exists_and_is_not_empty ... ok
[INFO] [stdout] test profiles::active::tests::display_shows_profile_name ... ok
[INFO] [stdout] test profiles::active::tests::encrypted_backup_path_uses_encrypted_profile_dir_when_named ... ok
[INFO] [stdout] test profiles::active::tests::encrypted_backup_path_uses_encrypted_common_dir_when_unnamed ... ok
[INFO] [stdout] test profiles::active::tests::get_active_profile_name_ignores_blank_env_var ... ok
[INFO] [stdout] test profiles::active::tests::get_active_profile_name_ignores_blank_file_content ... ok
[INFO] [stdout] test profiles::active::tests::resolve_falls_back_to_active_profile_file ... ok
[INFO] [stdout] test profiles::active::tests::resolve_prefers_env_var_over_active_profile_file ... ok
[INFO] [stdout] test profiles::active::tests::resolve_falls_back_to_common_when_nothing_set ... ok
[INFO] [stdout] test profiles::active::tests::set_get_clear_active_profile_round_trip ... ok
[INFO] [stdout] test profiles::active::tests::with_profile_sets_name ... ok
[INFO] [stdout] test profiles::backup::tests::backup_layer_display ... ok
[INFO] [stdout] test profiles::backup::tests::get_candidate_backup_paths_common_only_when_unnamed ... ok
[INFO] [stdout] test profiles::backup::tests::get_candidate_backup_paths_includes_profile_then_common_when_named ... ok
[INFO] [stdout] test profiles::backup::tests::is_valid_backup_path_accepts_relative_path ... ok
[INFO] [stdout] test profiles::backup::tests::is_valid_backup_path_rejects_absolute ... ok
[INFO] [stdout] test profiles::backup::tests::is_valid_backup_path_rejects_empty ... ok
[INFO] [stdout] test profiles::backup::tests::is_valid_backup_path_rejects_parent_dir_component ... ok
[INFO] [stdout] test profiles::backup::tests::resolve_backup_path_falls_back_to_common_when_profile_missing ... ok
[INFO] [stdout] test profiles::backup::tests::resolve_backup_path_prefers_profile_layer_over_common ... ok
[INFO] [stdout] test profiles::active::tests::resolve_prefers_override_over_active_file ... ok
[INFO] [stdout] test profiles::backup::tests::resolve_backup_path_rejects_invalid_backup_path ... ok
[INFO] [stdout] test profiles::backup::tests::resolve_backup_path_returns_none_when_missing_everywhere ... ok
[INFO] [stdout] test profiles::config::tests::create_profile_inserts_definition ... ok
[INFO] [stdout] test profiles::backup::tests::resolve_encrypted_bundle_finds_bundle_in_profile_layer ... ok
[INFO] [stdout] test profiles::config::tests::default_config_is_empty_and_versioned ... ok
[INFO] [stdout] test profiles::config::tests::create_profile_overwrites_existing ... ok
[INFO] [stdout] test profiles::config::tests::delete_profile_missing_returns_false ... ok
[INFO] [stdout] test profiles::config::tests::delete_profile_removes_existing_returns_true ... ok
[INFO] [stdout] test profiles::config::tests::load_missing_file_returns_err ... ok
[INFO] [stdout] test profiles::config::tests::load_or_default_returns_default_when_missing ... ok
[INFO] [stdout] test profiles::config::tests::profile_exists_true_for_known_and_false_for_unknown ... ok
[INFO] [stdout] test profiles::config::tests::list_profiles_is_sorted_alphabetically ... ok
[INFO] [stdout] test profiles::config::tests::save_default_if_missing_creates_file_when_absent ... ok
[INFO] [stdout] test profiles::config::tests::save_default_if_missing_leaves_existing_file_untouched ... ok
[INFO] [stdout] test link::tests::run_clones_a_repo_into_the_dfm_root ... ok
[INFO] [stdout] test profiles::config::tests::save_writes_profiles_sorted_by_name_as_pretty_json ... ok
[INFO] [stdout] test profiles::prune::tests::find_orphaned_profiles_finds_directories_with_no_matching_profile ... ok
[INFO] [stdout] test profiles::config::tests::save_load_round_trip ... ok
[INFO] [stdout] test profiles::prune::tests::find_orphaned_profiles_returns_empty_when_root_missing ... ok
[INFO] [stdout] test profiles::prune::tests::find_orphaned_profiles_sorted_by_name ... ok
[INFO] [stdout] test profiles::prune::tests::find_orphaned_profiles_ignores_known_profiles ... ok
[INFO] [stdout] test profiles::prune::tests::find_orphaned_profiles_ignores_stray_files ... ok
[INFO] [stdout] test profiles::prune::tests::prune_orphaned_profiles_deletes_directories_and_reports_them ... ok
[INFO] [stdout] test profiles::prune::tests::prune_orphaned_profiles_is_noop_when_none_found ... ok
[INFO] [stdout] test registry::config::tests::default_has_exactly_two_entries ... ok
[INFO] [stdout] test registry::config::tests::default_has_expected_version ... ok
[INFO] [stdout] test registry::config::tests::default_includes_bashrc_entry ... ok
[INFO] [stdout] test registry::config::tests::default_includes_zshrc_entry ... ok
[INFO] [stdout] test registry::encrypted::tests::default_has_expected_version ... ok
[INFO] [stdout] test registry::encrypted::tests::default_includes_ssh_config_entry ... ok
[INFO] [stdout] test registry::package::tests::default_has_expected_version ... ok
[INFO] [stdout] test registry::package::tests::default_has_four_entries ... ok
[INFO] [stdout] test registry::package::tests::default_includes_brew_entry_scoped_to_macos_and_linux ... ok
[INFO] [stdout] test registry::package::tests::default_includes_npm_entry_with_no_platform_restriction ... ok
[INFO] [stdout] test registry::package::tests::platform_compatible_entries_always_includes_platform_agnostic_entries ... ok
[INFO] [stdout] test profiles::prune::tests::prune_orphaned_profiles_removes_nested_encrypted_contents ... ok
[INFO] [stdout] test registry::package::tests::platform_compatible_entries_excludes_disabled_entries ... ok
[INFO] [stdout] test registry::package::tests::platform_compatible_entries_includes_matching_platform ... ok
[INFO] [stdout] test registry::tests::get_enabled_entries_filters_disabled ... ok
[INFO] [stdout] test registry::encrypted::tests::default_has_exactly_one_entry ... ok
[INFO] [stdout] test registry::tests::load_or_create_parses_existing_file ... ok
[INFO] [stdout] test registry::package::tests::platform_compatible_entries_excludes_non_matching_platform ... ok
[INFO] [stdout] test registry::tests::load_or_create_creates_default_when_file_missing ... ok
[INFO] [stdout] test report::tests::done_outcome_has_no_note_and_is_done ... ok
[INFO] [stdout] test report::tests::empty_section_report_is_empty ... ok
[INFO] [stdout] test report::tests::done_with_note_outcome_carries_the_note ... ok
[INFO] [stdout] test report::tests::section_report_with_only_warnings_is_not_empty ... ok
[INFO] [stdout] test report::tests::section_report_with_outcomes_is_not_empty ... ok
[INFO] [stdout] test report::tests::skipped_outcome_is_not_done_and_carries_reason ... ok
[INFO] [stdout] test report::tests::succeeded_and_skipped_counts_reflect_outcome_mix ... ok
[INFO] [stdout] test restore::config::tests::missing_backup_file_returns_readable_error ... ok
[INFO] [stdout] test restore::config::tests::restores_a_single_file_creating_missing_parent_dirs ... ok
[INFO] [stdout] test registry::tests::save_writes_pretty_printed_json_sorted_by_id ... ok
[INFO] [stdout] test restore::config::tests::restores_a_directory_mirroring_nested_contents ... ok
[INFO] [stdout] test restore::config::tests::restoring_a_directory_prunes_stale_original_entries ... ok
[INFO] [stdout] test restore::encrypted::tests::empty_registry_returns_empty_report_without_looking_for_bundle ... ok
[INFO] [stdout] test restore::encrypted::tests::corrupt_bundle_that_fails_to_decrypt_produces_warning_not_hard_error ... ok
[INFO] [stdout] test restore::encrypted::tests::no_bundle_backup_found_produces_warning_not_error ... ok
[INFO] [stdout] test restore::encrypted::tests::restore_dir_errors_when_prefix_not_in_bundle ... ok
[INFO] [stdout] test restore::encrypted::tests::restore_dir_reports_note_when_a_member_path_collides_with_a_file ... ok
[INFO] [stdout] test restore::encrypted::tests::restore_dir_reports_note_when_write_original_is_a_directory ... ok
[INFO] [stdout] test restore::encrypted::tests::restore_dir_writes_nested_files_from_matching_prefix ... ok
[INFO] [stdout] test restore::encrypted::tests::restore_file_creates_missing_parent_directories ... ok
[INFO] [stdout] test restore::encrypted::tests::restore_from_bundle_members_surfaces_a_partial_failure_as_done_with_note ... ok
[INFO] [stdout] test doctor::validators::backup_consistency::tests::encrypted_single_file_differs_produces_warning ... ok
[INFO] [stdout] test encryption::tests::encrypt_then_decrypt_round_trips_content ... ok
[INFO] [stdout] test restore::tests::restore_run_restores_a_config_from_the_common_layer ... ok
[INFO] [stdout] test restore::tests::restore_run_skips_entries_with_no_backup_in_any_layer ... ok
[INFO] [stdout] test sync::tests::commit_message_falls_back_to_timestamp_when_blank ... ok
[INFO] [stdout] test sync::tests::commit_message_falls_back_to_timestamp_when_none ... ok
[INFO] [stdout] test sync::tests::commit_message_trims_surrounding_whitespace ... ok
[INFO] [stdout] test sync::tests::commit_message_uses_given_message_when_present ... ok
[INFO] [stderr] error: unknown option `cached'
[INFO] [stderr] usage: git diff --no-index [<options>] <path> <path> [<pathspec>...]
[INFO] [stderr] 
[INFO] [stderr] Diff output format options
[INFO] [stderr]     -p, --patch           generate patch
[INFO] [stderr]     -s, --no-patch        suppress diff output
[INFO] [stderr]     -u                    generate patch
[INFO] [stderr]     -U, --unified[=<n>]   generate diffs with <n> lines context
[INFO] [stderr]     -W, --[no-]function-context
[INFO] [stderr]                           generate diffs with <n> lines context
[INFO] [stderr]     --raw                 generate the diff in raw format
[INFO] [stderr]     --patch-with-raw      synonym for '-p --raw'
[INFO] [stderr]     --patch-with-stat     synonym for '-p --stat'
[INFO] [stderr]     --numstat             machine friendly --stat
[INFO] [stderr]     --shortstat           output only the last line of --stat
[INFO] [stderr]     -X, --dirstat[=<param1>,<param2>...]
[INFO] [stderr]                           output the distribution of relative amount of changes for each sub-directory
[INFO] [stderr]     --cumulative          synonym for --dirstat=cumulative
[INFO] [stderr]     --dirstat-by-file[=<param1>,<param2>...]
[INFO] [stderr]                           synonym for --dirstat=files,<param1>,<param2>...
[INFO] [stderr]     --check               warn if changes introduce conflict markers or whitespace errors
[INFO] [stderr]     --summary             condensed summary such as creations, renames and mode changes
[INFO] [stderr]     --name-only           show only names of changed files
[INFO] [stderr]     --name-status         show only names and status of changed files
[INFO] [stderr]     --stat[=<width>[,<name-width>[,<count>]]]
[INFO] [stderr]                           generate diffstat
[INFO] [stderr]     --stat-width <width>  generate diffstat with a given width
[INFO] [stderr]     --stat-name-width <width>
[INFO] [stderr]                           generate diffstat with a given name width
[INFO] [stderr]     --stat-graph-width <width>
[INFO] [stderr]                           generate diffstat with a given graph width
[INFO] [stderr]     --stat-count <count>  generate diffstat with limited lines
[INFO] [stderr]     --[no-]compact-summary
[INFO] [stderr]                           generate compact summary in diffstat
[INFO] [stderr]     --binary              output a binary diff that can be applied
[INFO] [stderr]     --[no-]full-index     show full pre- and post-image object names on the "index" lines
[INFO] [stderr]     --[no-]color[=<when>] show colored diff
[INFO] [stderr]     --ws-error-highlight <kind>
[INFO] [stderr]                           highlight whitespace errors in the 'context', 'old' or 'new' lines in the diff
[INFO] [stderr]     -z                    do not munge pathnames and use NULs as output field terminators in --raw or --numstat
[INFO] [stderr]     --[no-]abbrev[=<n>]   use <n> digits to display object names
[INFO] [stderr]     --src-prefix <prefix> show the given source prefix instead of "a/"
[INFO] [stderr]     --dst-prefix <prefix> show the given destination prefix instead of "b/"
[INFO] [stderr]     --line-prefix <prefix>
[INFO] [stderr]                           prepend an additional prefix to every line of output
[INFO] [stderr]     --no-prefix           do not show any source or destination prefix
[INFO] [stderr]     --default-prefix      use default prefixes a/ and b/
[INFO] [stderr]     --inter-hunk-context <n>
[INFO] [stderr]                           show context between diff hunks up to the specified number of lines
[INFO] [stderr]     --output-indicator-new <char>
[INFO] [stderr]                           specify the character to indicate a new line instead of '+'
[INFO] [stderr]     --output-indicator-old <char>
[INFO] [stderr]                           specify the character to indicate an old line instead of '-'
[INFO] [stderr]     --output-indicator-context <char>
[INFO] [stderr]                           specify the character to indicate a context instead of ' '
[INFO] [stderr] 
[INFO] [stderr] Diff rename options
[INFO] [stderr]     -B, --break-rewrites[=<n>[/<m>]]
[INFO] [stderr]                           break complete rewrite changes into pairs of delete and create
[INFO] [stderr]     -M, --find-renames[=<n>]
[INFO] [stderr]                           detect renames
[INFO] [stderr]     -D, --irreversible-delete
[INFO] [stderr]                           omit the preimage for deletes
[INFO] [stderr]     -C, --find-copies[=<n>]
[INFO] [stderr]                           detect copies
[INFO] [stderr]     --[no-]find-copies-harder
[INFO] [stderr]                           use unmodified files as source to find copies
[INFO] [stderr]     --no-renames          disable rename detection
[INFO] [stderr]     --[no-]rename-empty   use empty blobs as rename source
[INFO] [stderr]     --[no-]follow         continue listing the history of a file beyond renames
[INFO] [stderr]     -l <n>                prevent rename/copy detection if the number of rename/copy targets exceeds given limit
[INFO] [stderr] 
[INFO] [stderr] Diff algorithm options
[INFO] [stderr]     --minimal             produce the smallest possible diff
[INFO] [stderr]     -w, --ignore-all-space
[INFO] [stderr]                           ignore whitespace when comparing lines
[INFO] [stderr]     -b, --ignore-space-change
[INFO] [stderr]                           ignore changes in amount of whitespace
[INFO] [stderr]     --ignore-space-at-eol ignore changes in whitespace at EOL
[INFO] [stderr]     --ignore-cr-at-eol    ignore carrier-return at the end of line
[INFO] [stderr]     --ignore-blank-lines  ignore changes whose lines are all blank
[INFO] [stderr]     -I, --[no-]ignore-matching-lines <regex>
[INFO] [stderr]                           ignore changes whose all lines match <regex>
[INFO] [stderr]     --[no-]indent-heuristic
[INFO] [stderr]                           heuristic to shift diff hunk boundaries for easy reading
[INFO] [stderr]     --patience            generate diff using the "patience diff" algorithm
[INFO] [stderr]     --histogram           generate diff using the "histogram diff" algorithm
[INFO] [stderr]     --diff-algorithm <algorithm>
[INFO] [stderr]                           choose a diff algorithm
[INFO] [stderr]     --anchored <text>     generate diff using the "anchored diff" algorithm
[INFO] [stderr]     --word-diff[=<mode>]  show word diff, using <mode> to delimit changed words
[INFO] [stderr]     --word-diff-regex <regex>
[INFO] [stderr]                           use <regex> to decide what a word is
[INFO] [stderr]     --color-words[=<regex>]
[INFO] [stderr]                           equivalent to --word-diff=color --word-diff-regex=<regex>
[INFO] [stderr]     --[no-]color-moved[=<mode>]
[INFO] [stderr]                           moved lines of code are colored differently
[INFO] [stderr]     --[no-]color-moved-ws <mode>
[INFO] [stderr]                           how white spaces are ignored in --color-moved
[INFO] [stderr] 
[INFO] [stderr] Other diff options
[INFO] [stderr]     --[no-]relative[=<prefix>]
[INFO] [stderr]                           when run from subdir, exclude changes outside and show relative paths
[INFO] [stderr]     -a, --[no-]text       treat all files as text
[INFO] [stderr]     -R                    swap two inputs, reverse the diff
[INFO] [stderr]     --[no-]exit-code      exit with 1 if there were differences, 0 otherwise
[INFO] [stderr]     --[no-]quiet          disable all output of the program
[INFO] [stderr]     --[no-]ext-diff       allow an external diff helper to be executed
[INFO] [stderr]     --[no-]textconv       run external text conversion filters when comparing binary files
[INFO] [stderr]     --ignore-submodules[=<when>]
[INFO] [stderr]                           ignore changes to submodules in the diff generation
[INFO] [stderr]     --submodule[=<format>]
[INFO] [stderr]                           specify how differences in submodules are shown
[INFO] [stderr]     --ita-invisible-in-index
[INFO] [stderr]                           hide 'git add -N' entries from the index
[INFO] [stderr]     --ita-visible-in-index
[INFO] [stderr]                           treat 'git add -N' entries as real in the index
[INFO] [stderr]     -S <string>           look for differences that change the number of occurrences of the specified string
[INFO] [stderr]     -G <regex>            look for differences that change the number of occurrences of the specified regex
[INFO] [stderr]     --pickaxe-all         show all changes in the changeset with -S or -G
[INFO] [stderr]     --pickaxe-regex       treat <string> in -S as extended POSIX regular expression
[INFO] [stderr]     -O <file>             control the order in which files appear in the output
[INFO] [stderr]     --rotate-to <path>    show the change in the specified path first
[INFO] [stderr]     --skip-to <path>      skip the output to the specified path
[INFO] [stderr]     --find-object <object-id>
[INFO] [stderr]                           look for differences that change the number of occurrences of the specified object
[INFO] [stderr]     --diff-filter [(A|C|D|M|R|T|U|X|B)...[*]]
[INFO] [stderr]                           select files by diff type
[INFO] [stderr]     --max-depth <depth>   maximum tree depth to recurse
[INFO] [stderr]     --output <file>       output to a specific file
[INFO] [stderr] 
[INFO] [stdout] test sync::tests::has_staged_changes_errs_with_status_when_git_exits_non_0_or_1 ... ok
[INFO] [stdout] test sync::tests::has_staged_changes_false_when_nothing_staged ... ok
[INFO] [stdout] test sync::tests::has_staged_changes_true_when_something_staged ... ok
[INFO] [stdout] test sync::tests::preview_fails_when_root_is_not_a_git_repo ... ok
[INFO] [stdout] test sync::tests::preview_is_empty_when_nothing_changed ... ok
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/release/build/dotfiles-manager/285bf51164187360/out/dotfiles_manager-285bf51164187360` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b", kill_on_drop: false }`
[INFO] [stdout] 06a43f446d406b94db92ebbe782aeab853ab47137eaf3b65415b6e9a5416827b
