SecretStorage migration (beta)
Tokens are now stored in Obsidian SecretStorage (Obsidian 1.11.0+). This is a more secure storage mechanism that keeps sensitive values out of plain-text settings.
IMPORTANT for 2.0.0-beta users: Secrets stored in Obsidian SecretStorage are not synced across devices. You must add the same secret name/value manually on every device where you want BRAT to use it.
BREAKING CHANGE: Downgrading from 2.0.0-beta-x to 1.4.1 will require re-entering tokens. Older versions cannot read SecretStorage values. Refs #102, #147
Notes:
- Token migration occurs on plugin load when possible.
- If a per-plugin token name is set but no secret exists, BRAT alerts you so it is easy to correct.
What's Changed
Security & storage
- Tokens moved from settings into Obsidian SecretStorage.
- Added SecretStorage utilities and a migration framework.
- Added migration-on-load to move existing tokens automatically when available.
UI & settings
- Settings tab migrated to using SettingGroup.
- Token input replaced by SecretComponent for safer handling.
- Indicate if a secret is set, but the secret key is missing.
BetaPlugins & update flow
- BetaPlugins now read tokens from SecretStorage.
- Async SecretStorage usage implemented to avoid blocking calls.
What's Changed (detailed)
- fix: fix the plugin modal (7c9a71b)
- fix: clean-up css (79f3fa2)
- refactor: remove dead code (88ec156)
- fix: simplify token check (ff27ad8)
- fix: avoid double click prevention (0d50581)
- feat: notify user of token change (3dbaff5)
- fix: implement async calls into SecretStorage (31e7e66)
- chore: ignore AGENTS.md for the time being (5eded05)
- feat: migrate settings tab to SecretComponent (911b6c2)
- feat: replace token input with SecretComponent (f52e2d4)
- feat: migrate BetaPlugins to use SecretStorage tokens (acab0be)
- feat: enable token migration on plugin load (8ee85e1)
- refactor: decouple TokenValidator from TextComponent (a60b517)
- feat: extend settings to support SecretStorage (db6e45d)
- feat: add SecretStorage utilities and migration framework (57e3a43)
- chore: update obsidian api dependencies (6021d83)
New Contributors
- None
Full Changelog: 1.4.1...2.0.0-beta.2