Releases: lengockhoa/UnicDB
Release list
UnicDB 1.53.20
Extend multi-selection Cmd+Enter to shellscript files:
- New command
UnicDB.runShellSelection+ Cmd/Ctrl+Enter keybindings forresourceLangId == shellscript - New function
commandRunShellSelection()in src/extension.ts that iterateseditor.selections, takes range text for non-empty selections, takes the cursor's current line for empty selections, and sends each piece to the reusedUnicDB Scriptterminal - Mirrors the SQL multi-selection pattern shipped in 1.53.17 (commit 3e33f0a) — highlighting 3 lines in a .sh file and pressing Cmd+Enter now runs only those 3 lines in the terminal
- Guard fix: bq04 + bqFollowup frozen-surface guards updated to filter the
keyandkeybindingskeys as legitimate contributes changes (previously the regex missed them and would trip on any new keybinding)
Verification: 250 files / 3743 tests / 0 failed · UnicDB-1.53.20.vsix packaged (2.04 MB)
v1.53.18
Test-only hotfix patch — align the 4 webview tab-order test files (webviewBundle, webviewPerTableTabs, webviewResultLimit, webviewMultiRunTabs) with the Messages-first + reverse-chronological tab order shipped in 1.53.17. No production code changes; CI was failing the published 1.53.17 .vsix's test suite.
Files: src/ui/tests/webviewBundle.test.ts, src/ui/tests/webviewPerTableTabs.test.ts, src/ui/tests/webviewResultLimit.test.ts, tests/webviewMultiRunTabs.test.ts
Verification: npm run typecheck ✅ · npm test ✅ (250 files / 3730 tests / 0 failed) · UnicDB-1.53.18.vsix packaged
UnicDB 1.53.16
ui(ai-settings): merge API key into the same row as Timeout and Max steps (order: API key [grow] | Timeout | Max steps), remove the separate API key section. API key shares the Base URL row's visual style and sits on the same horizontal line as the other numeric inputs.
UnicDB 1.53.15
ui(results): instant hover tooltips on every button in UnicDB Results panel — toolbar icons, result tabs (with query/status/rowcount), Messages tab, and tab close button. CSS ::after pseudo-element reads from data-tooltip; existing native title attribute kept for screen readers and as slow fallback.
UnicDB 1.53.13
fix(ui): swap sparkle (AI Settings) and plus (Add Connection) toolbar positions. AI Settings form reorg — API key now directly below Base URL; model blocks reordered Lite → Work → Smart → Autocomplete.
UnicDB 1.53.12
fix(ai): field-agnostic reasoning-model text extraction (glm-5-turbo and any future cheap reasoning model). AI Settings icon now sparkle so it no longer collides visually with Settings gear.
UnicDB v1.53.11
Robust text extraction from non-standard Lite Model responses
When the model produces 77 output tokens but UnicDB extracts 0 chars (as
happened with glm-5-turbo through some Lite Model proxies), the text was
missed because the response used a shape the parser didn't recognize.
Fix
parseChatCompletionsResponsenow handlesmessage.contentas either a
string or an array of typed parts ([{type:"text", text:"..."}]).- Both parsers fall back to
extractAnyText, a recursive walker that
concatenates any string in text-shaped keys (text,content,
delta,output_text,message). - The SSE aggregator's empty-text path now calls
fallbackTextFromSseEvents
before throwing, so unrecognized SSE shapes still surface their text.
Files
src/ai/provider.ts—extractAnyText+fallbackTextFromSseEvents+ parser fallback wiring
UnicDB v1.53.9
Empty-text debug dump
Empty-provider-error notification now includes the raw text length + 240-char preview + a path to a debug dump file in the extension's globalStorage folder. User can cat the file or paste its contents back for diagnosis without DevTools.
UnicDB v1.53.8
Empty-diff error now visible
Clicking UnicDB: Generate Commit Message in a Git repo with no changes previously showed an info toast (UnicDB: no changes to summarize.) that was easy to miss.
Now it surfaces as a clear error notification:
UnicDB: nothing to commit — this Git repo has no staged or unstaged changes. Stage or modify at least one file, then click again.
Files
src/ai/commitGenCommand.ts—showInfo→showError+ clearer messagesrc/ai/__tests__/commitGenCommand.test.ts— Test #4 updated
UnicDB v1.53.7
Empty commit-message bug fix + bigger U
Silent-failure fix
UnicDB.generateCommitMessagebutton was loading then doing nothing — the provider was returning SSE but the aggregator extracted empty text, and the empty-result path was silent (no notification).- Provider now throws a clear
SSE parsed but produced no text — unrecognized event formatwith the raw body snippet when aggregation finds events but no text. The notification in CommitGenCommand surfaces a separate diagnostic when sanitizeCommitMessage() yields empty string after a successful call. - Net effect: every failure mode now produces a visible, copy-pasteable error.
Bigger U
media/commit-spark.svg: bolder, taller blue U (~130% relative scale), dominant at 16x16 toolbar size.
Tooltip
- Command title ->
UnicDB: Generate Commit Messageso hover shows the full command name.
Files
src/ai/provider.ts— throw on empty aggregated textsrc/ai/commitGenCommand.ts— show error on empty post-sanitize textmedia/commit-spark.svg— bigger Upackage.json— title with UnicDB prefix