1.0.5
1.0.5 变更摘要
安全增强:私人令牌迁移到 Obsidian 钥匙串
私人令牌原本明文存储在 data.json,会随 vault 同步上传到远端仓库,存在泄露风险。本版本将 Gitee / GitHub 令牌迁移到 Obsidian 自带的钥匙串(app.secretStorage,由操作系统保护),data.json 落盘时自动脱敏。
主要变更
- 打开设置面板即自动迁移:首次打开插件设置面板时,把
data.json中残留的明文令牌写入 Obsidian 钥匙串,并弹出"令牌已迁移到钥匙串"提示;迁移完成后data.json不再保留明文。 - 降低钥匙串写入频率:令牌输入框仅在失去焦点(blur)时写一次钥匙串,避免每次按键都触发 IO。
- 修复合并焦点丢失:owner / 仓库输入框过去每输入一个字符就丢焦点(每次
onChange重建整面板导致),改为分支下拉框局部刷新;owner/repo 变化时分支列表自动跟随。 - 统一 Gitee / GitHub 令牌描述:两条描述改为对称结构(
平台 → 路径 → 私人令牌,需勾选 X 权限),中英文文档更清晰。 - 兼容旧版:移动端或 Obsidian < 1.11.4(无
secretStorageAPI)时自动降级为明文存储,行为与旧版一致;minAppVersion保持1.8.7不变。 - 跨设备注意:钥匙串 per-device,多端需各自打开设置面板触发迁移。
升级提示
升级后第一次打开设置面板时,插件会自动把 data.json 中的明文令牌迁入 Obsidian 钥匙串,并弹出提示,无需任何手动操作。移动端会跳过迁移步骤(继续使用 data.json)。