Releases: uptutu/go2fa
Releases · uptutu/go2fa
Release list
v0.4.0
v0.3.11
v0.3.10
v0.3.9
v0.3.8
Changelog
- 40e1a89 feat(web): fuzzy search with highlighted match snippets
- 0ab03e6 feat(web): idle auto-lock + in-browser unlock
- a7df806 feat(web): mode-switch button + /api/mode tests
- 3f7db8c feat(web): theme picker + account detail panel
- 2c4b925 fix(cli): import dedupe, gui install prompt, rename gui_wire.go
- 611ac28 fix(core): vault hardening — ErrLocked, single-conn SQLite, rekey backup
- 0218658 fix(web): anchor theme popover directly under the theme button
- a52b995 fix(web): persist theme across GUI restarts via server-side prefs
- 1fd37cd fix(web): reject blank passwords and require confirm match on /api/mode
v0.3.7
v0.3.6
v0.3.6
Fix
- web (copy stale TOTP after rotation): v0.3.5 fixed the closure-stale bug but left a second race:
tickCountdowndetects rotation locally and triggersrefreshSecrets(), butstate.secretsisn't replaced until the fetch resolves. Clicking copy during that window returned the previous round's code. The handler now copiesbtn.textContentdirectly — the button text is updated byupdateRowon every tick + refresh, so it's always the displayed-current code. Restoration after 900ms reads from the (now fresh)state.secrets, with apreviousfallback if the row was removed.
v0.3.5
v0.3.5
Fix
- web (copy stale TOTP): the per-row copy button's onclick closure was bound once at render time and captured the original
Secretobject. After a TOTP rotation, the visible button text updated (viaupdateRow) but clicking still copied the previous round's code from the captured snapshot. The handler now takes the secret id and looks up the live entry instate.secretson each click.
v0.3.4
v0.3.4
Fix
- web (hover stutter): Hoist each
.secretrow into its own compositor layer viatransform: translateZ(0)+will-change: transform. The previous fix only stopped the rows from being rebuilt every tick; the row itself was still paying a per-framebackdrop-filterresample cost against the three continuously-animated background blobs.:hovernow keeps the layer promotion, so hover stays smooth the entire time the cursor is on a row.