Skip to content

fix(cloud): enable keyring native backends so credentials persist#16

Merged
proofofprints merged 1 commit into
mainfrom
fix/keyring-persistence
Jun 7, 2026
Merged

fix(cloud): enable keyring native backends so credentials persist#16
proofofprints merged 1 commit into
mainfrom
fix/keyring-persistence

Conversation

@proofofprints
Copy link
Copy Markdown
Collaborator

Problem

keyring = "3" with no backend feature → keyring 3.x silently uses an in-memory mock store, so cloud login does not survive an app restart (re-login every launch).

Fix

One-line Cargo.toml change enabling the platform-native backends:

keyring = { version = "3", features = ["windows-native", "apple-native", "sync-secret-service"] }

The save/load/restore code (cloud/auth.rs service popmanager-cloud, restore block in lib.rs) was already correct and wired.

Verification

  • cargo check ✅ (Cargo.lock now pulls windows-native + secret-service backends)
  • npx tsc --noEmit
  • Runtime: user to confirm creds land in Windows Credential Manager and survive restart (nothing to migrate — mock store was empty).

Part of the v1.6 alerts/UX polish batch.

keyring 3.x with no backend feature silently uses an in-memory mock
store, so cloud login never survived an app restart. Enable the
platform-native backends (windows-native, apple-native,
sync-secret-service) so credentials land in the OS keychain.
@proofofprints proofofprints merged commit 62979c0 into main Jun 7, 2026
1 check passed
@proofofprints proofofprints deleted the fix/keyring-persistence branch June 7, 2026 04:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant