Illuminated2020
037e082104
feat(handoff): 增加连接 ID 和稳定排序
...
- 为 HandoffItem 增加 connection_id,并保留 connection_name 用于展示
- 为 handoffs 增加自增 seq 并迁移旧表结构
- load_pending_handoffs 按 created_at 与 seq 稳定 FIFO 排序
- 补充同 created_at FIFO、seq 结构与 connectionId 序列化测试
2026-05-12 16:47:40 +08:00
Illuminated2020
72690f6ebf
feat(core): 增加 handoff 队列存储模型
...
- 新增 handoff 状态与队列项 DTO
- 为 Storage 增加 handoffs 表和 pending 读写方法
- 补充 handoff 队列保存、排序和状态过滤单测
2026-05-12 16:46:53 +08:00
t8y2
90e32ec683
fix(grid): skip null columns in INSERT so database defaults apply
...
When cloning or adding a row, null columns (e.g. auto-increment PKs)
were explicitly inserted as NULL, violating NOT NULL constraints.
Omit them so the database DEFAULT (sequence, now(), etc.) kicks in.
2026-05-12 16:45:53 +08:00
Illuminated2020
81a6dce5ac
fix(sql_safety): 修复 CTE 兄弟片段边界误判
...
- CTE 内 DELETE/UPDATE 离开当前片段后停止查找 WHERE/LIMIT
- 补充 sibling CTE WHERE/LIMIT 不应降低风险等级的回归测试
2026-05-12 16:45:31 +08:00
Illuminated2020
99e7997620
fix(sql_safety): 修正子查询边界误判
2026-05-12 16:45:30 +08:00
Illuminated2020
1909856467
fix(sql-safety): 修复 SQL 风险复审问题
...
- 调整环境标签优先级,并阻止显式非生产标签回退
- 将无 WHERE/LIMIT 的 DELETE/UPDATE 标记为 critical
- 跳过 PostgreSQL dollar quote,扫描 MySQL executable comment
- 补充 sql_safety 覆盖测试
2026-05-12 16:45:30 +08:00
Illuminated2020
99e5e6317d
fix(sql-safety): 修正危险 SQL 分类与风险上下文
...
- 扫描可执行 SQL token,避免 WITH、EXPLAIN ANALYZE 和多语句中的写入/DDL 被判为 Read
- 引入 RiskContext 支持 environment_label,并保留 risk_for_connection 便捷调用
- 补充 SQL 安全分类与生产环境风险识别测试
BREAKING CHANGE: risk_for 现在接收 RiskContext;三参数便捷调用迁移为 risk_for_connection
2026-05-12 16:45:30 +08:00
Illuminated2020
bc6898cd22
feat(dbx-core): 新增 SQL 安全风险分类
...
- 添加 sql_safety 模块,区分 READ、WRITE、DDL 和 Unknown
- 增加生产连接信号识别和风险元数据输出
- 导出模块并补充分类器单元测试
2026-05-12 16:45:30 +08:00
Illuminated2020
7f83739040
fix(cli): 校验 CLI envelope 反序列化
...
- 为 CliEnvelope 增加 ok/data/error 一致性校验和回归测试
- 让 dbx-cli commands 复用 dbx-core 的 CLI DTO 与 helper
2026-05-12 16:45:30 +08:00
Illuminated2020
10373bdf36
feat(dbx-core): 新增 CLI envelope DTO
...
- 添加 CLI source、error code、error 和 envelope 类型
- 导出 dbx-core::cli 模块并补充序列化单元测试
- 补齐既有测试 fixture 的 JDBC 默认字段以恢复目标测试编译
2026-05-12 16:45:30 +08:00
Illuminated2020
dd113ed714
build(dbx-cli): 将 CLI 二进制改名为 dbx-cli
...
- 更新 dbx-cli crate 的 bin 目标名,避免与桌面 dbx 目标冲突
- 同步计划文档中的 cargo run 命令引用
- 保留 runtime_client.rs 现有格式化改动
2026-05-12 16:43:46 +08:00
Illuminated2020
01110945a1
fix(dbx-cli): 补齐最小 runtime client 模块以恢复编译
...
- 新增 commands 和 runtime_client 最小实现,补足 main.rs 所需模块
- 允许 context 读取 GUI runtime,GUI 专属命令在 headless 下返回结构化错误
- 更新 Cargo.lock 并确认 cargo check -p dbx-cli --locked 通过
2026-05-12 16:43:46 +08:00
Illuminated2020
5720f05dd0
feat(cli): 添加 CLI crate 骨架
2026-05-12 16:43:46 +08:00
Illuminated2020
4991acf79a
docs: add dbx cli runtime implementation plan
2026-05-12 16:43:46 +08:00
Illuminated2020
b0d4575455
chore: ignore worktree directory
2026-05-12 16:43:46 +08:00
t8y2
99439c143b
feat(grid): add Clone Row to row context menu ( closes #227 )
...
Copy the selected row as a new row with primary key columns set to
null so auto-increment values are generated on save.
2026-05-12 16:36:05 +08:00
t8y2
24ab55ed17
fix(sqlserver): preserve batch semantics for CTE and DECLARE statements
...
SQL Server treats `;` as a statement terminator, not a batch separator.
The previous logic split multi-statement SQL by `;` and executed each
independently, breaking variable/CTE scope across statements.
Send the entire SQL as a single batch via `simple_query` so DECLARE,
SET, and CTE definitions remain visible to subsequent statements.
Split only on the `GO` client directive when present.
2026-05-12 16:22:22 +08:00
t8y2
01c4b744ef
fix(updater): show real app version and release notes
2026-05-12 15:15:46 +08:00
t8y2
724813c72a
chore: bump version to 0.5.4
v0.5.4
2026-05-12 14:56:10 +08:00
t8y2
45e67fae6e
feat(jdbc): support SSH tunnel and proxy for JDBC connections
...
Parse host:port from JDBC URLs and rewrite them when an SSH or proxy
tunnel is active, so the Java plugin connects through the local
forwarded port. Enable the SSH/Proxy tabs in the connection dialog
for JDBC.
2026-05-12 14:53:45 +08:00
t8y2
c8d4a04a31
test(sidebar): align flat tree buffer expectation
2026-05-12 14:53:22 +08:00
t8y2
53a45330a6
feat(sidebar): group objects by type and add Object Browser context menus ( #222 )
...
Sidebar tree now groups database objects into Tables, Views, Procedures,
and Functions folders instead of a flat list. Empty groups are hidden
and each group shows its item count.
Object Browser rows now have right-click context menus with actions
like View Data, New Query, View Source, and Drop.
2026-05-12 14:33:52 +08:00
t8y2
76ff987d00
fix(sidebar): clear children cache before refreshing expanded nodes
...
When refreshAllTree skipped collapsed child nodes, their IDs remained
in loadedTreeNodeChildrenIds. After the parent was rebuilt with fresh
children, expanding a previously-collapsed node hit useCachedChildren
and returned immediately with empty children.
2026-05-12 14:06:10 +08:00
t8y2
03cc4ba80a
fix(grid): refine data grid toolbar layout
2026-05-12 14:05:03 +08:00
t8y2
9463ff07a7
fix(grid): preserve page size when reloading data after save
...
The reload event did not carry limit/offset, so buildTableSelectSql
always fell back to its default LIMIT 100, resetting 1000-row pages
back to 100 after every commit.
2026-05-12 13:55:15 +08:00
t8y2
78184544cf
perf(grid): optimize virtual scroll to reduce white flash during fast scrolling
...
Add buffer, skip-hover, will-change, and CSS contain properties to all
RecycleScroller instances (DataGrid, ConnectionTree, ObjectBrowser,
RedisKeyBrowser). Disable pointer-events during scroll in DataGrid to
reduce repaint overhead.
2026-05-12 13:50:03 +08:00
t8y2
368fa5a102
feat(redis): add bulk operations and command runner
2026-05-12 13:38:43 +08:00
t8y2
f2e8b49df7
feat(settings): improve settings dialog links
2026-05-12 13:02:36 +08:00
skyler
30f9b4ab8c
Merge pull request #224 from Abeautifulsnow/fix/db-placement-copy
...
feat(connection): 为不同数据库类型展示各自对应的 connection URL placeholder
2026-05-12 10:58:26 +08:00
runstone
3652db8fa3
feat(connection): 为不同数据库类型展示各自对应的 connection URL placeholder
...
## 修改内容
- 新增 connectionUrlPlaceholder 纯函数于 connectionPresentation.ts,根据 db_type 返回对应 URL 格式
- ConnectionDialog.vue 中引用该函数替换原有统一的 i18n placeholder
- 新增 20 个单元测试覆盖所有数据库类型及边界场景
2026-05-12 10:21:19 +08:00
skyler
57874ce33c
Merge pull request #221 from rarnu/feat/ai-thinking-option
...
feat: 为AI设置增加了thinking的开关
2026-05-12 09:43:06 +08:00
rarnu
4f0a13f24f
add: 为AI设置增加了thinking的开关
2026-05-12 01:16:40 +08:00
t8y2
8cf0f612d4
fix(tree): Modify the shouldVirtualizeFlatTree function to support virtualization for non-empty trees.
2026-05-12 01:12:18 +08:00
skyler
ab1b4ae227
Merge pull request #220 from rarnu/feat/editor-settings
...
Opt: 优化设置页面
2026-05-12 00:08:26 +08:00
rarnu
c18593d003
add: 修改布局方案中选中项的样式为浅蓝色(与AI内API选项的样式一致)
2026-05-11 23:33:27 +08:00
rarnu
e8ab15140a
add: 将AI大模型的设置移至设置页
2026-05-11 23:25:27 +08:00
skyler
4af72bf2a6
Merge pull request #219 from xKrah/main
...
Add support new types for postgresql
2026-05-11 22:10:01 +08:00
Alexandr
ad5e6fcce4
Merge branch 't8y2:main' into main
2026-05-11 17:11:12 +04:00
KraH
23bbfcb157
Added support for integer arrays
...
Added support for float4
2026-05-11 17:06:43 +04:00
Abeautifulsnow
dddb813fc6
refactor(grid): 提取 cellValue 格式化到共享模块并增加测试 ( #218 )
...
将 CellValue 类型和 displayCellValue(原 formatCell)提取到
src/lib/cellValue.ts,DataGrid.vue 和 useDataGridExport.ts 统一引用,
移除 composable 中冗余的 formatCell 参数传递。
2026-05-11 18:56:08 +08:00
t8y2
e4c1d6639b
fix(sidebar): 保持表列表滚动显示
2026-05-11 17:15:36 +08:00
t8y2
cab0e79dad
fix(oracle): 修复表数据加载与编辑
2026-05-11 16:35:59 +08:00
t8y2
79277c660f
feat(proxy): 增加数据库和 AI 代理支持
2026-05-11 15:05:25 +08:00
Alexandr
1d5a2b2220
Fixed single quotes causing build failures ( #214 )
...
* i18n for redis key browser;
* Fixed single quotes causing build failures
2026-05-11 13:49:10 +08:00
t8y2
02b2c31b7c
fix(oracle): support RAC/SCAN connection redirect ( closes #209 )
...
Update rust-oracle to include Oracle connection redirect support.
Previously connections through RAC/SCAN listeners failed with
"redirect not implemented" error.
2026-05-11 13:46:28 +08:00
Alexandr
a6a0b0c5b2
Merge branch 'main' into main
2026-05-11 09:35:51 +04:00
KraH
e817141234
Fixed single quotes causing build failures
2026-05-11 09:31:51 +04:00
Alexandr
6de801557a
i18n for redis key browser; ( #213 )
2026-05-11 13:26:28 +08:00
KraH
60bfac35e6
i18n for redis key browser;
2026-05-11 09:21:27 +04:00
t8y2
39f33e15d4
fix(sidebar): allow search to find tables hidden behind object browser
...
When a database has more than 15 tables, only the first 15 are shown
in the tree with an "object browser" entry for the rest. The sidebar
search could not find tables beyond the first 15.
Store hidden table nodes on the object-browser TreeNode and search
through them in filterTree when a query is active.
2026-05-11 13:21:19 +08:00