Repository navigation
fix: build enpass-cli from pinned commit and stop reporting false success - #186
Merged
wpfleger96 merged 3 commits intoSep 27, 2026
Merged
Conversation
The pinned install passed --tag to gh release download, which takes the tag positionally, so it never succeeded. v1.12.0 also lacks -exact, which load-tf-secrets uses, and upstream has not released since because its release build fails. Build from upstream cfb4a83 with the version injected so the version check still detects drift.
Component.apply() results were discarded by install, so failed package, config, extension, and script operations still ended in success messages and exit 0. Components now return False on any failure, and install, setup, upgrade, and the packages/configs groups print a failure summary and exit 1.
… build setup's first step now installs only required packages and languages, so on a fresh machine optional packages that need Go (enpass-cli) wait for step 3 instead of failing and marking setup as errored. The enpass-cli build forces cgo so a missing compiler fails loudly rather than producing a binary without the sqlcipher driver, and state-DB results are keyed per database so one editor's error isn't overwritten by another's success.
wpfleger96
deleted the
wpfleger96/fix-enpass-cli-install-and-false-success
branch
September 27, 2026 18:42
wpfleger96
pushed a commit
that referenced
this pull request
Sep 27, 2026
🤖 I have created a release *beep* *boop* --- ## [0.70.1](v0.70.0...v0.70.1) (2026-09-27) ### Bug Fixes * build enpass-cli from pinned commit and stop reporting false success ([#186](#186)) ([4f04512](4f04512)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: wpfleger-release-bot[bot] <282999489+wpfleger-release-bot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two fixes surfaced by an enpass-cli install that failed but still printed
✓ Package installation complete.enpass-cli install. The pinned install ran
gh release download --repo hazcod/enpass-cli --tag v1.12.0, butgh release downloadtakes the tag positionally, so it never succeeded on either platform. Fixing the flag alone isn't enough: v1.12.0 lacks-exact, whichload-tf-secretsuses for the AWS lookups, and upstream hasn't published a release since because its release build fails on the Windows targets. Both platforms now build from upstream commitcfb4a83:go install ...@<full sha>with-X main.version=cfb4a83, so theversion/version_cmddrift check still works (the binary logsversion=cfb4a83to stderr, which the check reads).gowith a clear message and setsCGO_ENABLED=1so a missing compiler fails the build instead of producing a binary that can't open vaults. Go's install dir is prepended toPATH(/usr/local/go/binon Linux, Homebrew bins on macOS) and the temp build dir is cleaned up viatrap.load-tf-secrets's "not found" hint now points atshell-configs install(which installs Go) rather thanpackages install.Once enpass-cli#163 merges and v1.13.0 is published, this can go back to
gh release download v1.13.0 --repo hazcod/enpass-cli.False success reporting.
installdiscarded everyComponent.apply()result, and severalapply()implementations returnedTrueafter failures.RequiredPackagesComponent,OptionalPackagesComponent,ConfigsComponent, andExtensionsComponentreturnFalseon any failure;ScriptsComponentprints the install/orphan-removal errors it used to discard.ConfigsComponentcountsOperationResult.ERRORacross configs, additional files, orphan removals, preferences, and state-DB writes, and state-DB results are keyed per database so a VS Code error isn't overwritten by a Cursor success on the same key.install's body is nowrun_install(ctx, components) -> bool. The command printsInstall completed with errorsand exits 1 on failure;setupandupgradecallrun_installdirectly instead of catchingSystemExit. A component that raises in any stage is reported and counted as failed while the remaining stages still run, and parallel spinners show(failed)whenapply()returnsFalse.setupstep 1 now installs only required packages and languages; optional packages (enpass-cli needs Go) are installed in step 3 after languages, so a fresh machine doesn't end in a spurious failure. Script install errors are reported, and setup ends withSetup completed with errors+ exit 1 when anything failed. Having no package manager still aborts setup.upgradeexits 1 when a version/update check or an upgrade fails, and printsUpgrade succeeded, but applying configs reported errorswhen only the follow-up install failed.packages install/uninstallshare aprint_batch_summaryhelper (N installed, M failed) and exit 1 on failure;configs installandcleanup(partial backup removal) exit 1 too.Behavior change:
install, and thereforeupgrade, now exit 1 on machines where gh auth or its required OAuth scopes are missing, including non-interactive runs, sinceGhAuthComponentreports that as a failure.Related: enpass-cli#163