Syngnat
fb500ee33b
🐛 fix(mysql): 回退当前数据库列表查询
...
Fixes #327
2026-04-11 21:53:52 +08:00
Syngnat
89d79ff10c
🐛 fix(mysql): 修复 bit 列写入归一化
...
Fixes #318
2026-04-11 21:53:52 +08:00
Syngnat
aa1bb5b886
🐛 fix(kingbase): 回退当前数据库元数据查询
...
Fixes #316
2026-04-11 21:53:52 +08:00
Syngnat
83fe3d4ed9
🐛 fix(driver): 提升批量 INSERT 执行效率
...
Fixes #311
2026-04-11 21:53:51 +08:00
Syngnat
5d86ee7c76
🐛 fix(clickhouse): 获取数据库列表失败时回退当前库
...
Fixes #308
2026-04-11 21:53:51 +08:00
Syngnat
1f617f9d53
✨ feat(storage): 支持自定义数据目录与显式迁移
...
Fixes #242
2026-04-11 21:53:50 +08:00
tianqijiuyun-latiao
ac0b6c05e8
🐛 fix(database): 修复本地驱动导入版本识别与连接校验遗漏
...
- MongoDB 本地导入按所选版本解析目录与压缩包
- ClickHouse 连接测试补充 query path 校验
- 补充驱动版本与查询路径回归测试
2026-04-05 12:09:06 +08:00
Syngnat
f992ad72e6
✨ feat(mongodb): 支持无认证模式连接低版本 MongoDB 实例
...
- 连接表单:验证方式新增"无认证 (None)"选项,MongoDB 用户名改为非必填
- URI 构建:当 MongoAuthMechanism 为 NONE 时跳过 user/password/authSource/authMechanism
- 兼容优化:无用户名时不再默认设置 authSource=admin,避免驱动对无密码实例发起认证
- 双版本同步:mongodb_impl.go 与 mongodb_impl_v1.go 同步修改
- refs #303
2026-04-01 16:46:27 +08:00
Syngnat
9c96246320
✨ feat(postgres): PostgreSQL 支持不带 schema 前缀的表名补全与执行
...
- 后端优化:连接成功后自动查询所有用户 schema 并将 search_path 写入 DSN 重建连接池
- 连接池修复:SET search_path 仅对单个连接生效,改为 DSN 级别配置使所有连接生效
- 表名补全:前端智能匹配 schema.table 中的纯表名部分,输入表名即可触发补全
- 同名表处理:跨 schema 存在同名表时补全自动显示 schema.table 格式以区分
- 列补全增强:FROM/JOIN 引用纯表名时关联列提示和别名列提示均可正确匹配
2026-03-31 12:09:33 +08:00
Syngnat
31644dee6b
🐛 fix(dameng): 修复达梦数据源侧边栏无法展开数据库节点的问题
...
- 权限适配:取消对 SYSDBA schema 的默认过滤,并增加 `SELECT USER FROM DUAL` 兜底查询
- 树节点容错:Sidebar 当数据库为空时不再阻断加载状态,允许用户重试刷新并增加明确提示
- 类型修正:修复 RedisMonitor 组件 `NodeJS.Timeout` 在 Vite 下的编译报错
- 测试覆盖:补充达梦 SYSDBA 过滤及兜底查询逻辑的单元测试
2026-03-30 19:46:05 +08:00
tianqijiuyun-latiao
c85de27aac
⚡ perf(query): 批量写语句走一次性 Exec 减少网络往返,修复大量 INSERT 执行慢问题
...
- 新增 BatchWriteExecer 可选接口(ExecBatchContext)
- MySQL/MariaDB/Doris/PostgreSQL/SQLite/DuckDB 实现该接口
- DBQueryMulti 检测到纯写操作时走批量路径,500 条 INSERT 从 500 次网络往返降至 1 次
- 混合语句(SELECT + INSERT)及不支持该接口的驱动继续走原有逐条执行路径
2026-03-29 12:17:37 +08:00
Syngnat
eaa76d8f04
✨ feat(connection): 新增数据库连接图标功能并修复达梦数据库列表为空
...
- 图标组件:新增 DatabaseIcons.tsx,10 种品牌 SVG logo + 7 种彩色文字标签覆盖全部数据源
- 品牌资源:下载 MySQL/PG/Redis/MongoDB/ClickHouse/SQLite/MariaDB/Doris/Sphinx/DuckDB 的 SVG(CC0 许可)
- 类型扩展:SavedConnection 新增 iconType/iconColor 支持自定义图标和颜色
- 外观配置:ConnectionModal 新增"外观"配置区(图标选择器 + 14 色选择器 + 预览面板)
- 数据源选择:Step1 数据源类型卡片全部统一为品牌图标
- 达梦修复:dameng_metadata.go 增加原生 SQL 查询和诊断日志,改善数据库列表获取
- refs #114
- refs #266
2026-03-20 11:19:08 +08:00
Syngnat
5c5e1fc68f
🐛 fix(redis,mongodb): 修复Redis集群数据显示不全和MongoDB指定数据库连接失败
...
- Redis集群ScanKeys改用ForEachMaster逐master节点扫描合并去重
- MongoDB authSource未显式设置时始终默认admin而非Database值
- 同步修复mongodb_impl.go和mongodb_impl_v1.go
- refs #246
2026-03-18 15:51:19 +08:00
杨国锋
6ee0fea110
✨ feat(multi-query): 适配 MariaDB/SQLServer/DiROS 多结果集并增加回退提示
...
- MariaDB: DSN 添加 multiStatements=true,实现 QueryMulti/QueryMultiContext
- SQL Server: 实现 QueryMulti/QueryMultiContext(go-mssqldb 原生支持批处理)
- DiROS: DSN 添加 multiStatements=true(继承 MySQLDB 的方法)
- Sphinx: 自动继承 MySQLDB 多结果集支持,无需额外改动
- 不支持原生多语句的数据源执行多条 SQL 时,前端展示 info 提示
- refs #235
2026-03-17 22:53:24 +08:00
杨国锋
0ab10d2e80
✨ feat(query): 支持多条SQL语句执行返回多结果集
...
- 新增 ResultSetData 结构体承载单个结果集数据
- 新增 MultiResultQuerier/MultiResultQuerierContext 可选接口
- 新增 scanMultiRows 函数利用 NextResultSet() 遍历所有结果集
- MySQL 驱动 DSN 开启 multiStatements=true 并实现多结果集接口
- 新增 DBQueryMulti Wails 方法,支持驱动原生多结果集及自动回退逐条执行
- 新增 Go 版 SQL 拆分函数 splitSQLStatements 及 10 个单元测试
- 前端 QueryEditor handleRun 改为一次性调用 DBQueryMulti
- MongoDB 保持独立的逐条执行路径不受影响
- refs #235
2026-03-17 22:21:49 +08:00
杨国锋
064cdc34be
♻️ refactor(全局): 统一错误消息中文化,补充 godoc 与测试,修复横向滚动和 Vite 代理
...
错误消息中文化:
- 19 个驱动实现文件中 connection not open / table name required 等英文消息替换为中文
- methods_file.go / methods_db.go / methods_driver.go 英文消息中文化
- 前端 App/Sidebar/DataGrid/ConnectionModal/DriverManagerModal 同步替换 "Cancelled" → "已取消"
文档与测试:
- database.go Database/BatchApplier 接口、types.go 12 个类型、driver_support.go 导出函数补充中文 godoc
- 新增 logger_test.go(ErrorChain 5 个用例)和 methods_db_conn_test.go(连接管理 7 个用例)
Bug 修复:
- DataGrid: 将 liveTargets 空检查移至非虚拟路径,修复外部横向滚动条拖动时内容不跟随
- vite.config.ts: server.host 指定 127.0.0.1,修复 IPv6 回环被拦截导致 Wails 代理 502
基础设施:
- .gitignore 新增 .gemini/ 规则,tmpclaude-* 改为 **/tmpclaude-* 覆盖子目录
2026-03-17 21:44:50 +08:00
Syngnat
1a3f137438
🔧 fix(db/kingbase): 统一 search_path 构建并修复双引号重复转义
...
- 新增 buildKingbaseSearchPathCommon,统一 search_path 规范化与拼装逻辑
- schema 名称先做 normalize + 去重,避免已带引号值被二次转义为 ""schema""
- getSearchPathStr 改为收集原始 schema 后走公共构建流程
- optional-driver-agent 复用同一构建函数,消除两套实现偏差
- 对 public 做大小写归一,确保 search_path 输出稳定
- 新增 TestBuildKingbaseSearchPathCommon 覆盖 quoted/escaped/dedupe 场景
2026-03-13 11:22:35 +08:00
Syngnat
e6af5f966b
🔧 fix(driver/kingbase,mongodb): 修复外置驱动事务引用与连接测试链路问题
...
- 金仓外置驱动链路增加表名与变更字段归一化,修复 ApplyChanges 场景下双引号转义异常导致的 SQL 语法错误
- 新增金仓公共标识符工具并复用到 kingbase_impl 与 optional_driver_agent_impl,统一处理多重转义、schema.table 拆分与引用规范
- 金仓代理连接后自动探测并设置 search_path,降低查询时必须手写 schema 前缀的概率
- MongoDB 连接参数改为显式 host/hosts 优先,避免被 URI 中 localhost 覆盖;代理链路保留目标地址不再改写为本地地址
- 连接测试增加前后端超时收敛与日志增强,避免长时间转圈;连接错误文案在未启用 TLS 时移除误导性的“SSL”前缀
- 统一日志级别为 INFO/WARN/ERROR,默认日志目录收敛到 ~/.GoNavi/Logs,并补充驱动构建脚本 build-driver-agents.sh
2026-03-12 16:45:46 +08:00
Syngnat
d8b6b4ef8d
🔧 fix(release,ssh): 修复 SSH 误判连接成功并纠正 DMG 打包结构
...
- SSH 缓存 key 纳入认证指纹(password/keyPath),避免改错凭证仍复用旧连接/端口转发
- MySQL/MariaDB/Doris:SSH 隧道建立失败直接返回错误,不再回退直连导致测试误判成功
- 新增最小单测覆盖 SSH cache key 与 UseSSH 异常路径
- build-release.sh:create-dmg 使用 staging 目录作为 source,避免 DMG 根目录变成 Contents
- refs #213
2026-03-11 14:36:36 +08:00
Syngnat
b0bdddad9b
🔧 fix(release,db/kingbase_impl): 修复金仓默认 schema 并静默生成 DMG
...
- Kingbase:在 current_schema() 为 public 时探测候选 schema,并通过 DSN search_path 重连,兼容未限定 schema 的查询
- 候选优先级:数据库名/用户名同名 schema(存在性校验),否则仅在“唯一用户 schema 有表”场景兜底
- 避免连接污染:每次 Connect 重置探测结果,重连成功后替换连接并关闭旧连接
- 打包脚本:create-dmg 增加 --sandbox-safe,避免构建时自动弹出/打开挂载窗口
- 产物格式:强制 --format UDZO,并将 rw.*.dmg/UDRW 中间产物转换为可分发 DMG
- 校验门禁:增加 hdiutil verify,失败时保留 .app 便于排查,同时修正卷图标探测并补 ad-hoc 签名
2026-03-11 13:39:41 +08:00
Syngnat
a73ca36a32
🔧 fix(db/kingbase_impl): 修复标识符无条件加双引号导致SQL语法报错
...
- quoteKingbaseIdent 改为条件引用,仅对大写字母、保留字、特殊字符的标识符添加双引号
- 新增 kingbaseIdentNeedsQuote 判断标识符是否需要引用
- 新增 isKingbaseReservedWord 检测常见SQL保留字
- 补充 TestQuoteKingbaseIdent、TestKingbaseIdentNeedsQuote 单测覆盖各场景
- refs #176
2026-03-11 10:23:41 +08:00
Syngnat
7644462180
🐛 fix(mongodb): 修复单机模式连接副本集实例时地址被替换为内网地址
...
- getURI 在 topology=single 时未设置 directConnection=true
- 驱动连接目标地址后自动跟随副本集成员发现,切换到 localhost:27017
- 在 mongodb_impl.go 和 mongodb_impl_v1.go 中添加 directConnection=true
- 仅在 topology 非 replica、无 replicaSet、非 SRV 时生效
- refs #205
2026-03-10 10:32:31 +08:00
Syngnat
0daf702d25
✨ feat(data-sync): 扩展跨库迁移链路并优化数据同步交互
...
- 统一同库同步与跨库迁移入口,补充模式区分与风险提示
- 扩展 ClickHouse 与 PG-like 双向迁移,并新增 PG-like、ClickHouse、TDengine 到 MongoDB 的迁移路由
- 完善 TDengine 目标端建表规划、回归测试与需求追踪文档
- refs #51
2026-03-09 17:22:26 +08:00
Syngnat
058c74e49a
🐛 fix(dameng): 修复达梦连接成功后数据库列表为空问题
...
- 调整达梦数据库列表获取策略,优先回退查询当前 schema 与当前用户
- 保留可见用户与 owner 聚合逻辑,兼容低权限账号场景
- 补充前端空列表提示与后端单元测试,降低排查成本
- close #203
2026-03-09 11:02:00 +08:00
杨国锋
b85c7529ec
✨ feat(datasource): 支持 DuckDB Parquet 文件模式并优化弹窗打开链路
...
- 统一 DuckDB 文件库与 Parquet 文件接入能力
- 补充 URI、文件选择、只读挂载与连接缓存键处理
- 去掉数据源卡片点击前的同步驱动查询,修复打开卡顿
- refs #166
2026-03-08 18:42:27 +08:00
杨国锋
e521d2125f
✨ feat(datasource): 支持 DuckDB Parquet 文件模式并优化弹窗打开链路
...
- 统一 DuckDB 文件库与 Parquet 文件接入能力
- 补充 URI、文件选择、只读挂载与连接缓存键处理
- 去掉数据源卡片点击前的同步驱动查询,修复打开卡顿
2026-03-08 18:41:05 +08:00
Syngnat
797ba27d20
Merge remote-tracking branch 'origin/main' into dev
...
# Conflicts:
# .github/workflows/test-build-all-platforms.yml
# frontend/src/components/ConnectionModal.tsx
# internal/db/query_value.go
# internal/db/query_value_test.go
2026-03-07 17:10:17 +08:00
辣条
2b190e564f
feat(multi-db,query,ci): 增强多数据源兼容性、查询体验与全平台测试构建流程 ( #197 )
...
* feat(http-tunnel): 支持独立 HTTP 隧道连接并覆盖多数据源
refs #168
* fix(kingbase-data-grid): 修复金仓打开表卡顿并降低对象渲染开销
refs #178
* fix(kingbase-transaction): 修复金仓事务提交重复引号导致语法错误
refs #176
* fix(driver-agent): 修复老版本 Win10 升级后金仓驱动代理启动失败
refs #177
* chore(ci): 新增手动触发的 macOS 测试构建工作流
* chore(ci): 允许测试工作流在当前分支自动触发
* fix(query-editor): 修复 SQL 编辑中光标随机跳到末尾 refs #185
* feat(data-sync): 增加差异 SQL 预览能力便于审核 refs #174
* fix(clickhouse-connect): 自动识别并回退 HTTP/Native 协议连接 refs #181
* fix(oracle-metadata): 修复视图与函数加载按 schema 过滤异常 refs #155
* fix(dameng-databases): 修复显示全部库时数据库列表不完整 refs #154
* fix(connection,db-list): 统一处理空列表返回并修复达梦连接测试报错 refs #157
* fix(kingbase): 补齐主键识别并优化宽表卡顿 refs #176 refs #178
* fix(query-execution): 支持带前置注释的读查询结果识别
* chore(ci): 新增全平台测试包手动构建工作流
* fix(ci): 修复全平台测试包 artifact 命名冲突
* fix(data-viewer): 保持切换标签后的表格滚动位置
* fix(datetime-display): 修复零日期显示被错误转换 refs #189
* fix(window-scale): 修复任务栏切换后字体异常放大 refs #193
* fix(data-grid-scroll): 修复数据区触摸板横向滚动失效 refs #175
* fix(db-query-value): 清理 query_value 合并冲突并保持零日期处理
* chore(ci): 删除旧的 macOS 单平台测试工作流
2026-03-07 13:40:50 +08:00
github-actions[bot]
1c050aefd0
🔁 chore(sync): 回灌 main 到 dev ( #195 )
...
* - feat(connection,metadata,kingbase): 增强多数据源连接能力并修复金仓/达梦/Oracle/ClickHouse兼容性问题 (#188 )
* feat(http-tunnel): 支持独立 HTTP 隧道连接并覆盖多数据源
refs #168
* fix(kingbase-data-grid): 修复金仓打开表卡顿并降低对象渲染开销
refs #178
* fix(kingbase-transaction): 修复金仓事务提交重复引号导致语法错误
refs #176
* fix(driver-agent): 修复老版本 Win10 升级后金仓驱动代理启动失败
refs #177
* chore(ci): 新增手动触发的 macOS 测试构建工作流
* chore(ci): 允许测试工作流在当前分支自动触发
* fix(query-editor): 修复 SQL 编辑中光标随机跳到末尾 refs #185
* feat(data-sync): 增加差异 SQL 预览能力便于审核 refs #174
* fix(clickhouse-connect): 自动识别并回退 HTTP/Native 协议连接 refs #181
* fix(oracle-metadata): 修复视图与函数加载按 schema 过滤异常 refs #155
* fix(dameng-databases): 修复显示全部库时数据库列表不完整 refs #154
* fix(connection,db-list): 统一处理空列表返回并修复达梦连接测试报错 refs #157
* Release/0.5.3 (#191 )
* - chore(ci): 新增全平台测试包手动构建工作流 tianqijiuyun-latiao 今天 下午4:26 (#194 )
* feat(http-tunnel): 支持独立 HTTP 隧道连接并覆盖多数据源
refs #168
* fix(kingbase-data-grid): 修复金仓打开表卡顿并降低对象渲染开销
refs #178
* fix(kingbase-transaction): 修复金仓事务提交重复引号导致语法错误
refs #176
* fix(driver-agent): 修复老版本 Win10 升级后金仓驱动代理启动失败
refs #177
* chore(ci): 新增手动触发的 macOS 测试构建工作流
* chore(ci): 允许测试工作流在当前分支自动触发
* fix(query-editor): 修复 SQL 编辑中光标随机跳到末尾 refs #185
* feat(data-sync): 增加差异 SQL 预览能力便于审核 refs #174
* fix(clickhouse-connect): 自动识别并回退 HTTP/Native 协议连接 refs #181
* fix(oracle-metadata): 修复视图与函数加载按 schema 过滤异常 refs #155
* fix(dameng-databases): 修复显示全部库时数据库列表不完整 refs #154
* fix(connection,db-list): 统一处理空列表返回并修复达梦连接测试报错 refs #157
* fix(kingbase): 补齐主键识别并优化宽表卡顿 refs #176 refs #178
* fix(query-execution): 支持带前置注释的读查询结果识别
* chore(ci): 新增全平台测试包手动构建工作流
---------
Co-authored-by: 辣条 <69459608+tianqijiuyun-latiao@users.noreply.github.com >
Co-authored-by: Syngnat <92659908+Syngnat@users.noreply.github.com >
2026-03-06 17:36:28 +08:00
辣条
75a5a322e0
- chore(ci): 新增全平台测试包手动构建工作流 tianqijiuyun-latiao 今天 下午4:26 ( #194 )
...
* feat(http-tunnel): 支持独立 HTTP 隧道连接并覆盖多数据源
refs #168
* fix(kingbase-data-grid): 修复金仓打开表卡顿并降低对象渲染开销
refs #178
* fix(kingbase-transaction): 修复金仓事务提交重复引号导致语法错误
refs #176
* fix(driver-agent): 修复老版本 Win10 升级后金仓驱动代理启动失败
refs #177
* chore(ci): 新增手动触发的 macOS 测试构建工作流
* chore(ci): 允许测试工作流在当前分支自动触发
* fix(query-editor): 修复 SQL 编辑中光标随机跳到末尾 refs #185
* feat(data-sync): 增加差异 SQL 预览能力便于审核 refs #174
* fix(clickhouse-connect): 自动识别并回退 HTTP/Native 协议连接 refs #181
* fix(oracle-metadata): 修复视图与函数加载按 schema 过滤异常 refs #155
* fix(dameng-databases): 修复显示全部库时数据库列表不完整 refs #154
* fix(connection,db-list): 统一处理空列表返回并修复达梦连接测试报错 refs #157
* fix(kingbase): 补齐主键识别并优化宽表卡顿 refs #176 refs #178
* fix(query-execution): 支持带前置注释的读查询结果识别
* chore(ci): 新增全平台测试包手动构建工作流
2026-03-06 17:32:14 +08:00
github-actions[bot]
04f8b266d3
- feat(connection,metadata,kingbase): 增强多数据源连接能力并修复金仓/达梦/Oracle/ClickHouse兼容性问题 ( #188 ) ( #190 )
...
* feat(http-tunnel): 支持独立 HTTP 隧道连接并覆盖多数据源
refs #168
* fix(kingbase-data-grid): 修复金仓打开表卡顿并降低对象渲染开销
refs #178
* fix(kingbase-transaction): 修复金仓事务提交重复引号导致语法错误
refs #176
* fix(driver-agent): 修复老版本 Win10 升级后金仓驱动代理启动失败
refs #177
* chore(ci): 新增手动触发的 macOS 测试构建工作流
* chore(ci): 允许测试工作流在当前分支自动触发
* fix(query-editor): 修复 SQL 编辑中光标随机跳到末尾 refs #185
* feat(data-sync): 增加差异 SQL 预览能力便于审核 refs #174
* fix(clickhouse-connect): 自动识别并回退 HTTP/Native 协议连接 refs #181
* fix(oracle-metadata): 修复视图与函数加载按 schema 过滤异常 refs #155
* fix(dameng-databases): 修复显示全部库时数据库列表不完整 refs #154
* fix(connection,db-list): 统一处理空列表返回并修复达梦连接测试报错 refs #157
Co-authored-by: 辣条 <69459608+tianqijiuyun-latiao@users.noreply.github.com >
2026-03-06 13:57:11 +08:00
辣条
b53227cb15
- feat(connection,metadata,kingbase): 增强多数据源连接能力并修复金仓/达梦/Oracle/ClickHouse兼容性问题 ( #188 )
...
* feat(http-tunnel): 支持独立 HTTP 隧道连接并覆盖多数据源
refs #168
* fix(kingbase-data-grid): 修复金仓打开表卡顿并降低对象渲染开销
refs #178
* fix(kingbase-transaction): 修复金仓事务提交重复引号导致语法错误
refs #176
* fix(driver-agent): 修复老版本 Win10 升级后金仓驱动代理启动失败
refs #177
* chore(ci): 新增手动触发的 macOS 测试构建工作流
* chore(ci): 允许测试工作流在当前分支自动触发
* fix(query-editor): 修复 SQL 编辑中光标随机跳到末尾 refs #185
* feat(data-sync): 增加差异 SQL 预览能力便于审核 refs #174
* fix(clickhouse-connect): 自动识别并回退 HTTP/Native 协议连接 refs #181
* fix(oracle-metadata): 修复视图与函数加载按 schema 过滤异常 refs #155
* fix(dameng-databases): 修复显示全部库时数据库列表不完整 refs #154
* fix(connection,db-list): 统一处理空列表返回并修复达梦连接测试报错 refs #157
2026-03-06 13:55:13 +08:00
辣条
71b41459e7
feat(mongodb,connection-tree,query-editor,sidebar,sqlserver,table-designer,ssl): 完成 MongoDB v1/v2 驱动切换与复制连接,增强快捷键/搜索/筛选与设计表体验,并修复 SQLServer、SSL 及连接稳定性问题 ( #180 )
...
* feat(mongodb-driver,connection-tree): 支持 MongoDB v1/v2 切换并新增复制连接
* fix(mongodb-query): 修复 MongoDB 筛选不生效并兼容 shell 语法执行
refs #153
* fix(query-editor): 修复 SQLServer 自动补全回车重复 dbo 前缀
refs #159
* fix(sqlserver-table-designer): 修复设计表读取列时错误使用 schema 作为数据库名
refs #156
* feat(shortcuts): 增加快捷键设置并支持 SQL 执行/侧边栏搜索
refs #158
* fix(sidebar-search): 优化范围搜索匹配与交互
refs #158
* fix(filter,connection-recovery): 保持筛选状态并修复连接失效卡死
refs #165
同步修复连接失效后侧栏持续转圈、断开后无法恢复的问题
* feat(table-designer): 统一设计表界面风格并优化字段新增交互
- 统一设计表页面与数据面板的视觉风格,覆盖工具栏、Tabs、表格与编辑区域
- 移除默认硬边框,改为透明背景与细分隔线,提升整体观感一致性
- 添加字段后自动滚动到新行并高亮,且自动聚焦输入框
- 新增" 在选中字段后添加\,支持按选中字段位置插入字段
* feat(data-grid-filter): 筛选字段支持快捷搜索
- 在筛选条件字段下拉启用可搜索(showSearch)
- 支持字段名大小写不敏感模糊匹配
- 表字段较多时可快速定位目标字段,减少下拉查找耗时
refs #171
* fix(db-ssl): 支持多数据源 SSL/TLS 连接并补齐达梦证书配置
refs #167
* fix(sidebar): 修复数据库加载时 null.map 导致表加载失败
* fix(query-editor): 合并运行按钮并保留 SQL 停止执行入口
2026-03-05 16:52:06 +08:00
Syngnat
494484eb92
Release/0.5.1 ( #149 )
...
* 🐛 fix(data-viewer): 修复ClickHouse尾部分页异常并增强DuckDB复杂类型兼容
- DataViewer 新增 ClickHouse 反向分页策略,修复最后页与倒数页查询失败
- DuckDB 查询失败时按列类型生成安全 SELECT,复杂类型转 VARCHAR 重试
- 分页状态统一使用 currentPage 回填,避免页码与总数推导不一致
- 增强查询异常日志与重试路径,降低大表场景卡顿与误报
* ✨ feat(frontend-driver): 驱动管理支持快速搜索并优化信息展示
- 新增搜索框,支持按 DuckDB/ClickHouse 等关键字快速定位驱动
- 显示“匹配 x / y”统计与无结果提示
- 优化头部区域排版,提升透明/暗色场景下的视觉对齐
* 🔧 fix(connection-modal): 修复多数据源URI导入解析并校正Oracle服务名校验
- 新增单主机URI解析映射,兼容 postgres/postgresql、sqlserver、redis、tdengine、dameng(dm)、kingbase、highgo、vastbase、clickhouse、oracle
- 抽取 parseSingleHostUri 复用逻辑,统一 host/port/user/password/database 回填行为
- Oracle 连接新增服务名必填校验,移除“服务名为空回退用户名”的隐式逻辑
- 连接弹窗补充 Oracle 服务名输入项与 URI 示例
* 🐛 fix(query-export): 修复查询结果导出卡住并统一按数据源能力控制导出路径
- 查询结果页导出增加稳定兜底,异常时确保 loading 关闭避免持续转圈
- DataGrid 导出逻辑按数据源能力分流,优先走后端 ExportQuery 并保留结果集导出降级
- QueryEditor 传递结果导出 SQL,保证查询结果导出范围与当前结果一致
- 后端补充 ExportData/ExportQuery 关键日志,提升导出链路可观测性
* 🐛 fix(precision): 修复查询链路与分页统计的大整数精度丢失
- 代理响应数据解码改为 UseNumber,避免默认 float64 吞精度
- 统一归一化 json.Number 与超界整数,超出 JS 安全范围转字符串
- 修复 DataViewer 总数解析,超大值不再误转 Number 参与分页
- refs #142
* 🐛 fix(driver-manager): 修复驱动管理网络告警重复并强化代理引导
- 新增下载链路域名探测,区分“GitHub可达但驱动下载链路不可达”
- 网络不可达场景仅保留红色强提醒,移除重复二级告警
- 强提醒增加“打开全局代理设置”入口,优先引导使用 GoNavi 全局代理
- 统一网络检测与目录说明提示图标尺寸,修复加载期视觉不一致
- refs #141
* ♻️ refactor(frontend-interaction): 统一标签拖拽与暗色主题交互实现
- 重构Tab拖拽排序实现,统一为可配置拖拽引擎
- 规范拖拽与点击事件边界,提升交互一致性
- 统一多组件暗色透明样式策略,减少硬编码色值
- 提升Redis/表格/连接面板在透明模式下的观感一致性
- refs #144
* ♻️ refactor(update-state): 重构在线更新状态流并按版本统一进度展示
- 重构更新检查与下载状态同步流程,减少前后端状态分叉
- 进度展示严格绑定 latestVersion,避免跨版本状态串用
- 优化 about 打开场景的静默检查状态回填逻辑
- 统一下载弹窗关闭/后台隐藏行为
- 保持现有安装流程并补齐目录打开能力
* 🎨 style(sidebar-log): 将SQL执行日志入口调整为悬浮胶囊样式
- 移除侧栏底部整条日志入口容器
- 新增悬浮按钮阴影/边框/透明背景并适配明暗主题
- 为树区域预留底部空间避免入口遮挡内容
* ✨ feat(redis-cluster): 支持集群模式逻辑多库隔离与 0-15 库切换
- 前端恢复 Redis 集群场景下 db0-db15 的数据库选择与展示
- 后端新增集群逻辑库命名空间前缀映射,统一 key/pattern 读写隔离
- 覆盖扫描、读取、写入、删除、重命名等核心操作的键映射规则
- 集群命令通道支持 SELECT 逻辑切库与 FLUSHDB 逻辑库清空
- refs #145
* ✨ feat(DataGrid): 大数据表虚拟滚动性能优化及UI一致性修复
- 启用动态虚拟滚动(数据量≥500行自动切换),解决万行数据表卡顿问题
- 虚拟模式下EditableCell改用div渲染,CSS选择器从元素级改为类级适配虚拟DOM
- 修复虚拟模式双水平滚动条:样式化rc-virtual-list内置滚动条为胶囊外观,禁用自定义外部滚动条
- 为rc-virtual-list水平滚动条添加鼠标滚轮支持(MutationObserver + marginLeft驱动)
- 修复白色主题透明模式下列名悬浮Tooltip对比度不足的问题
- 新增白色主题全局滚动条样式适配透明模式(App.css)
- App.tsx主题token与组件样式优化
- refs #147
* 🔧 chore(app): 清理 App.tsx 类型告警并收敛前端壳层实现
- 清除未使用代码和冗余状态
- 替换弃用 API 以消除 IDE 提示
- 显式处理浮动 Promise 避免告警
- 保持现有更新检查和代理设置行为不变
---------
Co-authored-by: Syngnat <yangguofeng919@gmail.com >
2026-03-03 14:35:17 +08:00
Syngnat
4c322db9d0
💥 breaking(driver-manager): 统一 Doris 驱动命名并移除 diros 历史包兼容
...
- 前后端统一 Doris 展示与连接命名,修复 diros 拼写问题
- GitHub Actions 驱动产物改为 doris-driver-agent-* 命名
- 构建流程保持内部 gonavi_diros_driver 映射,避免构建链路中断
- 驱动安装/下载/解压链路仅识别 doris 资产名,不再兼容 diros 历史包
- 内置与文档 manifest 下载地址统一为 builtin://activate/doris
- close #132
2026-02-28 15:27:58 +08:00
Syngnat
884d72f3d3
♻️ refactor(clickhouse): 使用结构化 Options 替代 DSN 连接构造
...
- 用 buildClickHouseOptions 收敛连接参数生成逻辑
- 将连接入口改为 clickhouse.OpenDB(Options)
- 清理 DSN 中的 write_timeout/read_timeout/dial_timeout 透传路径
- 同步重写 ClickHouse 相关测试断言
- refs #138
2026-02-28 11:56:59 +08:00
Syngnat
cb18bc3067
✨ feat(driver-proxy): 新增ClickHouse数据源并提供全局代理独立入口
...
- 新增 ClickHouse 可选驱动实现与 optional-driver-agent provider,补齐驱动注册与清单配置
- 补齐 ClickHouse 连接与 SQL 适配:连接默认端口/用户、LIMIT、标识符引用、只读编辑限制
- 新增全局代理后端能力与前端持久化配置,更新检查和驱动网络请求统一走代理客户端
2026-02-27 16:39:13 +08:00
Syngnat
96de46cf1e
🐛 fix(postgres-connection): 修复无postgres库时连接失败并支持默认连接库配置
...
- PostgreSQL 空 database 时按 postgres、template1、用户名同名库回退连接
- 移除后端对 database=postgres 的硬编码写死逻辑
- 连接弹窗新增 PostgreSQL 默认连接数据库(可选)配置项
- refs #120
2026-02-27 09:49:47 +08:00
Syngnat
7d5592d8d9
✨ feat(db): 数据库连接新增 SOCKS5/HTTP 代理能力并兼容 SRV/SSH 场景
...
- 后端 ConnectionConfig 增加代理配置并完成规范化处理
- 普通 TCP 数据源通过本地转发接入代理
- MongoDB 使用 Dialer 支持代理连接(含 SRV)
- 前端连接配置新增代理 UI、字段清洗与数据回填
- refs #122
2026-02-27 09:31:24 +08:00
Syngnat
66a3113fa8
🐛 fix(datagrid-mysql): 修复MySQL行编辑时datetime空值提交失败
...
- 前端按列类型归一化 temporal 字段,INSERT 空值跳过字段、UPDATE 空值转 NULL
- 后端 ApplyChanges 增加 temporal 字段兜底,避免空字符串写入 datetime/timestamp
- 新增全默认值插入路径,兼容 CURRENT_TIMESTAMP 等默认值场景
- refs #113
2026-02-26 14:13:27 +08:00
Syngnat
1ba68fcbfe
🐛 fix(release): 修复 Debian 13 Linux 产物 WebKitGTK 依赖不兼容
...
- Linux Release 增加 WebKitGTK 4.1 变体(-WebKit41),保留 4.0 产物
- CI 按 WebKit 版本安装依赖,并为 Wails 注入 webkit2_41 构建标签
- 完善驱动代理可执行文件路径校验错误提示(区分不存在/目录)
- README 补充 Linux 依赖排障与产物选择说明
- refs #98
2026-02-14 15:17:03 +08:00
Syngnat
f0e1c7e72c
🔧 fix(driver-agent): 修复 Windows 启动驱动代理弹出终端窗口
...
- 为 Windows 新增 agent 进程启动参数(HideWindow + CREATE_NO_WINDOW)
- optional driver agent 启动路径统一应用进程隐藏配置
- MySQL agent 启动路径同步应用进程隐藏配置
2026-02-14 15:01:29 +08:00
Syngnat
60a42e3c34
🔧 fix(connection-modal): 修复 SQLite 连接配置回填导致路径变形问题
...
- ConnectionModal 中 sqlite 使用独立路径规则,不再参与 host:port 解析
- 修复编辑连接时的回填逻辑,阻断 F:\... 被追加 :3306
- 统一 URI 解析与生成行为,确保保存后再次编辑不变形
- 保留并强化驱动安装态判断与现有交互
2026-02-14 09:51:17 +08:00
Syngnat
26a7aacfec
✨ feat(drivers): 支持按需启动数据源并通过外置驱动代理减少发行包体积
...
- MySQL/Redis/Oracle/PostgreSQL 内置可用,其余数据源改为“安装启用”后可用
- 新建连接对未安装驱动做弹窗内拦截提示,并支持一键跳转驱动管理安装
- 驱动管理展示安装包真实大小(从 Release 资产元数据读取)并优化加载性能
- Release 工作流发布各平台驱动代理资产,主程序构建启用 -s -w 精简
2026-02-13 17:23:38 +08:00
Syngnat
8df9ea717c
🔧 fix(ci-release-duckdb): 修复 DuckDB 导致的多平台打包失败并统一发布命名与更新匹配
...
- DuckDB 驱动迁移至官方 duckdb-go/v2 并按平台条件编译
- 修复 Windows/arm64 与 macOS/arm64 的构建失败链路
- 修复 macOS 10.13 下窗口材质可用性告警导致的打包问题
- 统一发布包命名规则(去掉版本前缀 v,架构统一 Amd64/Arm64)
- Windows 同时产出 exe/zip,在线更新优先匹配 exe 并保留 zip 兼容
2026-02-12 10:37:00 +08:00
Syngnat
e01ecfc387
✨ feat(datasource): 新增 DuckDB 与 Diros 数据源并补齐 DuckDB 函数管理
...
- 新增 DuckDB 与 Diros 后端驱动实现并接入数据库工厂
- 前端连接配置补充 DuckDB/Diros 入口及方言映射
- 侧边栏支持 DuckDB Macro 函数列表加载与对象分组展示
- 定义查看器支持 DuckDB 函数定义查询与 DDL 还原
- 后端补充 DuckDB 函数删除分支并限制存储过程操作
2026-02-11 17:25:38 +08:00
宣言就是Siam
33f4208f39
Support Sphinx DESCRIBE in GetColumns
...
Update SphinxDB.GetColumns to use Sphinx's DESCRIBE output to build column definitions instead of delegating unconditionally to MySQL. The code issues `DESCRIBE <table>` and parses Field/Type/Properties (with case-insensitive lookup), sets sensible defaults (Nullable="YES", no primary key, Extra from Properties) and marks indexed fields as MUL. If DESCRIBE fails or returns no rows the implementation falls back to s.MySQLDB.GetColumns. Also add a logger import and a warning when DESCRIBE returns no columns.
2026-02-11 15:23:46 +08:00
Syngnat
17d174bc5b
♻️ refactor(sphinx-compat): 优化Sphinx表列表查询兼容实现
...
- 保留MySQL复用路径并增加Sphinx语法不兼容回退分支
- 统一回退查询结果的字段提取逻辑
- 提升Sphinx索引列表加载健壮性与容错能力
2026-02-11 11:14:39 +08:00
杨国锋
e6fe6eb026
✨ feat(sphinx): 新增Sphinx数据源并补齐对象能力兼容链路
...
- 新增 SphinxDB 驱动注册并复用 MySQL 协议连接
- 前端新增 sphinx 连接类型与默认端口 9306
- 函数/视图/触发器改为多语句回退查询与版本探测提示
- 后端对不支持能力返回稳定降级结果
2026-02-10 20:12:25 +08:00
Syngnat
de8fb60a30
✨ feat(highgo-sm3): 增加瀚高SM3专用驱动并解耦PostgreSQL连接链路
...
- 引入 third_party/highgo-pq 作为 HighGo 专用驱动实现
- 调整驱动注册与连接入口,避免覆盖 postgres 驱动
- 保持 PG 数据源行为不变并补充接入文档
2026-02-10 17:42:28 +08:00