[INFO] cloning repository https://github.com/kigster/sopsy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kigster/sopsy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkigster%2Fsopsy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkigster%2Fsopsy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9b975c26d34cda49ba396dd1204be3e8a65fe0c6
[INFO] testing kigster/sopsy against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkigster%2Fsopsy" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kigster/sopsy
[INFO] finished tweaking git repo https://github.com/kigster/sopsy
[INFO] tweaked toml for git repo https://github.com/kigster/sopsy written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kigster/sopsy on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kigster/sopsy 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.98.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-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b
[INFO] running `Command { std: "docker" "start" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", 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" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", 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" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling nix v0.31.3
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling rustc-demangle v0.1.27
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling anyhow v1.0.103
[INFO] [stderr]    Compiling indenter v0.3.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling fuzzy-matcher v0.3.7
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling unit-prefix v0.5.2
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling indicatif v0.18.4
[INFO] [stderr]    Compiling ctrlc v3.5.2
[INFO] [stderr]    Compiling which v8.0.4
[INFO] [stderr]    Compiling tracing-error v0.2.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling humantime v2.3.0
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling clap_complete v4.6.5
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling color-eyre v0.6.5
[INFO] [stderr]    Compiling inquire v0.9.4
[INFO] [stderr]    Compiling serde_yaml_ng v0.10.0
[INFO] [stderr]    Compiling sopsy v1.3.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.06s
[INFO] running `Command { std: "docker" "inspect" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", 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" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling assert_cmd v2.2.2
[INFO] [stderr]    Compiling serial_test_derive v3.5.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling serial_test v3.5.0
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling color-eyre v0.6.5
[INFO] [stderr]    Compiling sopsy v1.3.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling bstr v1.12.3
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling ignore v0.4.26
[INFO] [stderr]    Compiling globwalk v0.9.1
[INFO] [stderr]    Compiling assert_fs v1.1.4
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 29.46s
[INFO] running `Command { std: "docker" "inspect" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", 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" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/sopsy-309616f31ca727d3)
[INFO] [stdout] 
[INFO] [stdout] running 112 tests
[INFO] [stdout] test age::tests::ensure_available_errs_when_binary_missing ... ok
[INFO] [stdout] test age::tests::parses_identity_file_and_public_key ... ok
[INFO] [stdout] test age::tests::missing_secret_key_is_an_error ... ok
[INFO] [stdout] test age::tests::missing_public_key_is_an_error ... ok
[INFO] [stdout] test age::tests::skips_public_key_lines_without_an_age_token ... ok
[INFO] [stdout] test cli::tests::approve_accepts_multiple_names ... ok
[INFO] [stdout] test cli::tests::approve_accepts_no_names_for_interactive_mode ... ok
[INFO] [stdout] test cli::tests::yes_alias_enables_non_interactive ... ok
[INFO] [stdout] test cli::tests::request_access_is_an_alias_for_join ... ok
[INFO] [stdout] test commands::check::tests::regex_literal_star_repeats_and_backtracks ... ok
[INFO] [stdout] test cli::tests::parses_recipient_add_with_flags ... ok
[INFO] [stdout] test commands::check::tests::gather_unions_tracked_and_on_disk_files ... ok
[INFO] [stdout] test cli::tests::top_level_encrypt_decrypt_are_shorthands ... ok
[INFO] [stdout] test commands::check::tests::glob_question_mark_matches_single_non_slash ... ok
[INFO] [stdout] test commands::check::tests::regex_escaped_literal_star_repeats ... ok
[INFO] [stdout] test cli::tests::join_without_touch_id_flag_parses ... ok
[INFO] [stdout] test cli::tests::approve_keeps_multiword_names_intact ... ok
[INFO] [stdout] test cli::tests::hidden_secrets_alias_still_parses ... ok
[INFO] [stdout] test commands::check::tests::glob_matches_basenames_and_paths ... ok
[INFO] [stdout] test commands::check::tests::regex_matches_sops_path_regexes ... ok
[INFO] [stdout] test commands::edit::tests::editor_falls_back_to_default_without_flag_or_env ... ok
[INFO] [stdout] test cli::tests::cli_definition_is_valid ... ok
[INFO] [stdout] test cli::tests::join_accepts_username_flag ... ok
[INFO] [stdout] test commands::edit::tests::editor_flag_takes_precedence ... ok
[INFO] [stdout] test commands::init::tests::render_sops_yaml_embeds_recipients ... ok
[INFO] [stdout] test commands::doctor::tests::recipient_checks_cover_all_branches ... ok
[INFO] [stdout] test commands::recipient::tests::glob_match_handles_stars_and_slashes ... ok
[INFO] [stdout] test commands::recipient::tests::expand_glob_is_bounded_and_segment_wise ... ok
[INFO] [stdout] test commands::recipient::tests::mutate_reports_parse_errors ... ok
[INFO] [stdout] test commands::init::tests::read_seed_prefers_dotenv_then_example_then_template ... ok
[INFO] [stdout] _sopsy() {
[INFO] [stdout]     local i cur prev opts cmd
[INFO] [stdout]     COMPREPLY=()
[INFO] [stdout]     if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
[INFO] [stdout]         cur="$2"
[INFO] [stdout]     else
[INFO] [stdout]         cur="${COMP_WORDS[COMP_CWORD]}"
[INFO] [stdout]     fi
[INFO] [stdout]     prev="$3"
[INFO] [stdout]     cmd=""
[INFO] [stdout]     opts=""
[INFO] [stdout] 
[INFO] [stdout]     for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
[INFO] [stdout]     do
[INFO] [stdout]         case "${cmd},${i}" in
[INFO] [stdout]             ",$1")
[INFO] [stdout]                 cmd="sopsy"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,approve)
[INFO] [stdout]                 cmd="sopsy__subcmd__approve"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,check)
[INFO] [stdout]                 cmd="sopsy__subcmd__check"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,completion)
[INFO] [stdout]                 cmd="sopsy__subcmd__completion"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,deps)
[INFO] [stdout]                 cmd="sopsy__subcmd__deps"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,doctor)
[INFO] [stdout]                 cmd="sopsy__subcmd__doctor"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,edit)
[INFO] [stdout]                 cmd="sopsy__subcmd__edit"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,init)
[INFO] [stdout]                 cmd="sopsy__subcmd__init"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,join)
[INFO] [stdout]                 cmd="sopsy__subcmd__join"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,list-supported-types)
[INFO] [stdout]                 cmd="sopsy__subcmd__types"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,recipient)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,request-access)
[INFO] [stdout]                 cmd="sopsy__subcmd__join"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,secrets)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,types)
[INFO] [stdout]                 cmd="sopsy__subcmd__types"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,approve)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__approve"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,check)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__check"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,completion)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__completion"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,deps)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__deps"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,doctor)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__doctor"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,edit)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__edit"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,init)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__init"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,join)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__join"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,recipient)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,secrets)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__secrets"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,types)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__types"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,add)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,break-glass)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__break__subcmd__glass"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,ci)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__ci"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,keygen)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__keygen"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,list)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__list"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,remove)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__remove"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__secrets,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__secrets__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__secrets,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__secrets__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,add)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,break-glass)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__break__subcmd__glass"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,ci)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__ci"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,keygen)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__keygen"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,list)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__list"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,remove)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__remove"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,add)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,break-glass)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__break__subcmd__glass"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,ci)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__ci"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,keygen)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__keygen"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,list)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__list"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,remove)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__remove"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets__subcmd__help,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets__subcmd__help,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets__subcmd__help,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             *)
[INFO] [stdout]                 ;;
[INFO] [stdout]         esac
[INFO] [stdout]     done
[INFO] [stdout] 
[INFO] [stdout]     case "${cmd}" in
[INFO] [stdout]         sopsy)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version init doctor edit join request-access approve recipient secrets encrypt decrypt types list-supported-types check deps completion help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__approve)
[INFO] [stdout]             opts="-y -v -h -V --force --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version [NAMES]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__check)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__completion)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version bash elvish fish powershell zsh"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__decrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__deps)
[INFO] [stdout]             opts="-y -v -h -V --check --dry-run --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__doctor)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__edit)
[INFO] [stdout]             opts="-y -v -h -V --editor --yes --non-interactive --no-color --verbose --git --help --version <FILE> [SOPS_ARGS]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --editor)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__encrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help)
[INFO] [stdout]             opts="init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__approve)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__check)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__completion)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__decrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__deps)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__doctor)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__edit)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__encrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__init)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__join)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient)
[INFO] [stdout]             opts="add remove list keygen break-glass ci"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__add)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__break__subcmd__glass)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__ci)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__keygen)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__list)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__remove)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__secrets)
[INFO] [stdout]             opts="encrypt decrypt"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__secrets__subcmd__decrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__secrets__subcmd__encrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__types)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__init)
[INFO] [stdout]             opts="-y -v -h -V --recipient-name --username --public-key --no-generate --break-glass --no-break-glass --force --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --recipient-name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --username)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --public-key)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__join)
[INFO] [stdout]             opts="-t -y -v -h -V --username --sopsy-file --public-key --without-touch-id --yes --non-interactive --no-color --verbose --git --help --version <NAME> [AGE_ARGS]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --username)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --sopsy-file)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --public-key)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version add remove list keygen break-glass ci help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__add)
[INFO] [stdout]             opts="-y -v -h -V --name --public-key --break-glass --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version [NAME_POS]"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --public-key)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__break__subcmd__glass)
[INFO] [stdout]             opts="-o -y -v -h -V --output --name --force --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__ci)
[INFO] [stdout]             opts="-o -y -v -h -V --output --name --force --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help)
[INFO] [stdout]             opts="add remove list keygen break-glass ci help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__add)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__break__subcmd__glass)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__ci)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__keygen)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__list)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__remove)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__keygen)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version [AGE_ARGS]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__list)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__remove)
[INFO] [stdout]             opts="-y -v -h -V --name --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version [NAME_POS]"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version encrypt decrypt help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__decrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__encrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help)
[INFO] [stdout]             opts="encrypt decrypt help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help__subcmd__decrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help__subcmd__encrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help__subcmd__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__types)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]     esac
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
[INFO] [stdout]     complete -F _sopsy -o nosort -o bashdefault -o default sopsy
[INFO] [stdout] else
[INFO] [stdout]     complete -F _sopsy -o bashdefault -o default sopsy
[INFO] [stdout] fi
[INFO] [stdout] test commands::recipient::tests::parse_age_keys_handles_each_yaml_shape ... ok
[INFO] [stdout] test commands::recipient::tests::collect_encrypted_files_finds_artifacts_regardless_of_git_status ... ok
[INFO] [stdout] test commands::recipient::tests::is_encrypted_file_detects_marker_and_skips_sops_yaml ... ok
[INFO] [stdout] test commands::doctor::tests::checksum_check_verifies_and_repairs ... ok
[INFO] [stdout] test commands::recipient::tests::age_keys_to_value_round_trips ... ok
[INFO] [stdout] test commands::doctor::tests::parse_yaml_accepts_valid_and_rejects_invalid ... ok
[INFO] [stdout] test commands::recipient::tests::approved_cell_renders_provenance_and_pending ... ok
[INFO] [stdout] test commands::recipient::tests::remove_key_drops_only_the_named_key ... ok
[INFO] [stdout] test commands::recipient::tests::with_suffix_appends_dotted_extension ... ok
[INFO] [stdout] test commands::secrets::tests::output_target_treats_dash_and_none_as_stdout ... ok
[INFO] [stdout] test commands::secrets::tests::with_encrypted_suffix_appends ... ok
[INFO] [stdout] test config::tests::defaults_have_encrypted_globs ... ok
[INFO] [stdout] #compdef sopsy
[INFO] [stdout] 
[INFO] [stdout] autoload -U is-at-least
[INFO] [stdout] 
[INFO] [stdout] _sopsy() {
[INFO] [stdout]     typeset -A opt_args
[INFO] [stdout]     typeset -a _arguments_options
[INFO] [stdout]     local ret=1
[INFO] [stdout] 
[INFO] [stdout]     if is-at-least 5.2; then
[INFO] [stdout]         _arguments_options=(-s -S -C)
[INFO] [stdout]     else
[INFO] [stdout]         _arguments_options=(-s -C)
[INFO] [stdout]     fi
[INFO] [stdout] 
[INFO] [stdout]     local context curcontext="$curcontext" state line
[INFO] [stdout]     _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ":: :_sopsy_commands" \
[INFO] [stdout] "*::: :->sopsy" \
[INFO] [stdout] && ret=0
[INFO] [stdout]     case $state in
[INFO] [stdout]     (sopsy)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (init)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--recipient-name=[Name to record for the recipient created/registered during init]:RECIPIENT_NAME:_default' \
[INFO] [stdout] '--username=[Username of who is generating the key (recorded in \`.sopsy.yml\`). When a new identity is generated interactively, this is the default offered at the prompt; falls back to the current system user]:USERNAME:_default' \
[INFO] [stdout] '--public-key=[Use an existing age public key instead of generating a new identity]:PUBLIC_KEY:_default' \
[INFO] [stdout] '--no-generate[Skip Secure Enclave identity generation (e.g. when supplying a key)]' \
[INFO] [stdout] '(--no-break-glass)--break-glass[Generate a break-glass emergency key as part of init (the default in interactive mode is to prompt). Mutually exclusive with \`--no-break-glass\`]' \
[INFO] [stdout] '--no-break-glass[Skip break-glass key generation during init]' \
[INFO] [stdout] '--force[Proceed even if some doctor checks fail]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (doctor)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (edit)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--editor=[Editor to use (overrides \`\$EDITOR\`); falls back to a sensible default]:EDITOR:_default' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':file -- The encrypted file to edit:_files' \
[INFO] [stdout] '*::sops_args -- Extra arguments forwarded verbatim to `sops` after `--`:_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (join)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--username=[System username recorded alongside the name (defaults to \`\$USER\`)]:USERNAME:_default' \
[INFO] [stdout] '--sopsy-file=[Path to the \`.sopsy.yml\` to update (defaults to the one in the repo root)]:SOPSY_FILE:_files' \
[INFO] [stdout] '--public-key=[Use this existing age public key instead of generating a new identity]:PUBLIC_KEY:_default' \
[INFO] [stdout] '-t[Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing \`--access-control none\` to \`age-plugin-se keygen\`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when \`--public-key\` is supplied]' \
[INFO] [stdout] '--without-touch-id[Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing \`--access-control none\` to \`age-plugin-se keygen\`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when \`--public-key\` is supplied]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':name -- Your name as recorded in `.sopsy.yml` (full name or first name, e.g. `"Konstantin Gredeskoul"` or `annie`):_default' \
[INFO] [stdout] '*::age_args -- Extra arguments forwarded verbatim to `age-plugin-se keygen` after `--`:_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (request-access)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--username=[System username recorded alongside the name (defaults to \`\$USER\`)]:USERNAME:_default' \
[INFO] [stdout] '--sopsy-file=[Path to the \`.sopsy.yml\` to update (defaults to the one in the repo root)]:SOPSY_FILE:_files' \
[INFO] [stdout] '--public-key=[Use this existing age public key instead of generating a new identity]:PUBLIC_KEY:_default' \
[INFO] [stdout] '-t[Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing \`--access-control none\` to \`age-plugin-se keygen\`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when \`--public-key\` is supplied]' \
[INFO] [stdout] '--without-touch-id[Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing \`--access-control none\` to \`age-plugin-se keygen\`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when \`--public-key\` is supplied]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':name -- Your name as recorded in `.sopsy.yml` (full name or first name, e.g. `"Konstantin Gredeskoul"` or `annie`):_default' \
[INFO] [stdout] '*::age_args -- Extra arguments forwarded verbatim to `age-plugin-se keygen` after `--`:_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (approve)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--force[Approve even if a join request is older than the configured window]' \
[INFO] [stdout] '--no-updatekeys[Skip running \`sops updatekeys\` after editing \`.sops.yaml\`]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] '*::names -- The pending member(s) to approve. Pass several to approve them together and re-key once\: `sopsy approve annie colin`. With no names, walk every pending member interactively and approve the ones you confirm:_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (recipient)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ":: :_sopsy__subcmd__recipient_commands" \
[INFO] [stdout] "*::: :->recipient" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (recipient)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-recipient-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (add)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--name=[Recipient name]:NAME:_default' \
[INFO] [stdout] '--public-key=[The recipient'\''s age public key (\`age1...\`)]:PUBLIC_KEY:_default' \
[INFO] [stdout] '--break-glass[Mark this recipient as the break-glass emergency key]' \
[INFO] [stdout] '--no-updatekeys[Skip running \`sops updatekeys\` after editing \`.sops.yaml\`]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] '::name_pos -- Positional recipient name (equivalent to `--name`):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (remove)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--name=[Recipient name to remove]:NAME:_default' \
[INFO] [stdout] '--no-updatekeys[Skip running \`sops updatekeys\` after editing \`.sops.yaml\`]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] '::name_pos -- Positional recipient name (equivalent to `--name`):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (list)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (keygen)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] '*::age_args -- Extra arguments forwarded verbatim to `age-plugin-se keygen` after `--` (e.g. `--access-control=any-biometry-or-passcode`):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (break-glass)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-o+[Output path prefix; writes \`<output>.private\` and \`<output>.public\`. Both files are deleted from disk after you confirm they are stored safely]:OUTPUT:_files' \
[INFO] [stdout] '--output=[Output path prefix; writes \`<output>.private\` and \`<output>.public\`. Both files are deleted from disk after you confirm they are stored safely]:OUTPUT:_files' \
[INFO] [stdout] '--name=[Recipient name to record (defaults to \`break-glass\`)]:NAME:_default' \
[INFO] [stdout] '--force[Overwrite the \`<output>.private\` / \`<output>.public\` files if they exist]' \
[INFO] [stdout] '--no-updatekeys[Skip running \`sops updatekeys\` after editing \`.sops.yaml\`]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (ci)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-o+[Output path prefix; writes \`<output>.private\` and \`<output>.public\`. Both files are deleted from disk after you confirm the private key is stored in your CI provider'\''s secret store]:OUTPUT:_files' \
[INFO] [stdout] '--output=[Output path prefix; writes \`<output>.private\` and \`<output>.public\`. Both files are deleted from disk after you confirm the private key is stored in your CI provider'\''s secret store]:OUTPUT:_files' \
[INFO] [stdout] '--name=[Recipient name to record (defaults to \`ci\`)]:NAME:_default' \
[INFO] [stdout] '--force[Overwrite the \`<output>.private\` / \`<output>.public\` files if they exist]' \
[INFO] [stdout] '--no-updatekeys[Skip running \`sops updatekeys\` after editing \`.sops.yaml\`]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_sopsy__subcmd__recipient__subcmd__help_commands" \
[INFO] [stdout] "*::: :->help" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (help)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-recipient-help-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (add)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (remove)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (list)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (keygen)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (break-glass)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (ci)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (secrets)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ":: :_sopsy__subcmd__secrets_commands" \
[INFO] [stdout] "*::: :->secrets" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (secrets)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-secrets-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (encrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-o+[Write the ciphertext to this file (must end in \`.encrypted\`) instead of stdout. The committed artifact, e.g. \`-o .env.encrypted\`]:OUTPUT:_files' \
[INFO] [stdout] '--output=[Write the ciphertext to this file (must end in \`.encrypted\`) instead of stdout. The committed artifact, e.g. \`-o .env.encrypted\`]:OUTPUT:_files' \
[INFO] [stdout] '--type=[Override the file type (inferred from \`<file>\`'\''s extension otherwise)]:FILE_TYPE:((dotenv\:"\`.env\`-style \`KEY=value\` files"
[INFO] [stdout] yaml\:"YAML documents"
[INFO] [stdout] json\:"JSON documents"
[INFO] [stdout] ini\:"INI files"
[INFO] [stdout] binary\:"Opaque binary blobs (whole-file encryption)"))' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '--help[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':file -- The plaintext file to encrypt (e.g. `.env`, `config.yaml`, `data.json`):_files' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (decrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-o+[Write the plaintext here instead of stdout]:OUTPUT:_files' \
[INFO] [stdout] '--output=[Write the plaintext here instead of stdout]:OUTPUT:_files' \
[INFO] [stdout] '--type=[Override the detected file type (when the name has no usable extension)]:FILE_TYPE:((dotenv\:"\`.env\`-style \`KEY=value\` files"
[INFO] [stdout] yaml\:"YAML documents"
[INFO] [stdout] json\:"JSON documents"
[INFO] [stdout] ini\:"INI files"
[INFO] [stdout] binary\:"Opaque binary blobs (whole-file encryption)"))' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '--help[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':file -- The encrypted file to decrypt:_files' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_sopsy__subcmd__secrets__subcmd__help_commands" \
[INFO] [stdout] "*::: :->help" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (help)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-secrets-help-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (encrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (decrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (encrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-o+[Write the ciphertext to this file (must end in \`.encrypted\`) instead of stdout. The committed artifact, e.g. \`-o .env.encrypted\`]:OUTPUT:_files' \
[INFO] [stdout] '--output=[Write the ciphertext to this file (must end in \`.encrypted\`) instead of stdout. The committed artifact, e.g. \`-o .env.encrypted\`]:OUTPUT:_files' \
[INFO] [stdout] '--type=[Override the file type (inferred from \`<file>\`'\''s extension otherwise)]:FILE_TYPE:((dotenv\:"\`.env\`-style \`KEY=value\` files"
[INFO] [stdout] yaml\:"YAML documents"
[INFO] [stdout] json\:"JSON documents"
[INFO] [stdout] ini\:"INI files"
[INFO] [stdout] binary\:"Opaque binary blobs (whole-file encryption)"))' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '--help[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':file -- The plaintext file to encrypt (e.g. `.env`, `config.yaml`, `data.json`):_files' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (decrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-o+[Write the plaintext here instead of stdout]:OUTPUT:_files' \
[INFO] [stdout] '--output=[Write the plaintext here instead of stdout]:OUTPUT:_files' \
[INFO] [stdout] '--type=[Override the detected file type (when the name has no usable extension)]:FILE_TYPE:((dotenv\:"\`.env\`-style \`KEY=value\` files"
[INFO] [stdout] yaml\:"YAML documents"
[INFO] [stdout] json\:"JSON documents"
[INFO] [stdout] ini\:"INI files"
[INFO] [stdout] binary\:"Opaque binary blobs (whole-file encryption)"))' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '--help[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':file -- The encrypted file to decrypt:_files' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (types)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (list-supported-types)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (check)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (deps)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--check[Only report which dependencies are missing; do not install anything. Exits non-zero if any are missing (handy in CI / pre-flight checks)]' \
[INFO] [stdout] '--dry-run[Print the \`brew install\` command that would run, without executing it]' \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (completion)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '-y[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--non-interactive[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--yes[Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as \`--yes\`/\`-y\`]' \
[INFO] [stdout] '--no-color[Disable colored output (also honors the \`NO_COLOR\` environment variable)]' \
[INFO] [stdout] '-v[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--verbose[Increase output verbosity (show debug detail)]' \
[INFO] [stdout] '--git[After a command changes files, \`git add\` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don'\''t modify committed files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':shell -- The shell to generate a completion script for:(bash elvish fish powershell zsh)' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_sopsy__subcmd__help_commands" \
[INFO] [stdout] "*::: :->help" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (help)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-help-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (init)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (doctor)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (edit)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (join)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (approve)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (recipient)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_sopsy__subcmd__help__subcmd__recipient_commands" \
[INFO] [stdout] "*::: :->recipient" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (recipient)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-help-recipient-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (add)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (remove)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (list)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (keygen)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (break-glass)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (ci)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (secrets)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_sopsy__subcmd__help__subcmd__secrets_commands" \
[INFO] [stdout] "*::: :->secrets" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (secrets)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:sopsy-help-secrets-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (encrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (decrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (encrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (decrypt)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (types)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (check)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (deps)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (completion)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] (( $+functions[_sopsy_commands] )) ||
[INFO] [stdout] _sopsy_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'init:Bootstrap an encrypted repository (tools, identity, \`.sops.yaml\`, …)' \
[INFO] [stdout] 'doctor:Run health checks on the local setup and repository' \
[INFO] [stdout] 'edit:Edit an encrypted file with your editor via \`sops\`' \
[INFO] [stdout] 'join:Request membership\: generate an identity and record a pending entry' \
[INFO] [stdout] 'request-access:Request membership\: generate an identity and record a pending entry' \
[INFO] [stdout] 'approve:Approve a pending member\: re-key secrets so they can decrypt' \
[INFO] [stdout] 'recipient:Manage repository recipients (add/remove/list)' \
[INFO] [stdout] 'secrets:Deprecated alias for the top-level \`encrypt\`/\`decrypt\` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer \`sopsy encrypt\` / \`sopsy decrypt\`' \
[INFO] [stdout] 'encrypt:Encrypt a plaintext file to stdout (or a file)' \
[INFO] [stdout] 'decrypt:Decrypt an encrypted file to stdout (or a file)' \
[INFO] [stdout] 'types:List the file types sopsy understands (for \`--type\`)' \
[INFO] [stdout] 'list-supported-types:List the file types sopsy understands (for \`--type\`)' \
[INFO] [stdout] 'check:CI gate\: verify the repo'\''s encrypted-secrets hygiene (exit 0/1)' \
[INFO] [stdout] 'deps:Install sopsy'\''s external tools (sops, age, age-plugin-se) via Homebrew' \
[INFO] [stdout] 'completion:Generate a shell completion script (bash, zsh, fish, …)' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__approve_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__approve_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy approve commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__check_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__check_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy check commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__completion_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__completion_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy completion commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__decrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__decrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy decrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__deps_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__deps_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy deps commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__doctor_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__doctor_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy doctor commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__edit_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__edit_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy edit commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__encrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__encrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy encrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'init:Bootstrap an encrypted repository (tools, identity, \`.sops.yaml\`, …)' \
[INFO] [stdout] 'doctor:Run health checks on the local setup and repository' \
[INFO] [stdout] 'edit:Edit an encrypted file with your editor via \`sops\`' \
[INFO] [stdout] 'join:Request membership\: generate an identity and record a pending entry' \
[INFO] [stdout] 'approve:Approve a pending member\: re-key secrets so they can decrypt' \
[INFO] [stdout] 'recipient:Manage repository recipients (add/remove/list)' \
[INFO] [stdout] 'secrets:Deprecated alias for the top-level \`encrypt\`/\`decrypt\` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer \`sopsy encrypt\` / \`sopsy decrypt\`' \
[INFO] [stdout] 'encrypt:Encrypt a plaintext file to stdout (or a file)' \
[INFO] [stdout] 'decrypt:Decrypt an encrypted file to stdout (or a file)' \
[INFO] [stdout] 'types:List the file types sopsy understands (for \`--type\`)' \
[INFO] [stdout] 'check:CI gate\: verify the repo'\''s encrypted-secrets hygiene (exit 0/1)' \
[INFO] [stdout] 'deps:Install sopsy'\''s external tools (sops, age, age-plugin-se) via Homebrew' \
[INFO] [stdout] 'completion:Generate a shell completion script (bash, zsh, fish, …)' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__approve_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__approve_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help approve commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__check_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__check_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help check commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__completion_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__completion_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help completion commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__decrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__decrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help decrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__deps_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__deps_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help deps commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__doctor_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__doctor_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help doctor commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__edit_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__edit_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help edit commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__encrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__encrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help encrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__help_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__help_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__init_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__init_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help init commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__join_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__join_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help join commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'add:Add a recipient and re-encrypt secrets (\`sops updatekeys -r .\`)' \
[INFO] [stdout] 'remove:Remove a recipient and re-encrypt secrets' \
[INFO] [stdout] 'list:List configured recipients' \
[INFO] [stdout] 'keygen:Generate a new Secure Enclave identity and print its public key' \
[INFO] [stdout] 'break-glass:Generate a portable break-glass emergency key for offline storage' \
[INFO] [stdout] 'ci:Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named \`SOPS_AGE_KEY\`)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy help recipient commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient__subcmd__add_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient__subcmd__add_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help recipient add commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient__subcmd__break-glass_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient__subcmd__break-glass_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help recipient break-glass commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient__subcmd__ci_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient__subcmd__ci_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help recipient ci commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient__subcmd__keygen_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient__subcmd__keygen_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help recipient keygen commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient__subcmd__list_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient__subcmd__list_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help recipient list commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__recipient__subcmd__remove_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__recipient__subcmd__remove_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help recipient remove commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__secrets_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__secrets_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'encrypt:Encrypt a plaintext file (\`.env\`/YAML/JSON) to stdout (or \`-o <file>\`)' \
[INFO] [stdout] 'decrypt:Decrypt an encrypted file to stdout (or \`-o <file>\`)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy help secrets commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__secrets__subcmd__decrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__secrets__subcmd__decrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help secrets decrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__secrets__subcmd__encrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__secrets__subcmd__encrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help secrets encrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__help__subcmd__types_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__help__subcmd__types_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy help types commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__init_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__init_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy init commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__join_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__join_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy join commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'add:Add a recipient and re-encrypt secrets (\`sops updatekeys -r .\`)' \
[INFO] [stdout] 'remove:Remove a recipient and re-encrypt secrets' \
[INFO] [stdout] 'list:List configured recipients' \
[INFO] [stdout] 'keygen:Generate a new Secure Enclave identity and print its public key' \
[INFO] [stdout] 'break-glass:Generate a portable break-glass emergency key for offline storage' \
[INFO] [stdout] 'ci:Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named \`SOPS_AGE_KEY\`)' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy recipient commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__add_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__add_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient add commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__break-glass_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__break-glass_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient break-glass commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__ci_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__ci_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient ci commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'add:Add a recipient and re-encrypt secrets (\`sops updatekeys -r .\`)' \
[INFO] [stdout] 'remove:Remove a recipient and re-encrypt secrets' \
[INFO] [stdout] 'list:List configured recipients' \
[INFO] [stdout] 'keygen:Generate a new Secure Enclave identity and print its public key' \
[INFO] [stdout] 'break-glass:Generate a portable break-glass emergency key for offline storage' \
[INFO] [stdout] 'ci:Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named \`SOPS_AGE_KEY\`)' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy recipient help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__add_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__add_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help add commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__break-glass_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__break-glass_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help break-glass commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__ci_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__ci_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help ci commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__help_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__help_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__keygen_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__keygen_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help keygen commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__list_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__list_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help list commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__help__subcmd__remove_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__help__subcmd__remove_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient help remove commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__keygen_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__keygen_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient keygen commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__list_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__list_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient list commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__recipient__subcmd__remove_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__recipient__subcmd__remove_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy recipient remove commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'encrypt:Encrypt a plaintext file (\`.env\`/YAML/JSON) to stdout (or \`-o <file>\`)' \
[INFO] [stdout] 'decrypt:Decrypt an encrypted file to stdout (or \`-o <file>\`)' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy secrets commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets__subcmd__decrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets__subcmd__decrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy secrets decrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets__subcmd__encrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets__subcmd__encrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy secrets encrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets__subcmd__help_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets__subcmd__help_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'encrypt:Encrypt a plaintext file (\`.env\`/YAML/JSON) to stdout (or \`-o <file>\`)' \
[INFO] [stdout] 'decrypt:Decrypt an encrypted file to stdout (or \`-o <file>\`)' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'sopsy secrets help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets__subcmd__help__subcmd__decrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets__subcmd__help__subcmd__decrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy secrets help decrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets__subcmd__help__subcmd__encrypt_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets__subcmd__help__subcmd__encrypt_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy secrets help encrypt commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__secrets__subcmd__help__subcmd__help_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__secrets__subcmd__help__subcmd__help_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy secrets help help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_sopsy__subcmd__types_commands] )) ||
[INFO] [stdout] _sopsy__subcmd__types_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'sopsy types commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] if [ "$funcstack[1]" = "_sopsy" ]; then
[INFO] [stdout]     _sopsy "$@"
[INFO] [stdout] else
[INFO] [stdout]     compdef _sopsy sopsy
[INFO] [stdout] fi
[INFO] [stdout] # Print an optspec for argparse to handle cmd's options that are independent of any subcommand.
[INFO] [stdout] function __fish_sopsy_global_optspecs
[INFO] [stdout] 	string join \n y/non-interactive no-color v/verbose git h/help V/version
[INFO] [stdout] end
[INFO] [stdout] 
[INFO] [stdout] function __fish_sopsy_needs_command
[INFO] [stdout] 	# Figure out if the current invocation already has a command.
[INFO] [stdout] 	set -l cmd (commandline -opc)
[INFO] [stdout] 	set -e cmd[1]
[INFO] [stdout] 	argparse -s (__fish_sopsy_global_optspecs) -- $cmd 2>/dev/null
[INFO] [stdout] 	or return
[INFO] [stdout] 	if set -q argv[1]
[INFO] [stdout] 		# Also print the command, so this can be used to figure out what it is.
[INFO] [stdout] 		echo $argv[1]
[INFO] [stdout] 		return 1
[INFO] [stdout] 	end
[INFO] [stdout] 	return 0
[INFO] [stdout] end
[INFO] [stdout] 
[INFO] [stdout] function __fish_sopsy_using_subcommand
[INFO] [stdout] 	set -l cmd (__fish_sopsy_needs_command)
[INFO] [stdout] 	test -z "$cmd"
[INFO] [stdout] 	and return 1
[INFO] [stdout] 	contains -- $cmd[1] $argv
[INFO] [stdout] end
[INFO] [stdout] 
[INFO] [stdout] test commands::recipient::tests::truncate_shortens_only_long_values ... ok
[INFO] [stdout] test config::tests::missing_file_is_reported ... ok
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "init" -d 'Bootstrap an encrypted repository (tools, identity, `.sops.yaml`, …)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "doctor" -d 'Run health checks on the local setup and repository'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "edit" -d 'Edit an encrypted file with your editor via `sops`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "join" -d 'Request membership: generate an identity and record a pending entry'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "request-access" -d 'Request membership: generate an identity and record a pending entry'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "approve" -d 'Approve a pending member: re-key secrets so they can decrypt'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "recipient" -d 'Manage repository recipients (add/remove/list)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "secrets" -d 'Deprecated alias for the top-level `encrypt`/`decrypt` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer `sopsy encrypt` / `sopsy decrypt`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "encrypt" -d 'Encrypt a plaintext file to stdout (or a file)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "decrypt" -d 'Decrypt an encrypted file to stdout (or a file)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "types" -d 'List the file types sopsy understands (for `--type`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "list-supported-types" -d 'List the file types sopsy understands (for `--type`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "check" -d 'CI gate: verify the repo\'s encrypted-secrets hygiene (exit 0/1)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "deps" -d 'Install sopsy\'s external tools (sops, age, age-plugin-se) via Homebrew'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "completion" -d 'Generate a shell completion script (bash, zsh, fish, …)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_needs_command" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l recipient-name -d 'Name to record for the recipient created/registered during init' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l username -d 'Username of who is generating the key (recorded in `.sopsy.yml`). When a new identity is generated interactively, this is the default offered at the prompt; falls back to the current system user' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l public-key -d 'Use an existing age public key instead of generating a new identity' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l no-generate -d 'Skip Secure Enclave identity generation (e.g. when supplying a key)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l break-glass -d 'Generate a break-glass emergency key as part of init (the default in interactive mode is to prompt). Mutually exclusive with `--no-break-glass`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l no-break-glass -d 'Skip break-glass key generation during init'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l force -d 'Proceed even if some doctor checks fail'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand init" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand doctor" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand doctor" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand doctor" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand doctor" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand doctor" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand doctor" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -l editor -d 'Editor to use (overrides `$EDITOR`); falls back to a sensible default' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand edit" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -l username -d 'System username recorded alongside the name (defaults to `$USER`)' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -l sopsy-file -d 'Path to the `.sopsy.yml` to update (defaults to the one in the repo root)' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -l public-key -d 'Use this existing age public key instead of generating a new identity' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -s t -l without-touch-id -d 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand join" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -l username -d 'System username recorded alongside the name (defaults to `$USER`)' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -l sopsy-file -d 'Path to the `.sopsy.yml` to update (defaults to the one in the repo root)' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -l public-key -d 'Use this existing age public key instead of generating a new identity' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -s t -l without-touch-id -d 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand request-access" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -l force -d 'Approve even if a join request is older than the configured window'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -l no-updatekeys -d 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand approve" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "add" -d 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "remove" -d 'Remove a recipient and re-encrypt secrets'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "list" -d 'List configured recipients'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "keygen" -d 'Generate a new Secure Enclave identity and print its public key'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "break-glass" -d 'Generate a portable break-glass emergency key for offline storage'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "ci" -d 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and not __fish_seen_subcommand_from add remove list keygen break-glass ci help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -l name -d 'Recipient name' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -l public-key -d 'The recipient\'s age public key (`age1...`)' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -l break-glass -d 'Mark this recipient as the break-glass emergency key'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -l no-updatekeys -d 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from add" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -l name -d 'Recipient name to remove' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -l no-updatekeys -d 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from remove" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from list" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from list" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from list" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from list" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from keygen" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from keygen" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from keygen" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from keygen" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from keygen" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from keygen" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -s o -l output -d 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm they are stored safely' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -l name -d 'Recipient name to record (defaults to `break-glass`)' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -l force -d 'Overwrite the `<output>.private` / `<output>.public` files if they exist'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -l no-updatekeys -d 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from break-glass" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -s o -l output -d 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm the private key is stored in your CI provider\'s secret store' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -l name -d 'Recipient name to record (defaults to `ci`)' -r
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -l force -d 'Overwrite the `<output>.private` / `<output>.public` files if they exist'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -l no-updatekeys -d 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from ci" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "add" -d 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "remove" -d 'Remove a recipient and re-encrypt secrets'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "list" -d 'List configured recipients'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "keygen" -d 'Generate a new Secure Enclave identity and print its public key'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "break-glass" -d 'Generate a portable break-glass emergency key for offline storage'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "ci" -d 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand recipient; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -f -a "encrypt" -d 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -f -a "decrypt" -d 'Decrypt an encrypted file to stdout (or `-o <file>`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and not __fish_seen_subcommand_from encrypt decrypt help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -s o -l output -d 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -l type -d 'Override the file type (inferred from `<file>`\'s extension otherwise)' -r -f -a "dotenv\t'`.env`-style `KEY=value` files'
[INFO] [stdout] yaml\t'YAML documents'
[INFO] [stdout] json\t'JSON documents'
[INFO] [stdout] ini\t'INI files'
[INFO] [stdout] binary\t'Opaque binary blobs (whole-file encryption)'"
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -s h -l help -d 'Print help (see more with \'--help\')'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from encrypt" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -s o -l output -d 'Write the plaintext here instead of stdout' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -l type -d 'Override the detected file type (when the name has no usable extension)' -r -f -a "dotenv\t'`.env`-style `KEY=value` files'
[INFO] [stdout] yaml\t'YAML documents'
[INFO] [stdout] json\t'JSON documents'
[INFO] [stdout] ini\t'INI files'
[INFO] [stdout] binary\t'Opaque binary blobs (whole-file encryption)'"
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -s h -l help -d 'Print help (see more with \'--help\')'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from decrypt" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from help" -f -a "encrypt" -d 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from help" -f -a "decrypt" -d 'Decrypt an encrypted file to stdout (or `-o <file>`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand secrets; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -s o -l output -d 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -l type -d 'Override the file type (inferred from `<file>`\'s extension otherwise)' -r -f -a "dotenv\t'`.env`-style `KEY=value` files'
[INFO] [stdout] yaml\t'YAML documents'
[INFO] [stdout] json\t'JSON documents'
[INFO] [stdout] ini\t'INI files'
[INFO] [stdout] binary\t'Opaque binary blobs (whole-file encryption)'"
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -s h -l help -d 'Print help (see more with \'--help\')'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand encrypt" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -s o -l output -d 'Write the plaintext here instead of stdout' -r -F
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -l type -d 'Override the detected file type (when the name has no usable extension)' -r -f -a "dotenv\t'`.env`-style `KEY=value` files'
[INFO] [stdout] yaml\t'YAML documents'
[INFO] [stdout] json\t'JSON documents'
[INFO] [stdout] ini\t'INI files'
[INFO] [stdout] binary\t'Opaque binary blobs (whole-file encryption)'"
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -s h -l help -d 'Print help (see more with \'--help\')'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand decrypt" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand types" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand types" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand types" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand types" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand types" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand types" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand list-supported-types" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand list-supported-types" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand list-supported-types" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand list-supported-types" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand list-supported-types" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand list-supported-types" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand check" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand check" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand check" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand check" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand check" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand check" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -l check -d 'Only report which dependencies are missing; do not install anything. Exits non-zero if any are missing (handy in CI / pre-flight checks)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -l dry-run -d 'Print the `brew install` command that would run, without executing it'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand deps" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand completion" -s y -l non-interactive -l yes -d 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand completion" -l no-color -d 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand completion" -s v -l verbose -d 'Increase output verbosity (show debug detail)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand completion" -l git -d 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don\'t modify committed files'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand completion" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand completion" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "init" -d 'Bootstrap an encrypted repository (tools, identity, `.sops.yaml`, …)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "doctor" -d 'Run health checks on the local setup and repository'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "edit" -d 'Edit an encrypted file with your editor via `sops`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "join" -d 'Request membership: generate an identity and record a pending entry'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "approve" -d 'Approve a pending member: re-key secrets so they can decrypt'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "recipient" -d 'Manage repository recipients (add/remove/list)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "secrets" -d 'Deprecated alias for the top-level `encrypt`/`decrypt` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer `sopsy encrypt` / `sopsy decrypt`'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "encrypt" -d 'Encrypt a plaintext file to stdout (or a file)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "decrypt" -d 'Decrypt an encrypted file to stdout (or a file)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "types" -d 'List the file types sopsy understands (for `--type`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "check" -d 'CI gate: verify the repo\'s encrypted-secrets hygiene (exit 0/1)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "deps" -d 'Install sopsy\'s external tools (sops, age, age-plugin-se) via Homebrew'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "completion" -d 'Generate a shell completion script (bash, zsh, fish, …)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and not __fish_seen_subcommand_from init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from recipient" -f -a "add" -d 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from recipient" -f -a "remove" -d 'Remove a recipient and re-encrypt secrets'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from recipient" -f -a "list" -d 'List configured recipients'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from recipient" -f -a "keygen" -d 'Generate a new Secure Enclave identity and print its public key'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from recipient" -f -a "break-glass" -d 'Generate a portable break-glass emergency key for offline storage'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from recipient" -f -a "ci" -d 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from secrets" -f -a "encrypt" -d 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)'
[INFO] [stdout] complete -c sopsy -n "__fish_sopsy_using_subcommand help; and __fish_seen_subcommand_from secrets" -f -a "decrypt" -d 'Decrypt an encrypted file to stdout (or `-o <file>`)'
[INFO] [stdout] test commands::secrets::tests::ends_with_encrypted_is_case_insensitive ... ok
[INFO] [stdout] test config::tests::recipient_lookup_misses_return_none ... ok
[INFO] [stdout] test config::tests::resolved_request_ttl_parses_and_falls_back ... ok
[INFO] [stdout] test config::tests::round_trips_through_yaml ... ok
[INFO] [stdout] test config::tests::pending_member_round_trips_and_state_defaults_to_active ... ok
[INFO] [stdout] test age::tests::generate_keypair_maps_nonzero_exit_to_process_failed ... ok
[INFO] [stdout] test config::tests::load_from_dir_missing_file_is_reported ... ok
[INFO] [stdout] test enclave::tests::enclave_identity_is_constructible ... ok
[INFO] [stdout] test enclave::tests::missing_identity_is_an_error ... ok
[INFO] [stdout] test config::tests::missing_checksum_sidecar_is_accepted_as_legacy ... ok
[INFO] [stdout] test enclave::tests::missing_public_key_is_an_error ... ok
[INFO] [stdout] test config::tests::username_round_trips_and_is_omitted_when_absent ... ok
[INFO] [stdout] test enclave::tests::parses_public_key_from_stderr ... ok
[INFO] [stdout] test config::tests::save_writes_checksum_sidecar_that_load_verifies ... ok
[INFO] [stdout] test config::tests::malformed_yaml_is_a_parse_error ... ok
[INFO] [stdout] test config::tests::load_from_dir_reads_conventional_file ... ok
[INFO] [stdout] test enclave::tests::skips_public_key_lines_without_an_age_token ... ok
[INFO] [stdout] test git::tests::quote_escapes_quotes_and_backslashes ... ok
[INFO] [stdout] test git::tests::relative_display_strips_the_repo_prefix ... ok
[INFO] [stdout] test config::tests::approval_provenance_round_trips_and_is_omitted_when_absent ... ok
[INFO] [stdout] 
[INFO] [stdout] using namespace System.Management.Automation
[INFO] [stdout] using namespace System.Management.Automation.Language
[INFO] [stdout] 
[INFO] [stdout] Register-ArgumentCompleter -Native -CommandName 'sopsy' -ScriptBlock {
[INFO] [stdout]     param($wordToComplete, $commandAst, $cursorPosition)
[INFO] [stdout] 
[INFO] [stdout]     $commandElements = $commandAst.CommandElements
[INFO] [stdout]     $command = @(
[INFO] [stdout]         'sopsy'
[INFO] [stdout]         for ($i = 1; $i -lt $commandElements.Count; $i++) {
[INFO] [stdout]             $element = $commandElements[$i]
[INFO] [stdout]             if ($element -isnot [StringConstantExpressionAst] -or
[INFO] [stdout]                 $element.StringConstantType -ne [StringConstantType]::BareWord -or
[INFO] [stdout]                 $element.Value.StartsWith('-') -or
[INFO] [stdout]                 $element.Value -eq $wordToComplete) {
[INFO] [stdout]                 break
[INFO] [stdout]         }
[INFO] [stdout]         $element.Value
[INFO] [stdout]     }) -join ';'
[INFO] [stdout] 
[INFO] [stdout]     $completions = @(switch ($command) {
[INFO] [stdout]         'sopsy' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('init', 'init', [CompletionResultType]::ParameterValue, 'Bootstrap an encrypted repository (tools, identity, `.sops.yaml`, …)')
[INFO] [stdout]             [CompletionResult]::new('doctor', 'doctor', [CompletionResultType]::ParameterValue, 'Run health checks on the local setup and repository')
[INFO] [stdout]             [CompletionResult]::new('edit', 'edit', [CompletionResultType]::ParameterValue, 'Edit an encrypted file with your editor via `sops`')
[INFO] [stdout]             [CompletionResult]::new('join', 'join', [CompletionResultType]::ParameterValue, 'Request membership: generate an identity and record a pending entry')
[INFO] [stdout]             [CompletionResult]::new('request-access', 'request-access', [CompletionResultType]::ParameterValue, 'Request membership: generate an identity and record a pending entry')
[INFO] [stdout]             [CompletionResult]::new('approve', 'approve', [CompletionResultType]::ParameterValue, 'Approve a pending member: re-key secrets so they can decrypt')
[INFO] [stdout]             [CompletionResult]::new('recipient', 'recipient', [CompletionResultType]::ParameterValue, 'Manage repository recipients (add/remove/list)')
[INFO] [stdout]             [CompletionResult]::new('secrets', 'secrets', [CompletionResultType]::ParameterValue, 'Deprecated alias for the top-level `encrypt`/`decrypt` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer `sopsy encrypt` / `sopsy decrypt`')
[INFO] [stdout]             [CompletionResult]::new('encrypt', 'encrypt', [CompletionResultType]::ParameterValue, 'Encrypt a plaintext file to stdout (or a file)')
[INFO] [stdout]             [CompletionResult]::new('decrypt', 'decrypt', [CompletionResultType]::ParameterValue, 'Decrypt an encrypted file to stdout (or a file)')
[INFO] [stdout]             [CompletionResult]::new('types', 'types', [CompletionResultType]::ParameterValue, 'List the file types sopsy understands (for `--type`)')
[INFO] [stdout]             [CompletionResult]::new('list-supported-types', 'list-supported-types', [CompletionResultType]::ParameterValue, 'List the file types sopsy understands (for `--type`)')
[INFO] [stdout]             [CompletionResult]::new('check', 'check', [CompletionResultType]::ParameterValue, 'CI gate: verify the repo''s encrypted-secrets hygiene (exit 0/1)')
[INFO] [stdout]             [CompletionResult]::new('deps', 'deps', [CompletionResultType]::ParameterValue, 'Install sopsy''s external tools (sops, age, age-plugin-se) via Homebrew')
[INFO] [stdout]             [CompletionResult]::new('completion', 'completion', [CompletionResultType]::ParameterValue, 'Generate a shell completion script (bash, zsh, fish, …)')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;init' {
[INFO] [stdout]             [CompletionResult]::new('--recipient-name', '--recipient-name', [CompletionResultType]::ParameterName, 'Name to record for the recipient created/registered during init')
[INFO] [stdout]             [CompletionResult]::new('--username', '--username', [CompletionResultType]::ParameterName, 'Username of who is generating the key (recorded in `.sopsy.yml`). When a new identity is generated interactively, this is the default offered at the prompt; falls back to the current system user')
[INFO] [stdout]             [CompletionResult]::new('--public-key', '--public-key', [CompletionResultType]::ParameterName, 'Use an existing age public key instead of generating a new identity')
[INFO] [stdout]             [CompletionResult]::new('--no-generate', '--no-generate', [CompletionResultType]::ParameterName, 'Skip Secure Enclave identity generation (e.g. when supplying a key)')
[INFO] [stdout]             [CompletionResult]::new('--break-glass', '--break-glass', [CompletionResultType]::ParameterName, 'Generate a break-glass emergency key as part of init (the default in interactive mode is to prompt). Mutually exclusive with `--no-break-glass`')
[INFO] [stdout]             [CompletionResult]::new('--no-break-glass', '--no-break-glass', [CompletionResultType]::ParameterName, 'Skip break-glass key generation during init')
[INFO] [stdout]             [CompletionResult]::new('--force', '--force', [CompletionResultType]::ParameterName, 'Proceed even if some doctor checks fail')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;doctor' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;edit' {
[INFO] [stdout]             [CompletionResult]::new('--editor', '--editor', [CompletionResultType]::ParameterName, 'Editor to use (overrides `$EDITOR`); falls back to a sensible default')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;join' {
[INFO] [stdout]             [CompletionResult]::new('--username', '--username', [CompletionResultType]::ParameterName, 'System username recorded alongside the name (defaults to `$USER`)')
[INFO] [stdout]             [CompletionResult]::new('--sopsy-file', '--sopsy-file', [CompletionResultType]::ParameterName, 'Path to the `.sopsy.yml` to update (defaults to the one in the repo root)')
[INFO] [stdout]             [CompletionResult]::new('--public-key', '--public-key', [CompletionResultType]::ParameterName, 'Use this existing age public key instead of generating a new identity')
[INFO] [stdout]             [CompletionResult]::new('-t', '-t', [CompletionResultType]::ParameterName, 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied')
[INFO] [stdout]             [CompletionResult]::new('--without-touch-id', '--without-touch-id', [CompletionResultType]::ParameterName, 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;request-access' {
[INFO] [stdout]             [CompletionResult]::new('--username', '--username', [CompletionResultType]::ParameterName, 'System username recorded alongside the name (defaults to `$USER`)')
[INFO] [stdout]             [CompletionResult]::new('--sopsy-file', '--sopsy-file', [CompletionResultType]::ParameterName, 'Path to the `.sopsy.yml` to update (defaults to the one in the repo root)')
[INFO] [stdout]             [CompletionResult]::new('--public-key', '--public-key', [CompletionResultType]::ParameterName, 'Use this existing age public key instead of generating a new identity')
[INFO] [stdout]             [CompletionResult]::new('-t', '-t', [CompletionResultType]::ParameterName, 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied')
[INFO] [stdout]             [CompletionResult]::new('--without-touch-id', '--without-touch-id', [CompletionResultType]::ParameterName, 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;approve' {
[INFO] [stdout]             [CompletionResult]::new('--force', '--force', [CompletionResultType]::ParameterName, 'Approve even if a join request is older than the configured window')
[INFO] [stdout]             [CompletionResult]::new('--no-updatekeys', '--no-updatekeys', [CompletionResultType]::ParameterName, 'Skip running `sops updatekeys` after editing `.sops.yaml`')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('add', 'add', [CompletionResultType]::ParameterValue, 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)')
[INFO] [stdout]             [CompletionResult]::new('remove', 'remove', [CompletionResultType]::ParameterValue, 'Remove a recipient and re-encrypt secrets')
[INFO] [stdout]             [CompletionResult]::new('list', 'list', [CompletionResultType]::ParameterValue, 'List configured recipients')
[INFO] [stdout]             [CompletionResult]::new('keygen', 'keygen', [CompletionResultType]::ParameterValue, 'Generate a new Secure Enclave identity and print its public key')
[INFO] [stdout]             [CompletionResult]::new('break-glass', 'break-glass', [CompletionResultType]::ParameterValue, 'Generate a portable break-glass emergency key for offline storage')
[INFO] [stdout]             [CompletionResult]::new('ci', 'ci', [CompletionResultType]::ParameterValue, 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;add' {
[INFO] [stdout]             [CompletionResult]::new('--name', '--name', [CompletionResultType]::ParameterName, 'Recipient name')
[INFO] [stdout]             [CompletionResult]::new('--public-key', '--public-key', [CompletionResultType]::ParameterName, 'The recipient''s age public key (`age1...`)')
[INFO] [stdout]             [CompletionResult]::new('--break-glass', '--break-glass', [CompletionResultType]::ParameterName, 'Mark this recipient as the break-glass emergency key')
[INFO] [stdout]             [CompletionResult]::new('--no-updatekeys', '--no-updatekeys', [CompletionResultType]::ParameterName, 'Skip running `sops updatekeys` after editing `.sops.yaml`')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;remove' {
[INFO] [stdout]             [CompletionResult]::new('--name', '--name', [CompletionResultType]::ParameterName, 'Recipient name to remove')
[INFO] [stdout]             [CompletionResult]::new('--no-updatekeys', '--no-updatekeys', [CompletionResultType]::ParameterName, 'Skip running `sops updatekeys` after editing `.sops.yaml`')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;list' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;keygen' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;break-glass' {
[INFO] [stdout]             [CompletionResult]::new('-o', '-o', [CompletionResultType]::ParameterName, 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm they are stored safely')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm they are stored safely')
[INFO] [stdout]             [CompletionResult]::new('--name', '--name', [CompletionResultType]::ParameterName, 'Recipient name to record (defaults to `break-glass`)')
[INFO] [stdout]             [CompletionResult]::new('--force', '--force', [CompletionResultType]::ParameterName, 'Overwrite the `<output>.private` / `<output>.public` files if they exist')
[INFO] [stdout]             [CompletionResult]::new('--no-updatekeys', '--no-updatekeys', [CompletionResultType]::ParameterName, 'Skip running `sops updatekeys` after editing `.sops.yaml`')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;ci' {
[INFO] [stdout]             [CompletionResult]::new('-o', '-o', [CompletionResultType]::ParameterName, 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm the private key is stored in your CI provider''s secret store')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm the private key is stored in your CI provider''s secret store')
[INFO] [stdout]             [CompletionResult]::new('--name', '--name', [CompletionResultType]::ParameterName, 'Recipient name to record (defaults to `ci`)')
[INFO] [stdout]             [CompletionResult]::new('--force', '--force', [CompletionResultType]::ParameterName, 'Overwrite the `<output>.private` / `<output>.public` files if they exist')
[INFO] [stdout]             [CompletionResult]::new('--no-updatekeys', '--no-updatekeys', [CompletionResultType]::ParameterName, 'Skip running `sops updatekeys` after editing `.sops.yaml`')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help' {
[INFO] [stdout]             [CompletionResult]::new('add', 'add', [CompletionResultType]::ParameterValue, 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)')
[INFO] [stdout]             [CompletionResult]::new('remove', 'remove', [CompletionResultType]::ParameterValue, 'Remove a recipient and re-encrypt secrets')
[INFO] [stdout]             [CompletionResult]::new('list', 'list', [CompletionResultType]::ParameterValue, 'List configured recipients')
[INFO] [stdout]             [CompletionResult]::new('keygen', 'keygen', [CompletionResultType]::ParameterValue, 'Generate a new Secure Enclave identity and print its public key')
[INFO] [stdout]             [CompletionResult]::new('break-glass', 'break-glass', [CompletionResultType]::ParameterValue, 'Generate a portable break-glass emergency key for offline storage')
[INFO] [stdout]             [CompletionResult]::new('ci', 'ci', [CompletionResultType]::ParameterValue, 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;add' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;remove' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;list' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;keygen' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;break-glass' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;ci' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;recipient;help;help' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('encrypt', 'encrypt', [CompletionResultType]::ParameterValue, 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)')
[INFO] [stdout]             [CompletionResult]::new('decrypt', 'decrypt', [CompletionResultType]::ParameterValue, 'Decrypt an encrypted file to stdout (or `-o <file>`)')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets;encrypt' {
[INFO] [stdout]             [CompletionResult]::new('-o', '-o', [CompletionResultType]::ParameterName, 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`')
[INFO] [stdout]             [CompletionResult]::new('--type', '--type', [CompletionResultType]::ParameterName, 'Override the file type (inferred from `<file>`''s extension otherwise)')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets;decrypt' {
[INFO] [stdout]             [CompletionResult]::new('-o', '-o', [CompletionResultType]::ParameterName, 'Write the plaintext here instead of stdout')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Write the plaintext here instead of stdout')
[INFO] [stdout]             [CompletionResult]::new('--type', '--type', [CompletionResultType]::ParameterName, 'Override the detected file type (when the name has no usable extension)')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets;help' {
[INFO] [stdout]             [CompletionResult]::new('encrypt', 'encrypt', [CompletionResultType]::ParameterValue, 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)')
[INFO] [stdout]             [CompletionResult]::new('decrypt', 'decrypt', [CompletionResultType]::ParameterValue, 'Decrypt an encrypted file to stdout (or `-o <file>`)')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets;help;encrypt' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets;help;decrypt' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;secrets;help;help' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;encrypt' {
[INFO] [stdout]             [CompletionResult]::new('-o', '-o', [CompletionResultType]::ParameterName, 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`')
[INFO] [stdout]             [CompletionResult]::new('--type', '--type', [CompletionResultType]::ParameterName, 'Override the file type (inferred from `<file>`''s extension otherwise)')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;decrypt' {
[INFO] [stdout]             [CompletionResult]::new('-o', '-o', [CompletionResultType]::ParameterName, 'Write the plaintext here instead of stdout')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Write the plaintext here instead of stdout')
[INFO] [stdout]             [CompletionResult]::new('--type', '--type', [CompletionResultType]::ParameterName, 'Override the detected file type (when the name has no usable extension)')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;types' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;list-supported-types' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;check' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;deps' {
[INFO] [stdout]             [CompletionResult]::new('--check', '--check', [CompletionResultType]::ParameterName, 'Only report which dependencies are missing; do not install anything. Exits non-zero if any are missing (handy in CI / pre-flight checks)')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Print the `brew install` command that would run, without executing it')
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;completion' {
[INFO] [stdout]             [CompletionResult]::new('-y', '-y', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--non-interactive', '--non-interactive', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`')
[INFO] [stdout]             [CompletionResult]::new('--no-color', '--no-color', [CompletionResultType]::ParameterName, 'Disable colored output (also honors the `NO_COLOR` environment variable)')
[INFO] [stdout]             [CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Increase output verbosity (show debug detail)')
[INFO] [stdout]             [CompletionResult]::new('--git', '--git', [CompletionResultType]::ParameterName, 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help' {
[INFO] [stdout]             [CompletionResult]::new('init', 'init', [CompletionResultType]::ParameterValue, 'Bootstrap an encrypted repository (tools, identity, `.sops.yaml`, …)')
[INFO] [stdout]             [CompletionResult]::new('doctor', 'doctor', [CompletionResultType]::ParameterValue, 'Run health checks on the local setup and repository')
[INFO] [stdout]             [CompletionResult]::new('edit', 'edit', [CompletionResultType]::ParameterValue, 'Edit an encrypted file with your editor via `sops`')
[INFO] [stdout]             [CompletionResult]::new('join', 'join', [CompletionResultType]::ParameterValue, 'Request membership: generate an identity and record a pending entry')
[INFO] [stdout]             [CompletionResult]::new('approve', 'approve', [CompletionResultType]::ParameterValue, 'Approve a pending member: re-key secrets so they can decrypt')
[INFO] [stdout]             [CompletionResult]::new('recipient', 'recipient', [CompletionResultType]::ParameterValue, 'Manage repository recipients (add/remove/list)')
[INFO] [stdout]             [CompletionResult]::new('secrets', 'secrets', [CompletionResultType]::ParameterValue, 'Deprecated alias for the top-level `encrypt`/`decrypt` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer `sopsy encrypt` / `sopsy decrypt`')
[INFO] [stdout]             [CompletionResult]::new('encrypt', 'encrypt', [CompletionResultType]::ParameterValue, 'Encrypt a plaintext file to stdout (or a file)')
[INFO] [stdout]             [CompletionResult]::new('decrypt', 'decrypt', [CompletionResultType]::ParameterValue, 'Decrypt an encrypted file to stdout (or a file)')
[INFO] [stdout]             [CompletionResult]::new('types', 'types', [CompletionResultType]::ParameterValue, 'List the file types sopsy understands (for `--type`)')
[INFO] [stdout]             [CompletionResult]::new('check', 'check', [CompletionResultType]::ParameterValue, 'CI gate: verify the repo''s encrypted-secrets hygiene (exit 0/1)')
[INFO] [stdout]             [CompletionResult]::new('deps', 'deps', [CompletionResultType]::ParameterValue, 'Install sopsy''s external tools (sops, age, age-plugin-se) via Homebrew')
[INFO] [stdout]             [CompletionResult]::new('completion', 'completion', [CompletionResultType]::ParameterValue, 'Generate a shell completion script (bash, zsh, fish, …)')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;init' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;doctor' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;edit' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;join' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;approve' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient' {
[INFO] [stdout]             [CompletionResult]::new('add', 'add', [CompletionResultType]::ParameterValue, 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)')
[INFO] [stdout]             [CompletionResult]::new('remove', 'remove', [CompletionResultType]::ParameterValue, 'Remove a recipient and re-encrypt secrets')
[INFO] [stdout]             [CompletionResult]::new('list', 'list', [CompletionResultType]::ParameterValue, 'List configured recipients')
[INFO] [stdout]             [CompletionResult]::new('keygen', 'keygen', [CompletionResultType]::ParameterValue, 'Generate a new Secure Enclave identity and print its public key')
[INFO] [stdout]             [CompletionResult]::new('break-glass', 'break-glass', [CompletionResultType]::ParameterValue, 'Generate a portable break-glass emergency key for offline storage')
[INFO] [stdout]             [CompletionResult]::new('ci', 'ci', [CompletionResultType]::ParameterValue, 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient;add' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient;remove' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient;list' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient;keygen' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient;break-glass' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;recipient;ci' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;secrets' {
[INFO] [stdout]             [CompletionResult]::new('encrypt', 'encrypt', [CompletionResultType]::ParameterValue, 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)')
[INFO] [stdout]             [CompletionResult]::new('decrypt', 'decrypt', [CompletionResultType]::ParameterValue, 'Decrypt an encrypted file to stdout (or `-o <file>`)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;secrets;encrypt' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;secrets;decrypt' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;encrypt' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;decrypt' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;types' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;check' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;deps' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;completion' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'sopsy;help;help' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]     })
[INFO] [stdout] 
[INFO] [stdout]     $completions.Where{ $_.CompletionText -like "$wordToComplete*" } |
[INFO] [stdout]         Sort-Object -Property ListItemText
[INFO] [stdout] }
[INFO] [stdout] test help::tests::description_text_after_the_flag_gap_stays_plain ... ok
[INFO] [stdout] 
[INFO] [stdout] use builtin;
[INFO] [stdout] use str;
[INFO] [stdout] 
[INFO] [stdout] set edit:completion:arg-completer[sopsy] = {|@words|
[INFO] [stdout]     fn spaces {|n|
[INFO] [stdout]         builtin:repeat $n ' ' | str:join ''
[INFO] [stdout]     }
[INFO] [stdout]     fn cand {|text desc|
[INFO] [stdout]         edit:complex-candidate $text &display=$text' '(spaces (- 14 (wcswidth $text)))$desc
[INFO] [stdout]     }
[INFO] [stdout]     var command = 'sopsy'
[INFO] [stdout]     for word $words[1..-1] {
[INFO] [stdout]         if (str:has-prefix $word '-') {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         set command = $command';'$word
[INFO] [stdout]     }
[INFO] [stdout]     var completions = [
[INFO] [stdout]         &'sopsy'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]             cand init 'Bootstrap an encrypted repository (tools, identity, `.sops.yaml`, …)'
[INFO] [stdout]             cand doctor 'Run health checks on the local setup and repository'
[INFO] [stdout]             cand edit 'Edit an encrypted file with your editor via `sops`'
[INFO] [stdout]             cand join 'Request membership: generate an identity and record a pending entry'
[INFO] [stdout]             cand request-access 'Request membership: generate an identity and record a pending entry'
[INFO] [stdout]             cand approve 'Approve a pending member: re-key secrets so they can decrypt'
[INFO] [stdout]             cand recipient 'Manage repository recipients (add/remove/list)'
[INFO] [stdout]             cand secrets 'Deprecated alias for the top-level `encrypt`/`decrypt` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer `sopsy encrypt` / `sopsy decrypt`'
[INFO] [stdout]             cand encrypt 'Encrypt a plaintext file to stdout (or a file)'
[INFO] [stdout]             cand decrypt 'Decrypt an encrypted file to stdout (or a file)'
[INFO] [stdout]             cand types 'List the file types sopsy understands (for `--type`)'
[INFO] [stdout]             cand list-supported-types 'List the file types sopsy understands (for `--type`)'
[INFO] [stdout]             cand check 'CI gate: verify the repo''s encrypted-secrets hygiene (exit 0/1)'
[INFO] [stdout]             cand deps 'Install sopsy''s external tools (sops, age, age-plugin-se) via Homebrew'
[INFO] [stdout]             cand completion 'Generate a shell completion script (bash, zsh, fish, …)'
[INFO] [stdout]             cand help 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;init'= {
[INFO] [stdout]             cand --recipient-name 'Name to record for the recipient created/registered during init'
[INFO] [stdout]             cand --username 'Username of who is generating the key (recorded in `.sopsy.yml`). When a new identity is generated interactively, this is the default offered at the prompt; falls back to the current system user'
[INFO] [stdout]             cand --public-key 'Use an existing age public key instead of generating a new identity'
[INFO] [stdout]             cand --no-generate 'Skip Secure Enclave identity generation (e.g. when supplying a key)'
[INFO] [stdout]             cand --break-glass 'Generate a break-glass emergency key as part of init (the default in interactive mode is to prompt). Mutually exclusive with `--no-break-glass`'
[INFO] [stdout]             cand --no-break-glass 'Skip break-glass key generation during init'
[INFO] [stdout]             cand --force 'Proceed even if some doctor checks fail'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;doctor'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;edit'= {
[INFO] [stdout]             cand --editor 'Editor to use (overrides `$EDITOR`); falls back to a sensible default'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;join'= {
[INFO] [stdout]             cand --username 'System username recorded alongside the name (defaults to `$USER`)'
[INFO] [stdout]             cand --sopsy-file 'Path to the `.sopsy.yml` to update (defaults to the one in the repo root)'
[INFO] [stdout]             cand --public-key 'Use this existing age public key instead of generating a new identity'
[INFO] [stdout]             cand -t 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied'
[INFO] [stdout]             cand --without-touch-id 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;request-access'= {
[INFO] [stdout]             cand --username 'System username recorded alongside the name (defaults to `$USER`)'
[INFO] [stdout]             cand --sopsy-file 'Path to the `.sopsy.yml` to update (defaults to the one in the repo root)'
[INFO] [stdout]             cand --public-key 'Use this existing age public key instead of generating a new identity'
[INFO] [stdout]             cand -t 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied'
[INFO] [stdout]             cand --without-touch-id 'Generate the Secure Enclave identity without a Touch ID / passcode gate, by passing `--access-control none` to `age-plugin-se keygen`. The private key still never leaves the Enclave (and is device-bound), but unlocking it no longer prompts for a fingerprint or passcode — handy for scripted or headless setups. Ignored when `--public-key` is supplied'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;approve'= {
[INFO] [stdout]             cand --force 'Approve even if a join request is older than the configured window'
[INFO] [stdout]             cand --no-updatekeys 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]             cand add 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)'
[INFO] [stdout]             cand remove 'Remove a recipient and re-encrypt secrets'
[INFO] [stdout]             cand list 'List configured recipients'
[INFO] [stdout]             cand keygen 'Generate a new Secure Enclave identity and print its public key'
[INFO] [stdout]             cand break-glass 'Generate a portable break-glass emergency key for offline storage'
[INFO] [stdout]             cand ci 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)'
[INFO] [stdout]             cand help 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;add'= {
[INFO] [stdout]             cand --name 'Recipient name'
[INFO] [stdout]             cand --public-key 'The recipient''s age public key (`age1...`)'
[INFO] [stdout]             cand --break-glass 'Mark this recipient as the break-glass emergency key'
[INFO] [stdout]             cand --no-updatekeys 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;remove'= {
[INFO] [stdout]             cand --name 'Recipient name to remove'
[INFO] [stdout]             cand --no-updatekeys 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;list'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;keygen'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;break-glass'= {
[INFO] [stdout]             cand -o 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm they are stored safely'
[INFO] [stdout]             cand --output 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm they are stored safely'
[INFO] [stdout]             cand --name 'Recipient name to record (defaults to `break-glass`)'
[INFO] [stdout]             cand --force 'Overwrite the `<output>.private` / `<output>.public` files if they exist'
[INFO] [stdout]             cand --no-updatekeys 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;ci'= {
[INFO] [stdout]             cand -o 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm the private key is stored in your CI provider''s secret store'
[INFO] [stdout]             cand --output 'Output path prefix; writes `<output>.private` and `<output>.public`. Both files are deleted from disk after you confirm the private key is stored in your CI provider''s secret store'
[INFO] [stdout]             cand --name 'Recipient name to record (defaults to `ci`)'
[INFO] [stdout]             cand --force 'Overwrite the `<output>.private` / `<output>.public` files if they exist'
[INFO] [stdout]             cand --no-updatekeys 'Skip running `sops updatekeys` after editing `.sops.yaml`'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help'= {
[INFO] [stdout]             cand add 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)'
[INFO] [stdout]             cand remove 'Remove a recipient and re-encrypt secrets'
[INFO] [stdout]             cand list 'List configured recipients'
[INFO] [stdout]             cand keygen 'Generate a new Secure Enclave identity and print its public key'
[INFO] [stdout]             cand break-glass 'Generate a portable break-glass emergency key for offline storage'
[INFO] [stdout]             cand ci 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)'
[INFO] [stdout]             cand help 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;add'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;remove'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;list'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;keygen'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;break-glass'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;ci'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;recipient;help;help'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]             cand encrypt 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)'
[INFO] [stdout]             cand decrypt 'Decrypt an encrypted file to stdout (or `-o <file>`)'
[INFO] [stdout]             cand help 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets;encrypt'= {
[INFO] [stdout]             cand -o 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`'
[INFO] [stdout]             cand --output 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`'
[INFO] [stdout]             cand --type 'Override the file type (inferred from `<file>`''s extension otherwise)'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand --help 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets;decrypt'= {
[INFO] [stdout]             cand -o 'Write the plaintext here instead of stdout'
[INFO] [stdout]             cand --output 'Write the plaintext here instead of stdout'
[INFO] [stdout]             cand --type 'Override the detected file type (when the name has no usable extension)'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand --help 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets;help'= {
[INFO] [stdout]             cand encrypt 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)'
[INFO] [stdout]             cand decrypt 'Decrypt an encrypted file to stdout (or `-o <file>`)'
[INFO] [stdout]             cand help 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets;help;encrypt'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets;help;decrypt'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;secrets;help;help'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;encrypt'= {
[INFO] [stdout]             cand -o 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`'
[INFO] [stdout]             cand --output 'Write the ciphertext to this file (must end in `.encrypted`) instead of stdout. The committed artifact, e.g. `-o .env.encrypted`'
[INFO] [stdout]             cand --type 'Override the file type (inferred from `<file>`''s extension otherwise)'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand --help 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;decrypt'= {
[INFO] [stdout]             cand -o 'Write the plaintext here instead of stdout'
[INFO] [stdout]             cand --output 'Write the plaintext here instead of stdout'
[INFO] [stdout]             cand --type 'Override the detected file type (when the name has no usable extension)'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand --help 'Print help (see more with ''--help'')'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;types'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;list-supported-types'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;check'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;deps'= {
[INFO] [stdout]             cand --check 'Only report which dependencies are missing; do not install anything. Exits non-zero if any are missing (handy in CI / pre-flight checks)'
[INFO] [stdout]             cand --dry-run 'Print the `brew install` command that would run, without executing it'
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/sopsy-ff32fedd0bb44732)
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;completion'= {
[INFO] [stdout]             cand -y 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --non-interactive 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --yes 'Disable all interactive prompts; fail instead of asking. Also enabled automatically when stdout is not a TTY. Aliased as `--yes`/`-y`'
[INFO] [stdout]             cand --no-color 'Disable colored output (also honors the `NO_COLOR` environment variable)'
[INFO] [stdout]             cand -v 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --verbose 'Increase output verbosity (show debug detail)'
[INFO] [stdout]             cand --git 'After a command changes files, `git add` exactly those files and print ready-to-paste commit and pull-request instructions. A no-op for commands that don''t modify committed files'
[INFO] [stdout]             cand -h 'Print help'
[INFO] [stdout]             cand --help 'Print help'
[INFO] [stdout]             cand -V 'Print version'
[INFO] [stdout]             cand --version 'Print version'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help'= {
[INFO] [stdout]             cand init 'Bootstrap an encrypted repository (tools, identity, `.sops.yaml`, …)'
[INFO] [stdout]             cand doctor 'Run health checks on the local setup and repository'
[INFO] [stdout]             cand edit 'Edit an encrypted file with your editor via `sops`'
[INFO] [stdout]             cand join 'Request membership: generate an identity and record a pending entry'
[INFO] [stdout]             cand approve 'Approve a pending member: re-key secrets so they can decrypt'
[INFO] [stdout]             cand recipient 'Manage repository recipients (add/remove/list)'
[INFO] [stdout]             cand secrets 'Deprecated alias for the top-level `encrypt`/`decrypt` commands, kept (hidden) for backwards compatibility with scripts written before they existed. Prefer `sopsy encrypt` / `sopsy decrypt`'
[INFO] [stdout]             cand encrypt 'Encrypt a plaintext file to stdout (or a file)'
[INFO] [stdout]             cand decrypt 'Decrypt an encrypted file to stdout (or a file)'
[INFO] [stdout]             cand types 'List the file types sopsy understands (for `--type`)'
[INFO] [stdout]             cand check 'CI gate: verify the repo''s encrypted-secrets hygiene (exit 0/1)'
[INFO] [stdout]             cand deps 'Install sopsy''s external tools (sops, age, age-plugin-se) via Homebrew'
[INFO] [stdout]             cand completion 'Generate a shell completion script (bash, zsh, fish, …)'
[INFO] [stdout]             cand help 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;init'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;doctor'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;edit'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;join'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;approve'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient'= {
[INFO] [stdout]             cand add 'Add a recipient and re-encrypt secrets (`sops updatekeys -r .`)'
[INFO] [stdout]             cand remove 'Remove a recipient and re-encrypt secrets'
[INFO] [stdout]             cand list 'List configured recipients'
[INFO] [stdout]             cand keygen 'Generate a new Secure Enclave identity and print its public key'
[INFO] [stdout]             cand break-glass 'Generate a portable break-glass emergency key for offline storage'
[INFO] [stdout]             cand ci 'Generate a portable CI decryption key and register it as a recipient (store the private half as a CI secret named `SOPS_AGE_KEY`)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient;add'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient;remove'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient;list'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient;keygen'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient;break-glass'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;recipient;ci'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;secrets'= {
[INFO] [stdout]             cand encrypt 'Encrypt a plaintext file (`.env`/YAML/JSON) to stdout (or `-o <file>`)'
[INFO] [stdout]             cand decrypt 'Decrypt an encrypted file to stdout (or `-o <file>`)'
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;secrets;encrypt'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;secrets;decrypt'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;encrypt'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;decrypt'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;types'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;check'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;deps'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;completion'= {
[INFO] [stdout]         }
[INFO] [stdout]         &'sopsy;help;help'= {
[INFO] [stdout]         }
[INFO] [stdout]     ]
[INFO] [stdout]     $completions[$command]
[INFO] [stdout] }
[INFO] [stdout] test help::tests::usage_body_moves_to_its_own_line ... ok
[INFO] [stdout] test commands::recipient::tests::mutate_skips_non_mapping_and_age_less_rules ... ok
[INFO] [stdout] test help::tests::commands_are_blue_options_are_magenta ... ok
[INFO] [stdout] test help::tests::headings_are_recased_even_without_color ... ok
[INFO] [stdout] test help::tests::colored_render_paints_each_section_kind ... ok
[INFO] [stdout] test age::tests::generate_keypair_parses_fake_success ... ok
[INFO] [stdout] test commands::init::tests::detect_sops_version_handles_failures ... ok
[INFO] [stdout] test commands::init::tests::detect_sops_version_parses_real_output ... ok
[INFO] [stdout] test commands::recipient::tests::system_username_falls_back_to_none_when_unset ... ok
[INFO] [stdout] test keystore::tests::keys_file_honors_explicit_override ... ok
[INFO] [stdout] test commands::completion::tests::generates_for_each_shell ... ok
[INFO] [stdout] test enclave::tests::parses_identity_file_style_stdout ... ok
[INFO] [stdout] test config::tests::tampered_config_fails_integrity_check ... ok
[INFO] [stdout] test sops::tests::from_path_detects_dotenv ... ok
[INFO] [stdout] test sops::tests::from_path_falls_back_to_binary ... ok
[INFO] [stdout] test keystore::tests::store_identity_appends_once ... ok
[INFO] [stdout] test sops::tests::from_path_strips_encrypted_suffix_for_inner_type ... ok
[INFO] [stdout] test tests::dispatch_encrypt_decrypt_shorthands_route_to_secrets ... ok
[INFO] [stdout] test sops::tests::from_path_is_case_insensitive ... ok
[INFO] [stdout] test sops::tests::from_path_handles_pathless_names ... ok
[INFO] [stdout] test sops::tests::sops_type_includes_ini ... ok
[INFO] [stdout] test commands::doctor::tests::run_is_always_ok ... ok
[INFO] [stdout] test sops::tests::sops_type_strings_are_stable ... ok
[INFO] [stdout] test ui::tests::all_prompts_error_in_non_interactive_mode ... ok
[INFO] [stdout] test sops::tests::from_path_detects_structured_formats ... ok
[INFO] [stdout] test ui::tests::animated_line_colorizes_each_character ... ok
[INFO] [stdout] test ui::tests::animated_line_is_plain_without_color ... ok
[INFO] [stdout] test ui::tests::command_prints_without_a_status_glyph ... ok
[INFO] [stdout] test ui::tests::flush_does_not_panic ... ok
[INFO] [stdout] test ui::tests::ensure_interactive_is_ok_when_interactive ... ok
[INFO] [stdout] test ui::tests::formatters_render_plainly_without_color ... ok
[INFO] [stdout] test ui::tests::git_flag_is_off_by_default_and_toggled_by_builder ... ok
[INFO] [stdout] test ui::tests::hidden_spinner_when_no_color ... ok
[INFO] [stdout] test ui::tests::accessors_reflect_constructed_flags ... ok
[INFO] [stdout] test ui::tests::pause_is_a_noop_when_not_interactive ... ok
[INFO] [stdout] test ui::tests::banners_render_in_both_color_modes ... ok
[INFO] [stdout] test commands::recipient::tests::add_key_preserves_unrelated_yaml_and_dedupes ... ok
[INFO] [stdout] test ui::tests::formatters_render_with_color ... ok
[INFO] [stdout] test ui::tests::real_spinner_when_color_enabled ... ok
[INFO] [stdout] test ui::tests::wrap_text_wraps_at_word_boundaries ... ok
[INFO] [stdout] test ui::tests::into_other_wraps_standard_errors ... ok
[INFO] [stdout] test ui::tests::resolve_applies_tty_and_no_color_downgrades ... ok
[INFO] [stdout] test ui::tests::new_constructs_from_ambient_environment ... ok
[INFO] [stdout] test tests::dispatch_stub_commands_are_ok ... ok
[INFO] [stdout] test tests::dispatch_doctor_is_ok ... ok
[INFO] [stdout] _sopsy() {
[INFO] [stdout]     local i cur prev opts cmd
[INFO] [stdout]     COMPREPLY=()
[INFO] [stdout]     if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
[INFO] [stdout]         cur="$2"
[INFO] [stdout]     else
[INFO] [stdout]         cur="${COMP_WORDS[COMP_CWORD]}"
[INFO] [stdout]     fi
[INFO] [stdout]     prev="$3"
[INFO] [stdout]     cmd=""
[INFO] [stdout]     opts=""
[INFO] [stdout] 
[INFO] [stdout]     for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
[INFO] [stdout]     do
[INFO] [stdout]         case "${cmd},${i}" in
[INFO] [stdout]             ",$1")
[INFO] [stdout]                 cmd="sopsy"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,approve)
[INFO] [stdout]                 cmd="sopsy__subcmd__approve"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,check)
[INFO] [stdout]                 cmd="sopsy__subcmd__check"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,completion)
[INFO] [stdout]                 cmd="sopsy__subcmd__completion"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,deps)
[INFO] [stdout]                 cmd="sopsy__subcmd__deps"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,doctor)
[INFO] [stdout]                 cmd="sopsy__subcmd__doctor"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,edit)
[INFO] [stdout]                 cmd="sopsy__subcmd__edit"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,init)
[INFO] [stdout]                 cmd="sopsy__subcmd__init"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,join)
[INFO] [stdout]                 cmd="sopsy__subcmd__join"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,list-supported-types)
[INFO] [stdout]                 cmd="sopsy__subcmd__types"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,recipient)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,request-access)
[INFO] [stdout]                 cmd="sopsy__subcmd__join"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,secrets)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy,types)
[INFO] [stdout]                 cmd="sopsy__subcmd__types"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,approve)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__approve"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,check)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__check"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,completion)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__completion"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,deps)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__deps"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,doctor)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__doctor"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,edit)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__edit"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__help"
[INFO] [stderr]      Running tests/check.rs (/opt/rustwide/target/debug/deps/check-8cabd1d7a9101cd3)
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,init)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__init"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,join)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__join"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,recipient)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,secrets)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__secrets"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help,types)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__types"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,add)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,break-glass)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__break__subcmd__glass"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,ci)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__ci"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,keygen)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__keygen"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,list)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__list"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__recipient,remove)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__recipient__subcmd__remove"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__secrets,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__secrets__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__help__subcmd__secrets,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__help__subcmd__secrets__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,add)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,break-glass)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__break__subcmd__glass"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,ci)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__ci"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,keygen)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__keygen"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,list)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__list"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient,remove)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__remove"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,add)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,break-glass)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__break__subcmd__glass"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,ci)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__ci"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,keygen)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__keygen"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,list)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__list"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__recipient__subcmd__help,remove)
[INFO] [stdout]                 cmd="sopsy__subcmd__recipient__subcmd__help__subcmd__remove"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets__subcmd__help,decrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help__subcmd__decrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets__subcmd__help,encrypt)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help__subcmd__encrypt"
[INFO] [stdout]                 ;;
[INFO] [stdout]             sopsy__subcmd__secrets__subcmd__help,help)
[INFO] [stdout]                 cmd="sopsy__subcmd__secrets__subcmd__help__subcmd__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             *)
[INFO] [stdout]                 ;;
[INFO] [stdout]         esac
[INFO] [stdout]     done
[INFO] [stdout] 
[INFO] [stdout]     case "${cmd}" in
[INFO] [stdout]         sopsy)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version init doctor edit join request-access approve recipient secrets encrypt decrypt types list-supported-types check deps completion help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__approve)
[INFO] [stdout]             opts="-y -v -h -V --force --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version [NAMES]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__check)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__completion)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version bash elvish fish powershell zsh"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__decrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__deps)
[INFO] [stdout]             opts="-y -v -h -V --check --dry-run --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__doctor)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__edit)
[INFO] [stdout]             opts="-y -v -h -V --editor --yes --non-interactive --no-color --verbose --git --help --version <FILE> [SOPS_ARGS]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --editor)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__encrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help)
[INFO] [stdout]             opts="init doctor edit join approve recipient secrets encrypt decrypt types check deps completion help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__approve)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__check)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__completion)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__decrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__deps)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__doctor)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__edit)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__encrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__init)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__join)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient)
[INFO] [stdout]             opts="add remove list keygen break-glass ci"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__add)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__break__subcmd__glass)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__ci)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__keygen)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__list)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__recipient__subcmd__remove)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__secrets)
[INFO] [stdout]             opts="encrypt decrypt"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__secrets__subcmd__decrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__secrets__subcmd__encrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__help__subcmd__types)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__init)
[INFO] [stdout]             opts="-y -v -h -V --recipient-name --username --public-key --no-generate --break-glass --no-break-glass --force --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --recipient-name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --username)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --public-key)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__join)
[INFO] [stdout]             opts="-t -y -v -h -V --username --sopsy-file --public-key --without-touch-id --yes --non-interactive --no-color --verbose --git --help --version <NAME> [AGE_ARGS]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --username)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --sopsy-file)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --public-key)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version add remove list keygen break-glass ci help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__add)
[INFO] [stdout]             opts="-y -v -h -V --name --public-key --break-glass --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version [NAME_POS]"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --public-key)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__break__subcmd__glass)
[INFO] [stdout]             opts="-o -y -v -h -V --output --name --force --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__ci)
[INFO] [stdout]             opts="-o -y -v -h -V --output --name --force --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help)
[INFO] [stdout]             opts="add remove list keygen break-glass ci help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__add)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__break__subcmd__glass)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__ci)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__keygen)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__list)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__help__subcmd__remove)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__keygen)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version [AGE_ARGS]..."
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__list)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__recipient__subcmd__remove)
[INFO] [stdout]             opts="-y -v -h -V --name --no-updatekeys --yes --non-interactive --no-color --verbose --git --help --version [NAME_POS]"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version encrypt decrypt help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__decrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__encrypt)
[INFO] [stdout]             opts="-o -y -v -h -V --output --type --yes --non-interactive --no-color --verbose --git --help --version <FILE>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 -o)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --type)
[INFO] [stdout]                     COMPREPLY=($(compgen -W "dotenv yaml json ini binary" -- "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help)
[INFO] [stdout]             opts="encrypt decrypt help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help__subcmd__decrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help__subcmd__encrypt)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__secrets__subcmd__help__subcmd__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         sopsy__subcmd__types)
[INFO] [stdout]             opts="-y -v -h -V --yes --non-interactive --no-color --verbose --git --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]     esac
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
[INFO] [stdout]     complete -F _sopsy -o nosort -o bashdefault -o default sopsy
[INFO] [stdout] else
[INFO] [stdout]     complete -F _sopsy -o bashdefault -o default sopsy
[INFO] [stdout] fi
[INFO] [stdout] test tests::dispatch_deps_and_completion_are_ok ... ok
[INFO] [stdout] test ui::tests::wrap_text_hard_splits_overlong_words ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 112 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[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] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test healthy_repo_passes ... FAILED
[INFO] [stdout] test env_not_ignored_fails ... FAILED
[INFO] [stdout] test missing_sops_yaml_fails ... FAILED
[INFO] [stdout] test tracked_env_fails ... FAILED
[INFO] [stdout] test corrupt_sops_yaml_fails ... FAILED
[INFO] [stdout] test invalid_sopsy_yml_surfaces_error ... ok
[INFO] [stdout] test malformed_encrypted_file_fails ... FAILED
[INFO] [stdout] test no_encrypted_files_passes_vacuously ... FAILED
[INFO] [stdout] test sops_yaml_without_creation_rules_fails ... FAILED
[INFO] [stdout] test unmatched_encrypted_file_fails ... FAILED
[INFO] [stdout] test untracked_encrypted_unmatched_rule_fails ... FAILED
[INFO] [stdout] test no_break_glass_recipient_fails ... FAILED
[INFO] [stdout] test untracked_encrypted_file_is_validated ... FAILED
[INFO] [stdout] test untracked_encrypted_missing_metadata_fails ... FAILED
[INFO] [stdout] test tracked_key_file_fails ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- healthy_repo_passes stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'healthy_repo_passes' (2993) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf5328 - check[6740cd6d9fa5abba]::healthy_repo_passes::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:200:15
[INFO] [stdout]   24:     0x59392ed026be - <check[6740cd6d9fa5abba]::healthy_repo_passes::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfb5e4 - check[6740cd6d9fa5abba]::healthy_repo_passes
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:198:1
[INFO] [stdout]   27:     0x59392ecf4ea7 - check[6740cd6d9fa5abba]::healthy_repo_passes::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:199:25
[INFO] [stdout]   28:     0x59392ed02316 - <check[6740cd6d9fa5abba]::healthy_repo_passes::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- env_not_ignored_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'env_not_ignored_fails' (2992) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf54e6 - check[6740cd6d9fa5abba]::env_not_ignored_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:223:15
[INFO] [stdout]   24:     0x59392ed026ee - <check[6740cd6d9fa5abba]::env_not_ignored_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfb704 - check[6740cd6d9fa5abba]::env_not_ignored_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:220:1
[INFO] [stdout]   27:     0x59392ecf4ed7 - check[6740cd6d9fa5abba]::env_not_ignored_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:221:27
[INFO] [stdout]   28:     0x59392ed02356 - <check[6740cd6d9fa5abba]::env_not_ignored_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- missing_sops_yaml_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'missing_sops_yaml_fails' (2996) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf5b76 - check[6740cd6d9fa5abba]::missing_sops_yaml_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:236:15
[INFO] [stdout]   24:     0x59392ed0277e - <check[6740cd6d9fa5abba]::missing_sops_yaml_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfba64 - check[6740cd6d9fa5abba]::missing_sops_yaml_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:233:1
[INFO] [stdout]   27:     0x59392ecf4f67 - check[6740cd6d9fa5abba]::missing_sops_yaml_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:234:29
[INFO] [stdout]   28:     0x59392ed02416 - <check[6740cd6d9fa5abba]::missing_sops_yaml_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tracked_env_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tracked_env_fails' (3001) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf51a6 - check[6740cd6d9fa5abba]::tracked_env_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:210:15
[INFO] [stdout]   24:     0x59392ed0268e - <check[6740cd6d9fa5abba]::tracked_env_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfb4c4 - check[6740cd6d9fa5abba]::tracked_env_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:207:1
[INFO] [stdout]   27:     0x59392ecf4e77 - check[6740cd6d9fa5abba]::tracked_env_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:208:23
[INFO] [stdout]   28:     0x59392ed022d6 - <check[6740cd6d9fa5abba]::tracked_env_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- corrupt_sops_yaml_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'corrupt_sops_yaml_fails' (2991) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf5982 - check[6740cd6d9fa5abba]::corrupt_sops_yaml_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:249:15
[INFO] [stdout]   24:     0x59392ed0274e - <check[6740cd6d9fa5abba]::corrupt_sops_yaml_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfb944 - check[6740cd6d9fa5abba]::corrupt_sops_yaml_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:246:1
[INFO] [stdout]   27:     0x59392ecf4f37 - check[6740cd6d9fa5abba]::corrupt_sops_yaml_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:247:29
[INFO] [stdout]   28:     0x59392ed023d6 - <check[6740cd6d9fa5abba]::corrupt_sops_yaml_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- malformed_encrypted_file_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'malformed_encrypted_file_fails' (2995) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf5d36 - check[6740cd6d9fa5abba]::malformed_encrypted_file_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:295:15
[INFO] [stdout]   24:     0x59392ed027ae - <check[6740cd6d9fa5abba]::malformed_encrypted_file_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfbb84 - check[6740cd6d9fa5abba]::malformed_encrypted_file_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:292:1
[INFO] [stdout]   27:     0x59392ecf4f97 - check[6740cd6d9fa5abba]::malformed_encrypted_file_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:293:36
[INFO] [stdout]   28:     0x59392ed02456 - <check[6740cd6d9fa5abba]::malformed_encrypted_file_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- no_encrypted_files_passes_vacuously stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'no_encrypted_files_passes_vacuously' (2999) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecfa9d2 - check[6740cd6d9fa5abba]::build_repo_without_encrypted
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:430:22
[INFO] [stdout]   23:     0x59392ecf6606 - check[6740cd6d9fa5abba]::no_encrypted_files_passes_vacuously::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:456:15
[INFO] [stdout]   24:     0x59392ed0286e - <check[6740cd6d9fa5abba]::no_encrypted_files_passes_vacuously::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfc004 - check[6740cd6d9fa5abba]::no_encrypted_files_passes_vacuously
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:453:1
[INFO] [stdout]   27:     0x59392ecf5057 - check[6740cd6d9fa5abba]::no_encrypted_files_passes_vacuously::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:454:41
[INFO] [stdout]   28:     0x59392ed02556 - <check[6740cd6d9fa5abba]::no_encrypted_files_passes_vacuously::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- sops_yaml_without_creation_rules_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'sops_yaml_without_creation_rules_fails' (3000) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecfa9d2 - check[6740cd6d9fa5abba]::build_repo_without_encrypted
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:430:22
[INFO] [stdout]   23:     0x59392ecf6edf - check[6740cd6d9fa5abba]::sops_yaml_without_creation_rules_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:470:15
[INFO] [stdout]   24:     0x59392ed028ce - <check[6740cd6d9fa5abba]::sops_yaml_without_creation_rules_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfc244 - check[6740cd6d9fa5abba]::sops_yaml_without_creation_rules_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:467:1
[INFO] [stdout]   27:     0x59392ecf50b7 - check[6740cd6d9fa5abba]::sops_yaml_without_creation_rules_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:468:44
[INFO] [stdout]   28:     0x59392ed025d6 - <check[6740cd6d9fa5abba]::sops_yaml_without_creation_rules_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- unmatched_encrypted_file_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'unmatched_encrypted_file_fails' (3003) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf6122 - check[6740cd6d9fa5abba]::unmatched_encrypted_file_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:263:15
[INFO] [stdout]   24:     0x59392ed0280e - <check[6740cd6d9fa5abba]::unmatched_encrypted_file_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfbdc4 - check[6740cd6d9fa5abba]::unmatched_encrypted_file_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:259:1
[INFO] [stdout]   27:     0x59392ecf4ff7 - check[6740cd6d9fa5abba]::unmatched_encrypted_file_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:260:36
[INFO] [stdout]   28:     0x59392ed024d6 - <check[6740cd6d9fa5abba]::unmatched_encrypted_file_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- untracked_encrypted_unmatched_rule_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'untracked_encrypted_unmatched_rule_fails' (3006) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf9c53 - check[6740cd6d9fa5abba]::build_untracked_encrypted
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:325:22
[INFO] [stdout]   23:     0x59392ecf704d - check[6740cd6d9fa5abba]::untracked_encrypted_unmatched_rule_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:408:15
[INFO] [stdout]   24:     0x59392ed028fe - <check[6740cd6d9fa5abba]::untracked_encrypted_unmatched_rule_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfc364 - check[6740cd6d9fa5abba]::untracked_encrypted_unmatched_rule_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:405:1
[INFO] [stdout]   27:     0x59392ecf50e7 - check[6740cd6d9fa5abba]::untracked_encrypted_unmatched_rule_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:406:46
[INFO] [stdout]   28:     0x59392ed02616 - <check[6740cd6d9fa5abba]::untracked_encrypted_unmatched_rule_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stderr] error: test failed, to rerun pass `--test check`
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- no_break_glass_recipient_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'no_break_glass_recipient_fails' (2997) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf5ef6 - check[6740cd6d9fa5abba]::no_break_glass_recipient_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:308:15
[INFO] [stdout]   24:     0x59392ed027de - <check[6740cd6d9fa5abba]::no_break_glass_recipient_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfbca4 - check[6740cd6d9fa5abba]::no_break_glass_recipient_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:305:1
[INFO] [stdout]   27:     0x59392ecf4fc7 - check[6740cd6d9fa5abba]::no_break_glass_recipient_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:306:36
[INFO] [stdout]   28:     0x59392ed02496 - <check[6740cd6d9fa5abba]::no_break_glass_recipient_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- untracked_encrypted_file_is_validated stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'untracked_encrypted_file_is_validated' (3004) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf9c53 - check[6740cd6d9fa5abba]::build_untracked_encrypted
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:325:22
[INFO] [stdout]   23:     0x59392ecf6823 - check[6740cd6d9fa5abba]::untracked_encrypted_file_is_validated::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:379:15
[INFO] [stdout]   24:     0x59392ed0289e - <check[6740cd6d9fa5abba]::untracked_encrypted_file_is_validated::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfc124 - check[6740cd6d9fa5abba]::untracked_encrypted_file_is_validated
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:375:1
[INFO] [stdout]   27:     0x59392ecf5087 - check[6740cd6d9fa5abba]::untracked_encrypted_file_is_validated::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:376:43
[INFO] [stdout]   28:     0x59392ed02596 - <check[6740cd6d9fa5abba]::untracked_encrypted_file_is_validated::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- untracked_encrypted_missing_metadata_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'untracked_encrypted_missing_metadata_fails' (3005) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf9c53 - check[6740cd6d9fa5abba]::build_untracked_encrypted
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:325:22
[INFO] [stdout]   23:     0x59392ecf71bd - check[6740cd6d9fa5abba]::untracked_encrypted_missing_metadata_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:420:15
[INFO] [stdout]   24:     0x59392ed0292e - <check[6740cd6d9fa5abba]::untracked_encrypted_missing_metadata_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfc484 - check[6740cd6d9fa5abba]::untracked_encrypted_missing_metadata_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:417:1
[INFO] [stdout]   27:     0x59392ecf5117 - check[6740cd6d9fa5abba]::untracked_encrypted_missing_metadata_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:418:48
[INFO] [stdout]   28:     0x59392ed02656 - <check[6740cd6d9fa5abba]::untracked_encrypted_missing_metadata_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tracked_key_file_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tracked_key_file_fails' (3002) panicked at tests/check.rs:29:10:
[INFO] [stdout] age-keygen should be installed: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59392edec341 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59392edec341 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59392edec341 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59392ee02cda - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59392ee02cda - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x59392edf1eec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x59392edf1eec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x59392edc8986 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59392edc8986 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59392ede38e9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59392ed0f770 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x59392ed0f770 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x59392ede3aa2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x59392ede3aa2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x59392edc8a32 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x59392edc0279 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59392edc962d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x59392ee0352c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59392ee032a2 - core[6883ba1bc0fe4ed1]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1870:5
[INFO] [stdout]   20:     0x59392ecfcab3 - <core[6883ba1bc0fe4ed1]::result::Result<std[73adb7dc35730857]::process::Output, core[6883ba1bc0fe4ed1]::io::error::Error>>::expect
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1183:23
[INFO] [stdout]   21:     0x59392ecf94ef - check[6740cd6d9fa5abba]::generate_age_key
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:29:10
[INFO] [stdout]   22:     0x59392ecf8078 - check[6740cd6d9fa5abba]::build_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:124:22
[INFO] [stdout]   23:     0x59392ecf56bd - check[6740cd6d9fa5abba]::tracked_key_file_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:281:15
[INFO] [stdout]   24:     0x59392ed0271e - <check[6740cd6d9fa5abba]::tracked_key_file_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59392ed4dbae - serial_test[78bfc443638ceb23]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.5.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   26:     0x59392ecfb824 - check[6740cd6d9fa5abba]::tracked_key_file_fails
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:278:1
[INFO] [stdout]   27:     0x59392ecf4f07 - check[6740cd6d9fa5abba]::tracked_key_file_fails::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/check.rs:279:28
[INFO] [stdout]   28:     0x59392ed02396 - <check[6740cd6d9fa5abba]::tracked_key_file_fails::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x59392ed02aab - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   30:     0x59392ed02aab - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   31:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   32:     0x59392ed100f5 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   33:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   34:     0x59392ed100f5 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   35:     0x59392ed100f5 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   36:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   37:     0x59392ed100f5 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   38:     0x59392ed0aba4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   39:     0x59392ed0aba4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   40:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   41:     0x59392ed13242 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   42:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   43:     0x59392ed13242 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   44:     0x59392ed13242 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   45:     0x59392ed13242 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   46:     0x59392ed13242 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x59392edeb91f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   48:     0x59392edeb91f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   49:     0x73dafb158aa4 - <unknown>
[INFO] [stdout]   50:     0x73dafb1e5a64 - clone
[INFO] [stdout]   51:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     corrupt_sops_yaml_fails
[INFO] [stdout]     env_not_ignored_fails
[INFO] [stdout]     healthy_repo_passes
[INFO] [stdout]     malformed_encrypted_file_fails
[INFO] [stdout]     missing_sops_yaml_fails
[INFO] [stdout]     no_break_glass_recipient_fails
[INFO] [stdout]     no_encrypted_files_passes_vacuously
[INFO] [stdout]     sops_yaml_without_creation_rules_fails
[INFO] [stdout]     tracked_env_fails
[INFO] [stdout]     tracked_key_file_fails
[INFO] [stdout]     unmatched_encrypted_file_fails
[INFO] [stdout]     untracked_encrypted_file_is_validated
[INFO] [stdout]     untracked_encrypted_missing_metadata_fails
[INFO] [stdout]     untracked_encrypted_unmatched_rule_fails
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1 passed; 14 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.02s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b", kill_on_drop: false }`
[INFO] [stdout] 8ca44a396cc9a2aa7410060ea96207dc98740e4cedd050a68b9deab40ea3c19b
