vrustx
543cc800a3
Merge remote-tracking branch 'upstream/main' into codex/fix-260-482-overflow-navigation
...
# Conflicts:
# apps/desktop/src/components/layout/AppTabBar.vue
# apps/desktop/src/lib/tabPresentation.ts
# apps/desktop/src/stores/queryStore.ts
2026-05-31 23:41:27 +08:00
t8y2
e28495f3c1
perf: optimize table data loading
2026-05-31 22:10:02 +08:00
vrustx
e36e42723a
Merge remote-tracking branch 'upstream/main' into codex/fix-260-482-overflow-navigation
...
# Conflicts:
# apps/desktop/src/components/layout/AppTabBar.vue
# apps/desktop/src/lib/tabPresentation.ts
2026-05-31 17:24:07 +08:00
t8y2
33e0cfa831
Optimize table data open latency
2026-05-31 17:06:29 +08:00
t8y2
d8f2bce320
fix(query): release stale result payloads
2026-05-31 13:45:53 +08:00
t8y2
09ff70918c
feat(objects): prioritize base names in object sorting
2026-05-31 13:35:11 +08:00
t8y2
bbd07e564b
feat(grid): support binary cell downloads
2026-05-31 12:44:02 +08:00
vrustx
9d603b617d
Refine overflow navigation review feedback
2026-05-31 11:47:44 +08:00
vrustx
e94de447c9
Fix sidebar and tab overflow navigation
2026-05-31 02:41:43 +08:00
vrustx
c24e3a5086
feat: add table structure density control ( #558 )
2026-05-31 00:52:09 +08:00
vrustx
8ef4794105
fix: parse MySQL JDBC URL credentials ( #556 )
2026-05-30 23:43:35 +08:00
t8y2
c334550252
feat: add tiered Oracle agent profiles
2026-05-30 22:43:02 +08:00
vrustx
fa08ed56a0
fix: display partition tables hierarchically
2026-05-30 21:51:21 +08:00
t8y2
396b168a9c
fix(grid): preserve drawer widths and copy ddl
2026-05-30 19:57:23 +08:00
t8y2
55cad0cc08
fix(structure): reuse compatible data type options
2026-05-30 19:32:34 +08:00
skyler
528b51fb8d
fix(updates): guard portable builds from installer updates ( #550 )
2026-05-30 19:15:37 +08:00
vrustx
398e040d5c
fix(grid): add cell row and column detail dialogs ( #546 )
2026-05-30 19:08:42 +08:00
vrustx
c95e01e48c
fix(sidebar): restore SQL Server object browser entry ( #549 )
2026-05-30 19:06:34 +08:00
t8y2
2a696be49a
fix(test): update sidebar target test for query-context type
...
Query tabs now return a query-context target so the locate-in-sidebar
button can find and expand the matching database or schema node.
2026-05-30 16:58:19 +08:00
t8y2
a9e7f3946d
fix(redis): support insecure tls connections
2026-05-30 16:00:13 +08:00
t8y2
6481af3ed8
fix(oracle): preserve jdbc descriptors
2026-05-30 13:06:52 +08:00
t8y2
99ebecf473
feat(desktop): group partition tables in object browser
2026-05-30 11:11:06 +08:00
t8y2
ed1db7db6b
fix(ui): localize hardcoded strings
2026-05-30 10:01:12 +08:00
t8y2
879da4b86f
fix(editor): make table drag payload reliable
2026-05-30 09:42:12 +08:00
t8y2
eb9030b9ef
fix(editor): allow dropped table references
2026-05-30 09:37:13 +08:00
t8y2
e324f35f28
feat(editor): support dragging tables into queries
2026-05-30 09:31:07 +08:00
t8y2
81e50cadb5
feat: add XuguDB agent support
2026-05-30 09:12:34 +08:00
t8y2
ba9dad7f7b
chore: remove brittle source-code regex-matching tests
...
These 81 test files used readFileSync to check source code for regex
patterns. They broke on any formatting change or minor refactor and
provided no behavioral coverage. 641 real unit tests remain.
2026-05-29 18:05:12 +08:00
Abeautifulsnow
310cc22b37
Fix/disable table comment for unsupported db ( #518 )
...
* fix(structure-editor): disable table comment input for databases that don't support comments (e.g. SQLite)
## 背景说明
SQLite 不支持表注释(COMMENT),但表注释输入框始终可编辑。用户修改注释后,SQL 预览显示暂无变更且应用变更按钮不可用,造成困惑的 UX。
## 修改内容
- 新增 isTableCommentDisabled 计算属性,基于 structureCapabilities.comment 控制禁用状态
- 表注释 Input 添加 :disabled 绑定,禁用时输入框变灰不可编辑
- 禁用时在输入框右侧显示 Info 图标,hover 显示 Tooltip 说明
- 三语言(zh-CN / en / es)新增 tableCommentUnsupported 翻译
## 影响范围
- SQLite、DuckDB 及未知数据库类型:输入框被禁用 + Tooltip 提示
- MySQL、PostgreSQL、ClickHouse 等支持注释的数据库:完全不受影响
- 后端 generate_comment_ddl 已有对等过滤(仅 Postgres/Oracle/ClickHouse 生成 COMMENT SQL)
## 测试
- 建议补充:dbType 为 sqlite 时 isTableCommentDisabled 为 true 的单元测试
* test(structure-editor): add tests for table comment disabled state and unsupported DB capabilities
2026-05-29 12:29:50 +08:00
t8y2
660ba07264
feat(sidebar): add compact object display mode
2026-05-29 01:17:46 +08:00
t8y2
c7b7bed140
feat(editor): add extended column properties support for MySQL, PostgreSQL, and SQL Server
...
MySQL: AUTO_INCREMENT, ON UPDATE CURRENT_TIMESTAMP
PostgreSQL: GENERATED AS IDENTITY (BY DEFAULT / ALWAYS)
SQL Server: IDENTITY(seed, increment)
2026-05-29 00:41:51 +08:00
t8y2
e15e99aeb5
fix(ci): make Emitter import unconditional and update defineExpose test regex
...
- Move Emitter import out of macos-only cfg so emit() works on Linux
- Update test regex to include scrollCursorIntoView in defineExpose
2026-05-28 22:09:54 +08:00
徐文彬
5ea146e08e
fix(mongodb): guard aggregate execution paths
2026-05-28 21:29:08 +08:00
徐文彬
c56bcb8e2d
feat(mongodb): 支持聚合查询、批量写入和 MCP 集成
...
- 桌面端:解析 db.<集合>.aggregate([...]) shell 语法,新增 mongoAggregateDocuments
接口(Tauri + HTTP);mongo 入口统一补 ensureConnected;ObjectId(...) 自动
转换为 {"\$oid":"..."} 扩展 JSON 表示。
- dbx-core:新增 aggregate_documents、insert/update/delete_documents bulk
操作;扩展 JSON 解析识别 \$oid;schema list_tables_core 补 MongoDB/Elasticsearch
分支返回 COLLECTION/INDEX。
- dbx-web / Tauri 命令 / MCP bridge:注册 4 个新 mongo 路由
(aggregate/insert/update/delete documents);MCP bridge 新增 mongo HTTP 入口
和 lazy 连接复用。
- node-core (MCP 后端):mongodb 走专属 executeQuery / listTables /
describeTable;read-only 默认 + DBX_MCP_ALLOW_WRITES /
DBX_MCP_ALLOW_DANGEROUS_SQL 两级开关;aggregate 含 \$out/\$merge 走同样开关;
describeTable 抽样 20 条文档推断字段类型,_id 自动标记主键。
- mcp-server:mongodb 跳过 SQL safety evaluator(mongo shell 与 SQL 语法
不兼容),改由 backend 做命令级 gating;附注释。
- AiAssistant 同时 emit replaceSql + executeSql 让编辑器和结果保持一致;
App.vue ensureQueryTab 在无上下文时回退到连接默认库;aiMessageRender
识别 mongodb / mongo 代码块。
- Review 修复:合并两份重复的 evaluateMongo*Safety 实现(同时修复 web-backend
用字符串比较导致空 filter 检查可被空格绕过的 bug);ObjectId 正则兼容
单/双引号;mongo_ops 错误文案 "MCP" 改为 "bulk";补 aggregate 解析测试用例。
测试:pnpm test 911 通过;vue-tsc 通过;cargo check -p dbx-core 通过。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 21:25:43 +08:00
t8y2
f45ee8f272
feat(settings): keep dialog open after apply
2026-05-28 20:36:56 +08:00
t8y2
f41601e4dc
fix(grid): improve column selection and transpose highlights
2026-05-28 20:09:35 +08:00
t8y2
c124ce3b69
fix(desktop): persist tray icon preference
2026-05-28 19:21:43 +08:00
t8y2
3f64e830f8
fix(grid): show cell highlight for row multi-select
2026-05-28 19:03:21 +08:00
t8y2
30a48a878c
fix(query): reload connection config before execute
2026-05-28 18:54:51 +08:00
t8y2
a036ea1e8d
fix(grid): sync value editor with selected cell
2026-05-28 18:31:57 +08:00
t8y2
486d9bb3a6
fix(connection): move query timeout into per-connection settings
2026-05-28 18:18:45 +08:00
t8y2
4de788ada2
fix(ci): align desktop tests with zoom changes
2026-05-28 17:51:36 +08:00
t8y2
f7f5758c85
feat(desktop): add global UI zoom settings and shortcuts
2026-05-28 17:43:06 +08:00
t8y2
d35aeaa08c
fix: continue transfer after table failure
2026-05-28 16:11:29 +08:00
t8y2
c952c65483
feat: upgrade data compare sync planning
2026-05-28 01:05:15 +08:00
t8y2
bd78436ab1
feat: add query editor context menu
2026-05-28 00:29:02 +08:00
t8y2
797c0d8d21
Add Redis cluster support and improve key loading
2026-05-28 00:08:59 +08:00
t8y2
ac4313afee
fix(sqlserver): avoid false unknown column diagnostics
2026-05-27 23:07:47 +08:00
t8y2
6d35dcfda8
fix: fix cargo fmt and update tests for completion/snippet changes
...
- Run cargo fmt on duckdb_driver.rs
- Update test expectations for snippet→function type changes
- Fix snippet icon color test (emerald→violet)
- Fix error result message format test
- Fix keyword suggestion test to handle snippet boost priority
2026-05-27 18:26:22 +08:00
t8y2
915728ebec
fix(editor): refresh SQL snippet completion after settings changes
2026-05-27 17:46:16 +08:00