• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IJHack / QtPass
63%

Build:
DEFAULT BRANCH: main
Repo Added 12 Mar 2017 11:37AM UTC
Files 81
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
  • main
  • 1.3
  • CMake
  • HEAD
  • Noettore-feature/renameEntry
  • add-coverage-to-docs
  • add-unit-tests-coverage
  • ai-findings-autofix/FAQ.md
  • ai-findings-autofix/localization-localization_sv_SE.ts
  • ai-findings-autofix/opencode-skills-qtpass-localization-SKILL.md
  • ai-findings-autofix/sign-release-assets.sh
  • ai-findings-autofix/src-executor.cpp
  • ai-findings-autofix/src-imitatepass.cpp
  • ai-findings-autofix/src-mainwindow.cpp
  • ai-findings-autofix/src-pass.cpp
  • ai-findings-autofix/src-passworddialog.cpp
  • ai-findings-autofix/src-passworddisplaypanel.cpp
  • ai-findings-autofix/src-qprogressindicator.cpp
  • ai-findings-autofix/src-qtpasssettings.h
  • ai-findings-autofix/src-settingsconstants.cpp
  • ai-findings-autofix/src-src.pro
  • ai-findings-autofix/src-storemodel.cpp
  • ai-findings-autofix/src-storemodel.h
  • ai-findings-autofix/src-trayicon.cpp
  • ai-findings-autofix/src-usersdialog.cpp
  • ai-findings-autofix/src-util.cpp
  • ai-findings-autofix/tests-auto-configdialog-configdialog.pro
  • ai-findings-autofix/tests-auto-executor-tst_executor.cpp
  • ai-findings-autofix/tests-auto-exportpublickeydialog-exportpublickeydialog.pro
  • ai-findings-autofix/tests-auto-gpgkeystate-tst_gpgkeystate.cpp
  • ai-findings-autofix/tests-auto-keygendialog-keygendialog.pro
  • ai-findings-autofix/tests-auto-locale-tst_locale.cpp
  • ai-findings-autofix/tests-auto-model-tst_storemodel.cpp
  • ai-findings-autofix/tests-auto-settings-tst_settings.cpp
  • ai-findings-autofix/tests-auto-simpletransaction-tst_simpletransaction.cpp
  • ai-findings-autofix/tests-auto-trayicon-trayicon.pro
  • ai-findings-autofix/tests-auto-ui-tst_ui.cpp
  • ai-findings-autofix/tests-auto-util-tst_util.cpp
  • chore/bump-super-linter-v8
  • chore/ci-path-filtering
  • chore/desktop-translations
  • chore/editorconfig
  • chore/expand-skills
  • chore/improve-gpgkeystate-tests
  • chore/locales-and-translation-fixes
  • chore/plist-boolean-true
  • chore/remove-dead-code-copyDir
  • chore/rename-ar_MA-to-ar
  • chore/rename-mainwindow-members-m-prefix
  • chore/rename-single-variant-locales
  • chore/test-pro-cleanup
  • chore/tst-settings-and-util-nits
  • chore/untrack-test-binaries
  • chore/update-gitignore-and-skills
  • chore/update-localization
  • chore/update-localization-strings
  • chore/update-skills-learnings
  • clang-tidy-clazy
  • cleanup/as-const-and-qapp
  • codeantai-changesd408a9d3eaa4cc4ef949208738241d1a937f2349lrvwl
  • codeantai-changesd408a9d3eaa4cc4ef949208738241d1a937f2349vqfqc
  • codecov-tests
  • codefactor-fixes
  • coderabbitai/utg/3a62426
  • coderabbitai/utg/9048d2b
  • coderabbitai/utg/ebfd172
  • coverity-fixes
  • coverity_scan
  • dependabot/github_actions/codecov/codecov-action-6
  • develop
  • docs/add-ai-findings-to-skills
  • docs/add-all-docstrings
  • docs/add-filecontent-docstrings
  • docs/add-qtpass-docstrings
  • docs/faq-improvements
  • docs/improve-markdown
  • docs/keygendialog-ownership
  • docs/qmake6-docs
  • docs/signing-key-help
  • docs/update-agents
  • docs/update-skills
  • docs/windows-getting-started
  • feat/1034-status-bar
  • feat/239-droplogic-tests
  • feat/252-process-output-area
  • feat/252-process-output-polish
  • feat/422-share-folder
  • feat/add-spanish-regional-variants
  • feat/integration-tests
  • feat/multi-template-support
  • feat/open-in-browser-1516
  • feat/ssh-auth-sock-543
  • feat/template-dropdown
  • feat/template-ui
  • feature/auto-detect-git
  • feature/gpg-ed25519
  • feature/pass-grep-109
  • feature/reencrypt-button
  • fix-skills-headers
  • fix/1034-profile-creation
  • fix/1034-status-bar-v3
  • fix/112-git-per-profile
  • fix/1145-add-profile-knowledge
  • fix/1145-agents-update
  • fix/132-edit-template-fields
  • fix/1598-keygen-start-failure-feedback
  • fix/247-gpg-key-expired-error-message
  • fix/248-profile-change-stale-path
  • fix/422-share-actions
  • fix/450-user-manager-forgets-checked-keys
  • fix/780-validate-custom-charset
  • fix/927-signed-commit
  • fix/add-integration-tests
  • fix/add-missing-docs
  • fix/address-ai-findings
  • fix/ai-findings-10-more
  • fix/ai-findings-main-cpp
  • fix/ai-findings-pass-storemodel
  • fix/ai-findings-util-cpp
  • fix/ai-findings-util-tests
  • fix/ai-github-skill-findings
  • fix/ai-test-findings
  • fix/audit-imitatepass-mainwindow
  • fix/audit-p1-quick
  • fix/audit-quality-sweep
  • fix/boolean-clarity-gpgkeystate
  • fix/browser-context-menu-transparency
  • fix/checkConfig-comment
  • fix/chi-square-constant-naming
  • fix/clang-format-docstrings
  • fix/clang-format-tst-integration
  • fix/clang-tidy-bugprone
  • fix/clang-tidy-cleanup
  • fix/clangd-findings
  • fix/cleanup-frameLayout-reserve
  • fix/cleanup-todos
  • fix/clear-explicit-spacer
  • fix/clipboard-autoclear-navigation
  • fix/clipboard-type-comment
  • fix/code-quality-findings-v2
  • fix/code-quality-fixes
  • fix/code-quality-issues
  • fix/code-quality-storemodel-settings
  • fix/code-review-findings-mainwindow
  • fix/codeql-findings-tst-util
  • fix/config-validation-refactor
  • fix/configdialog-settings-corruption
  • fix/constructor-docs
  • fix/copilot-findings
  • fix/copilot-findings-2
  • fix/copilot-test-findings
  • fix/coverity-scan-issues
  • fix/coverity-scan-issues-2
  • fix/dark-mode-unused-func
  • fix/desktop-file-name
  • fix/estonian-translation
  • fix/executor-failed-to-start
  • fix/faq-openssh-url
  • fix/faq-typos
  • fix/fieldheight-comment
  • fix/flaky-bounded-random
  • fix/focusinput-defer-show-latch
  • fix/focusinput-pre-show-activation
  • fix/focusinput-race-on-fresh-init
  • fix/gpg-id-permissions
  • fix/gpg-id-validation
  • fix/gpg-keygen-timeout
  • fix/gpg-keygen-timeout-v2
  • fix/hide-git-directory
  • fix/imitatepass-git-reencrypt
  • fix/import-key-dialog
  • fix/improve-gpg-tests
  • fix/improve-gpgkeystate-tests-v2
  • fix/improve-util-tests
  • fix/integration-tests-ci-gpg-agent
  • fix/invalidate-filter-deprecation
  • fix/isValidKeyId-complexity
  • fix/keygen-dialog-use-after-free
  • fix/keygen-feedback
  • fix/klipper-password-hint
  • fix/let-wm-handle-dialog-position
  • fix/locale-fallback
  • fix/locale-test-improvements
  • fix/localization-cleanup
  • fix/main-cpp-ai-findings
  • fix/malformed-comment-spelling
  • fix/memory-leak-qr-popup-dialog
  • fix/misc-high-batch4
  • fix/misra-precedence
  • fix/modernize-util
  • fix/nesting-depth
  • fix/nesting-depth-2
  • fix/new-locales-cleanup
  • fix/password-generation
  • fix/passworddialog-header-docs
  • fix/passworddisplaypanel-nullcheck-cache
  • fix/path-traversal-hardening
  • fix/plist-duplicate-nsprincipalclass
  • fix/plist-remove-deprecated-keys
  • fix/post-merge-cleanups
  • fix/profile-ux-improvements
  • fix/protocol-regex-global
  • fix/qprogressindicator-license
  • fix/qstring-assertions
  • fix/qt5-metatype-guard
  • fix/qt6-compat-and-style
  • fix/qt610-filter-change
  • fix/qtpasssettings-ai-findings
  • fix/random-password-test
  • fix/rebase-to-main
  • fix/reencryption-security
  • fix/refactor-complex-methods
  • fix/regex-optimization-test-cleanup
  • fix/remaining-test-issues
  • fix/remove-redundant-move-resize
  • fix/remove-stale-todos
  • fix/resolve-all-todos
  • fix/review-findings-cleanup
  • fix/segfault-focusInput-null-check
  • fix/settings-comment
  • fix/sign-release-improvements
  • fix/sign-release-nullglob
  • fix/signing-key-tooltip-clarity
  • fix/simpletransaction-test-findings
  • fix/simpletransaction-test-v2
  • fix/simpletransaction-test-v3
  • fix/simpletransaction-test-v4
  • fix/simpletransaction-test-v5
  • fix/simpletransaction-test-v6
  • fix/single-app-conditional
  • fix/slots-signals-style
  • fix/spelling-comments
  • fix/spelling-docs-qtpasssettings
  • fix/spelling-typos
  • fix/split-plural-grep-message
  • fix/ssh-auth-sock-override-warn
  • fix/stack-allocated-qfileinfo
  • fix/store-matches-single-pass
  • fix/storemodel-mime-type-rfc
  • fix/tautology-gpg-test
  • fix/template-field-parsing
  • fix/test-ai-findings
  • fix/test-assertions
  • fix/test-cleanup-verification
  • fix/test-constants-messages
  • fix/test-file-open-verification
  • fix/test-file-operation-verification
  • fix/test-file-operations
  • fix/test-improvements
  • fix/test-naming-cleanup
  • fix/test-profile-defaults
  • fix/test-tautologies
  • fix/test-timeout-cleanup
  • fix/test-util-findings
  • fix/tests-cxx17-make-unique
  • fix/theme-aware-button-icons
  • fix/transparent-context-menu
  • fix/trayicon-close-always-quits
  • fix/tst-util-more-findings
  • fix/ui-null-check
  • fix/ui-processoutput-misplaced
  • fix/unchecked-return
  • fix/unused-out-parameter
  • fix/userinfo-docs
  • fix/usersdialog-ai-findings
  • fix/usersdialog-cpp-ai-findings
  • fix/usersdialog-docstrings
  • fix/usersdialog-expiry-check
  • fix/usersdialog-foreach-ref
  • fix/usersdialog-message
  • fix/usersdialog-params
  • fix/usersdialog-perf
  • fix/usersdialog-readability
  • fix/usersdialog-static-vars
  • fix/util-and-qtpass-cleanup
  • fix/util-comment-and-tests
  • fix/util-readability
  • fix/util-redundant-and-docs
  • fix/wsl-wslpath-shim
  • generic-skills
  • i18n/add-6-languages
  • i18n/add-bn
  • i18n/add-fa
  • i18n/add-hi
  • i18n/add-mr
  • i18n/add-pa_IN
  • i18n/add-sw
  • i18n/add-te
  • i18n/add-th
  • i18n/add-ur
  • i18n/add-vi
  • insecure_password_generation
  • licensing-update
  • localization-updates-with-qwen
  • master
  • more-tests
  • perf/usersdialog-optimizations
  • pr/771
  • qtpass-test-skill
  • refactor/appsettings-member-cache
  • refactor/appsettings-serializer-1511
  • refactor/cleanup-1510
  • refactor/clipboard-mime-helper
  • refactor/configdialog-appsettings-1511
  • refactor/configdialog-snapshot
  • refactor/delete-dead-getters
  • refactor/delete-dead-setters
  • refactor/executor-env-qprocessenvironment
  • refactor/grep-controller-1512
  • refactor/grep-dialect-doc-1513
  • refactor/init-executables-appsettings
  • refactor/init-fresh-install-appsettings
  • refactor/inject-userdialog
  • refactor/int-string-roundtrip-tests
  • refactor/listkeys-parsing
  • refactor/mainwindow-appsettings-snapshots
  • refactor/mainwindow-naming
  • refactor/no-defaults-on-virtuals
  • refactor/pass-execute-hook-1513
  • refactor/pass-inject-appsettings
  • refactor/passbackendfactory-1513
  • refactor/password-display-panel-1512
  • refactor/passworddisplaypanel-readability
  • refactor/pathvalidator-1514
  • refactor/qtpass-appsettings-snapshots
  • refactor/qtpass-init-snapshot
  • refactor/qtpasssettings-loadsave-facade-1511
  • refactor/realpass-movecopy-1513
  • refactor/select-profile-appsettings
  • refactor/settings-tests-bool-roundtrip
  • refactor/simplify-gpgconf-resolver
  • refactor/sshauthsock-module-1514
  • refactor/storemodel-drop-1514
  • refactor/storemodel-rootindex-1512
  • refactor/templateio-1514
  • refactor/uistate-watchdog-1512
  • refactor/usersdialog-colors
  • refactor/usersdialog-constructor
  • refactor/util-raw-string
  • refactor/wire-appsettings-dialogs
  • refactor/wire-appsettings-util-dialogs
  • refactor/wire-passstore-static-chain
  • release
  • release/1.6.0
  • release/v1.7.0
  • signing-script
  • skill/add-merge-check-to-pr-checklist
  • skill/add-prettier-check-to-pr-checklist
  • skill/fix-patterns
  • skill/fix-pr-checklist-v3
  • test-coverage-v2
  • test/add-util-tests
  • test/configdialog-keygendialog-tests
  • test/coverage-improvements
  • test/coverage-v2
  • test/executor-async-tests
  • test/executor-coverage
  • test/executor-review-fix
  • test/gpgkeystate-coverage
  • test/gpgkeystate-passwordconfig-tests
  • test/gpgkeystate-storemodel-tests
  • test/grepsearchcontroller-cleanup
  • test/gui-e2e-modal-edit
  • test/gui-e2e-tree-decrypt
  • test/mainwindow-unit-tests
  • test/more-coverage
  • test/more-coverage-fixes
  • test/more-edge-case-tests
  • test/more-filecontent-coverage
  • test/multi-recipient-e2e
  • test/passbackendfactory-unit-tests
  • test/passwordconfig-filecontent-tests
  • test/passworddisplaypanel-cleanup
  • test/settings-cleanup
  • test/settings-coverage
  • test/userinfo-coverage
  • test/userinfo-profileinit-tests
  • test/usersdialog-list-filter
  • test/util-comment-fix
  • test/util-template-tests
  • tests/configdialog
  • tests/configdialog-ssh-auth-sock-validation
  • tests/grep-skips-undecryptable
  • tests/keygendialog
  • tests/passworddialog-gaps
  • tests/storemodel-drop
  • tests/trayicon
  • v1.2.0
  • v1.2.1
  • v1.2.2
  • v1.2.3
  • v1.3.0
  • v1.3.1
  • v1.3.2
  • weblate-qtpass-qtpass

04 Jul 2026 08:58AM UTC coverage: 62.904% (+1.2%) from 61.727%
28701231107

push

github

web-flow
test: GUI end-to-end — edit an entry through the modal PasswordDialog (#1612)

Second GUI flow, this time exercising a modal dialog. Double-clicks a tree
entry to open the modal PasswordDialog, then drives it from a polling QTimer:
it waits for the asynchronous Show to populate the decrypted content (so it
respects the "don't save before loaded" guard), sets a new password, and
accepts. The test then confirms the store entry was rewritten (Show returns the
new password, not the old one).

The poller has an attempts guard that rejects the dialog if content never
loads, so the modal loop can never hang the test. on_treeView_doubleClicked()
checks the tree's current index, so the entry is selected first. Verified
stable over repeated runs.


Claude-Session: https://claude.ai/code/session_01JuQsrHonihp1nARE7bzstc

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

4224 of 6715 relevant lines covered (62.9%)

49.33 hits per line

Relevant lines Covered
Build:
Build:
6715 RELEVANT LINES 4224 COVERED LINES
49.33 HITS PER LINE
Source Files on main
  • Tree
  • List 81
  • Changed 8
  • Source Changed 2
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
28701231107 main test: GUI end-to-end — edit an entry through the modal PasswordDialog (#1612) Second GUI flow, this time exercising a modal dialog. Double-clicks a tree entry to open the modal PasswordDialog, then drives it from a polling QTimer: it waits for th... push 04 Jul 2026 09:04AM UTC web-flow github
62.9
28700252854 main test: GUI end-to-end — selecting a tree entry decrypts into the panel (#1611) * test: GUI end-to-end — selecting a tree entry decrypts into the panel First test that drives the real QtPass UI. It inserts a real entry, constructs the MainWindow o... push 04 Jul 2026 08:22AM UTC web-flow github
61.73
28698298334 main test: e2e coverage for multi-recipient encryption and per-folder re-encryption (#1610) Extends the integration harness with a second independent GPG key and helpers to inspect a .gpg file's recipient key IDs (gpg --list-packets) and a key's encry... push 04 Jul 2026 06:58AM UTC web-flow github
59.63
28679204173 main test: cover UsersDialog key listing and filtering (#1609) UsersDialog had no tests. Its constructor loads GPG keys (and pops a modal error dialog when none are found), so it needs a real keyring — added to the integration suite, which already pro... push 03 Jul 2026 07:17PM UTC web-flow github
59.63
28677369139 main test: add unit tests for PassBackendFactory backend selection (#1608) PassBackendFactory routes QtPass to RealPass (the pass CLI) or ImitatePass (direct gpg/git) and caches the choice, but had no dedicated tests. Adds a tst_passbackendfactory bin... push 03 Jul 2026 06:29PM UTC web-flow github
56.77
28659639755 main fix: keep clipboard autoclear tracking when navigating between entries (#1607) * fix: keep clipboard autoclear tracking when navigating between entries clippedText records what copyTextToClipboard() placed on the clipboard so the autoclear timer... push 03 Jul 2026 12:15PM UTC web-flow github
56.75
28657019015 main fix: check process start for stdin-less commands so the queue can't stall (#1606) Executor::executeNext() only ran waitForStarted() for commands that carry stdin. A command WITHOUT stdin (most git/gpg/pass invocations) that failed to start emitte... push 03 Jul 2026 11:21AM UTC web-flow github
56.72
28650029157 main fix: prevent PasswordDialog content duplication and premature-save data loss (#1605) * fix: prevent PasswordDialog content duplication and premature-save data loss Two data-integrity bugs when editing an existing entry: - setPassword() populate... push 03 Jul 2026 09:05AM UTC web-flow github
56.73
28647196804 main fix: correct ImitatePass git re-encryption recipients, CWD, and broken copy (#1604) * fix: correct ImitatePass git re-encryption recipients, CWD, and broken copy Three defects in the ImitatePass git/gpg re-encryption path: - verifyGpgIdForDir()... push 03 Jul 2026 08:09AM UTC web-flow github
56.73
28634577885 main fix: prevent use-after-free of the keygen dialog pointer (#1603) * fix: prevent use-after-free of the keygen dialog pointer The keygen dialog is created on the caller's stack (ConfigDialog:: on_pushButtonGenerateKey_clicked runs KeygenDialog d; ... push 03 Jul 2026 02:38AM UTC web-flow github
56.4
See All Builds (2073)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc