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

IJHack / QtPass / 27688530046
55%

Build:
DEFAULT BRANCH: main
Ran 17 Jun 2026 12:27PM UTC
Jobs 1
Files 80
Run time 1min
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

17 Jun 2026 12:21PM UTC coverage: 57.501% (+0.02%) from 57.477%
27688530046

push

github

web-flow
refactor(pass): inject AppSettings into Pass hierarchy (PR A of #1511) (#1551)

* refactor(pass): inject AppSettings into Pass hierarchy (PR A of #1511)

- Pass::init(AppSettings) replaces no-arg init(); backends store
  m_settings and read executables/paths from it instead of calling
  QtPassSettings getters at runtime
- ImitatePass::pgit/pgpg converted from static free functions to const
  member functions; grepMatchFile (static) inlines the wslpath check
  using its gpgExe parameter
- PassBackendFactory::getPass() loads AppSettings via QtPassSettings::load()
  and normalises passStore via QtPassSettings::getPassStore(), then passes
  the snapshot to pass->init(s)
- realpass.cpp and imitatepass.cpp no longer include qtpasssettings.h
- Integration test and tst_util updated: call pass.init(s) after
  configuring QtPassSettings so m_settings is populated before updateEnv()

Two QtPassSettings calls remain in passbackendfactory.cpp (load + getPassStore);
removal of getGpgIdPath's QtPassSettings dependency is deferred to PR C.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: apply CodeRabbit auto-fixes

Fixed 2 file(s) based on 3 unresolved review comments.

Co-authored-by: CodeRabbit <noreply@coderabbit.ai>

* fix: address review findings on AppSettings injection

- keygendialog: pass getGpgExecutable() to getDefaultKeyTemplate() so
  gpgSupportsEd25519 uses the configured binary, not the "gpg" fallback
  (P1: silent regression on systems where gpg is GPG 1.x but user
  configured gpg2)
- QtPassSettings::load(): normalise passStore (absolutePath + trailing
  slash) so callers get a usable path without a separate getPassStore()
  override; SettingsSerializer::load() preserves raw stored value for
  round-trip fidelity (P2: duplicate override pattern removed)
- passbackendfactory: drop s.passStore = getPassStore() override; inline
  mkdir for first-run directory creation
- pass.cpp: fix clang-format violations (ColumnLimit=80 line breaks... (continued)

52 of 92 new or added lines in 6 files covered. (56.52%)

13 existing lines in 6 files now uncovered.

3990 of 6939 relevant lines covered (57.5%)

23.81 hits per line

Uncovered Changes

Lines Coverage ∆ File
19
53.72
-0.1% src/imitatepass.cpp
15
1.41
-0.18% src/realpass.cpp
6
69.62
2.53% src/pass.cpp

Coverage Regressions

Lines Coverage ∆ File
5
96.15
-0.88% src/qtpasssettings.cpp
3
53.72
-0.1% src/imitatepass.cpp
2
69.62
2.53% src/pass.cpp
1
95.24
1.12% src/passbackendfactory.cpp
1
71.43
-14.29% src/passwordconfiguration.h
1
1.41
-0.18% src/realpass.cpp
Jobs
ID Job ID Ran Files Coverage
1 27688530046.1 17 Jun 2026 12:27PM UTC 80
57.5
GitHub Action Run
Source Files on build 27688530046
  • Tree
  • List 80
  • Changed 11
  • Source Changed 10
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #27688530046
  • e863ac92 on github
  • Prev Build on main (#27652312625)
  • Next Build on main (#27691522006)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc