Commit Graph
1373 Commits
Author SHA1 Message Date
t8y2 15d4dc6e2e fix(sqlserver): omit display width for integer types 2026-07-08 11:05:45 +08:00
gggaiitx 6041c3f70b fix(sql): quote all IN-list values uniformly in expaste
Previously, pure numeric values (e.g. 90001543) in the IN clause were not quoted while values with leading zeros (e.g. 00040787) were, causing inconsistent quoting. Now all non-NULL values are uniformly quoted.
2026-07-08 10:36:01 +08:00
t8y2 d2874bf1bb fix(grid): smooth canvas column interactions 2026-07-08 09:45:28 +08:00
t8y2 611f19fd8b fix(sql): keep column completion after subqueries 2026-07-08 00:53:05 +08:00
t8y2 b3f09219ab fix(sql): cover MySQL dynamic SQL variables 2026-07-08 00:21:27 +08:00
onenewcode ba81fa4497 feat(redis): support multiple value formats in viewer (#2766)
* feat(redis): improve value decoding and viewer formats

* fix(redis): preserve stream field/value blobs

* Revert "fix(redis): preserve stream field/value blobs"

This reverts commit 168af0619a.
2026-07-08 00:13:20 +08:00
t8y2 ad9841ab77 fix(import): allow selecting create-table column types 2026-07-08 00:02:47 +08:00
二丫讲梵 7eff6e544b feat(sqlCompletion): 优化表别名建议功能,避免使用 SQL 关键字 (#2805) 2026-07-08 00:01:24 +08:00
t8y2 8364f468a0 fix(sqlserver): use legacy encryption for fallback 2026-07-07 22:51:04 +08:00
zipg 5b25299417 fix(zookeeper): prevent root znode create path 2026-07-07 22:44:04 +08:00
miracle 9288717ac4 fix(sql): ignore native SQL variables 2026-07-07 22:24:48 +08:00
zipg 6cba08fccb fix(kingbase): 修复连接与元数据查询异常 2026-07-07 22:12:36 +08:00
t8y2 63ff9321a4 fix(editor): cover cross-database column completion 2026-07-07 21:51:04 +08:00
zipgandzipg bcabce3686 fix(ui): 优化工具栏和历史筛选区溢出表现
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-07-07 21:42:44 +08:00
t8y2 42eaddac45 feat(editor): improve qualified table completion 2026-07-07 18:57:46 +08:00
t8y2 3d935f7eb6 feat(editor): 默认字体改用 Fira Code 优先回退链 2026-07-07 18:53:19 +08:00
t8y2 5a9ab5c036 feat(editor): add configurable line comment shortcut 2026-07-07 18:32:57 +08:00
一颗红心andCursor 184e235999 feat: synchronize tab titles with saved SQL file renaming (#2739)
- Bidirectional sync between SQL library and tab titles
- Case-insensitive .sql extension via shared ensureSqlExtension
- Revert tab title when rename persistence fails

Close #2648

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 18:09:01 +08:00
gggaiitx 9410bf42a9 fix: preserve large integer precision when formatting JSON in value editor (fixes #2765)
* fix: preserve large integer precision when formatting JSON in value editor (fixes #2765)

* fix: add missing showDiagramDialog to useNavigationTargets in AiAssistant
2026-07-07 16:48:00 +08:00
二丫讲梵 326c4f5495 ✨ feat(dataGrid): 增加复制逐行插入语句的功能 2026-07-07 16:39:38 +08:00
t8y2 b74e97d530 fix(sql-file): remove file selection radius 2026-07-07 16:26:39 +08:00
zipg 3497df033f feat(grid): support searching filter columns 2026-07-07 16:19:29 +08:00
zipg d50f1761d6 fix(sql): handle database drag and routine export 2026-07-07 15:54:48 +08:00
zipg 14c383cb43 fix(sql): improve SQL library selection style 2026-07-07 15:51:48 +08:00
zipg d90847bbba feat(ai): support SQL library file references 2026-07-07 15:39:10 +08:00
LRcoding fc01cea80f fix(oracle): preserve plsql block terminators 2026-07-07 15:29:43 +08:00
jischeng c3893bf314 feat(spark): add Apache Spark database driver with catalog support
* feat(spark): add Apache Spark database driver

Spark Thrift Server speaks the HiveServer2 protocol, so the Spark driver
reuses the hive-jdbc agent runtime. Registers spark (agentKey=spark,
defaultPort=10015) across the manifest, DatabaseType enum, agent catalog,
SQL dialects, connection dialog, and a SparkAgent built on AbstractJdbcAgent.

* feat(spark): add catalog support and official logo

SparkAgent now supports Spark 3.4+ multi-catalog (Paimon, Lance, Iceberg)
via catalog=<name> in url_params, mirroring the StarRocks catalog flow:
- afterConnect switches to the configured catalog via USE <catalog>
- listDatabases returns the catalog name when SHOW DATABASES is empty
  (catalogs like Lance expose tables at the catalog root with no databases)
- listTables uses SHOW TABLES IN <catalog>[.<schema>] uniformly, working
  for both catalog-root tables (Lance) and catalog.schema tables (Paimon)
- setSchemaSQL qualifies USE with the catalog to prevent resetting to
  spark_catalog on schema switches
- buildJdbcUrl omits database from the URL path

Also replaces the placeholder lightning icon with the official Apache Spark
logo (spark-logo.png from spark.apache.org).

* fix(spark): use catalog-qualified DESCRIBE for column retrieval

getColumnsFromDescribe used USE <schema> + DESCRIBE <table>, which
generated USE `catalog`.`catalog` when the sidebar passed the catalog
name as the schema (Lance case where the catalog is the only node).
This failed and fell back to JDBC metadata which also returned nothing,
resulting in an empty DDL (CREATE TABLE ... ()).

Now uses DESCRIBE `catalog`.`table` directly when a catalog is
configured, bypassing USE entirely. Also fixes setSchemaSQL to treat
schema == catalog as catalog-only (no .schema suffix).

* fix(ci): add spark to metadata coverage matrix and BRIDGE_REQUIRED_TYPES

- agents/metadata-constraint-coverage.tsv: register spark as
  intentional-fallback (SHOW TABLES/SHOW DATABASES, like Hive/TDengine)
- packages/node-core/src/diagnostics.ts: add spark to
  BRIDGE_REQUIRED_TYPES (mcpMode=bridge, matches manifest)

* fix(ci): add spark to DBX_CONNECTION_TYPE_DESCRIPTION in mcp-server

The driver-manifest test asserts every manifest dbType appears in the
MCP server's connection type description string.
2026-07-07 14:36:22 +08:00
t8y2 586faf28c8 feat(diagram): open table data from graph cards 2026-07-07 14:26:52 +08:00
一颗红心 c60b23ffe7 fix: swap upload and download icons in various components for consistency 2026-07-07 14:17:33 +08:00
52835f1eb0 fix: show timeout action for SQL execution timeouts
* fix: show timeout action for SQL execution timeouts

* fix: detect agent RPC timeout in query error action

---------

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
Co-authored-by: t8y2 <1156263951@qq.com>
2026-07-07 13:50:29 +08:00
Abeautifulsnow 09f9e44661 fix(ai): make reasoning expand/collapse consistent across messages
fix(ai): make reasoning expand/collapse consistent across messages

Replace per-message expandedReasoning Set with a global reasoningExpanded
boolean ref so all messages share the same toggle state. Default to collapsed.
This avoids the flip-flop where reasoning auto-expands during streaming and
collapses afterward, requiring repeated manual toggles.

- Replace expandedReasoning (Set<number>) with reasoningExpanded (boolean)
- Remove per-index toggleReasoning; use global flip instead
- Template uses reasoningExpanded instead of expandedReasoning.has(i) || msg.isThinking
@
2026-07-07 13:36:53 +08:00
t8y2 e67e7730d1 refactor(data-grid): drop unused gridRef/scrollbarGutter options from useDataGridColumnResize 2026-07-07 13:24:05 +08:00
t8y2 6e7f0578b6 fix(saphana): keep DO blocks together 2026-07-07 13:23:53 +08:00
LRcodingandzero f41c7dd6a0 fix(toolbar): sync SQL file tree visibility setting
Co-authored-by: zero <zero@zeroMacmini.local>
2026-07-07 13:18:42 +08:00
二丫讲梵 2cbce44628 feat(data-grid): 优化查询结果展示宽度 2026-07-07 13:00:59 +08:00
LSD a7be9eed13 fix(gridfs): support bulk download and paged browsing (#2743) 2026-07-07 12:43:07 +08:00
t8y2 65af804099 feat(editor): allow disabling SQL snippets 2026-07-07 12:36:51 +08:00
zipgandzipg 705bacba04 feat(editor): add ExPaste paste-as-IN-condition helper (#2746)
* feat: add ExPaste SQL IN condition helper

* fix: restrict ExPaste to SQL-like editors

---------

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-07-07 12:33:49 +08:00
t8y2 29495a7220 fix(sqlfile): align panel header style 2026-07-07 12:29:39 +08:00
t8y2 86d3973eae fix(sidebar): flatten tree selection highlight 2026-07-07 12:19:56 +08:00
t8y2 a5b3409985 fix(sidebar): reduce connection selection repaint cost 2026-07-07 12:09:25 +08:00
t8y2 1db11ea145 feat(postgres): support batch table cascade actions 2026-07-07 11:57:44 +08:00
t8y2 a893f0e478 fix(grid): colorize Oracle/Dameng column types (varchar2, number, etc.) 2026-07-07 11:13:38 +08:00
t8y2 338a2635a6 feat(toolbar): replace driver update count badge with a dot 2026-07-07 10:58:40 +08:00
zipgandzipg 6efe1797a3 fix(editor): show gutter run button for statements with leading whitespace (#2729)
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-07-07 10:53:27 +08:00
dde8d4584f feat(sqlfile): add refresh, locate, and context menu to SQL Files panel (#2715)
* feat(sqlfile): add refresh, locate, and context menu to SQL Files panel

- Add per-folder Refresh and Reveal-in-file-manager buttons on each opened
  folder header, plus a Refresh-all button on the panel toolbar. Re-scan
  prunes expand state for paths that no longer exist after refresh.
- Add right-click context menus (via CustomContextMenu) for files, folders,
  folder headers, and the panel background: open, execute SQL file, reveal
  in file manager, copy path, expand/collapse all, refresh, remove folder.
- Highlight the selected tree row on click/right-click; clicking empty space
  clears the selection.
- Wire "Execute SQL file" from the panel into the App-level
  SqlFileExecutionDialog via connectionStore.sqlFileSource.filePath + a new
  prefillFilePath prop, so the dialog opens with the file preview preloaded.
- Add zh-CN/en strings under sqlFileTree.

* chore(i18n): autofill new translations

* fix(sqlfile): clear prefillFilePath on close, dedupe i18n keys

---------

Co-authored-by: wanqinghua <wanqhua@gmail.com>
Co-authored-by: dbx-i18n-bot <github-actions[bot]@users.noreply.github.com>
Co-authored-by: t8y2 <1156263951@qq.com>
2026-07-07 10:34:32 +08:00
haipengno1 d101abe74b fix(sidebar): pin schema row for Dameng/Oracle-style trees 2026-07-07 02:05:34 +08:00
t8y2 7155992e04 feat(import): create table during data import 2026-07-07 02:01:02 +08:00
zipg 668919a7c9 fix(gbase8s): make view source saves safer 2026-07-07 01:50:53 +08:00
t8y2 15b86ad6c9 fix(grid): highlight and locate Ctrl+F matches in transpose view 2026-07-07 01:49:41 +08:00