Skip to content

feat: SecretStorage migration and UI state persistence - #19

Merged
rhoades-brown merged 5 commits into
mainfrom
api-enhancements-1.12
May 29, 2026
Merged

feat: SecretStorage migration and UI state persistence#19
rhoades-brown merged 5 commits into
mainfrom
api-enhancements-1.12

Conversation

@rhoades-brown

Copy link
Copy Markdown
Owner

Summary

Implements API enhancements available in Obsidian 1.12.7 (current public version). This is a security and UX improvement release.

Changes

SecretStorage migration (1.11.4)

  • Main PAT: Migrated from plaintext data.json to app.secretStorage.setSecret('github-pat', token). Token is no longer persisted in data.json.
  • Additional repo tokens: Each repo's token stored as github-pat-{repoId} in SecretStorage.
  • Auto-migration: On first load after upgrade, existing plaintext tokens are automatically migrated to SecretStorage and cleared from data.json.
  • Runtime unchanged: settings.auth.token still works in memory; only persistence layer changed.

loadLocalStorage for UI state (1.8.7)

  • SyncView panel collapse state (commits expanded, logs expanded) persisted per-vault via app.loadLocalStorage/app.saveLocalStorage.
  • Panel state survives view close/reopen and Obsidian restart.

Version bump

  • minAppVersion bumped from 1.7.2 to 1.12.7
  • versions.json updated with 0.5.0 mapping

Commits

  1. feat: migrate main PAT to SecretStorage for encrypted storage
  2. feat: migrate additional repo tokens to SecretStorage
  3. feat: persist SyncView panel state with loadLocalStorage
  4. chore: bump minAppVersion to 1.12.7

Checklist

  • Build passes
  • Lint clean (0 errors/warnings)
  • All 119 tests pass
  • Mocks updated with SecretStorage, loadLocalStorage/saveLocalStorage

@rhoades-brown
rhoades-brown merged commit c3ccd83 into main May 29, 2026
5 checks passed
@rhoades-brown
rhoades-brown deleted the api-enhancements-1.12 branch May 29, 2026 23:01
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