Branch switch and pull now try the git operation directly first and only
fall back to auto-stash when local changes actually block it, fixing
switches that silently failed after a pull left an unresolved conflict.
The sidebar also now surfaces unresolved conflicts and stashes for the
repo, with one-click resolve/abort/apply/drop actions.
Also wires RELEASE_NOTES.md into the release workflow so Obsidian's
plugin update view shows a short human summary instead of just a
changelog compare link.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Replace the <select> dropdown with a searchable custom picker that shows
all local and remote branches grouped separately. Remote-only branches
check out with --track so upstream is configured automatically. Fetch now
uses --prune to keep remote refs in sync.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Pull and branch switch now auto-stash uncommitted changes, perform the
operation, then pop the stash — mirroring GitKraken's seamless default
- Background git fetch fires every 30 seconds, updating commits-behind
counter, ribbon badge, and status bar without a full UI reload
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
stdout.trim() was stripping the leading space from the first line of
git status --porcelain output, causing substring(3) to index one char
into the filename. Switch to trimEnd() to only strip trailing newlines.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Replace fetch with Obsidian requestUrl; add typed GitHub API interfaces
- Replace all `any` types and catch blocks with proper types + errorMessage helper
- Replace createEl headings with new Setting().setHeading()
- Add void operator to all async event handlers in void context
- Fix unawaited promises (revealLeaf, activateView, saveSettings)
- Replace setTimeout with window.setTimeout throughout
- Remove unnecessary type assertions (createEl already returns typed elements)
- Replace this.display() calls with targeted DOM updates via updateDetectedInfo()
- Bump minAppVersion to 1.1.3 to match APIs used
- Replace builtin-modules package with Node built-in builtinModules
- Add GitHub Actions release workflow with artifact attestations
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>