Bug Fixes
修复了使用鼠标侧键在项目列表与界面间进行前进/后退时触发的报错。
导出项目或数据库时,必须选择为其他设备导出。已修复。
新建数据库后,不关闭项目的情况下再次打开数据库配置界面进行修改,此时点击提交界面不会关闭。已修复。
使用 JavaScript/TypeScript 修改 MongoDB/Redis 数据前会校验返回值是否有循环引用,但是之前的实现不能支持菱形引用。已修复。
没有推断数据库类型时,依然生成了需要类型才能执行的TypeScript代码。现在会生成
rawsql。之前的日志自动清理没有正常执行。
aghsorm 生成了错误的
insert,update语句。
Changes
修改数据库网络代理不需要重启应用了。
SQL数据库在以Base64格式提交Bytes类型字段时,会严格校验是否为Base64编码。(之前会将非Base64字符串转为UTF8的Bytes后再Base64编码后提交。)
现在关闭Tab时,如果有未提交的事务,会自动回滚。
MongoDB生成的Typescript类型的命名会根据字段名来确定,而不是之前的Hash值。
现在SQL数据库的Int类型会展示Bitsize。(Oracle数据库除外,SQLite总是64位)。
变体的单元格也可以查看原始值。变体转换失败会有红色下划线提示。
单元格的“暂存修改”指示器位置调整至左上角。
优化SQL中注释指令的参数解析。现在可以支持值为字符串的情况。比如
@colrender bytes / hex / lowercase=false; separator=" \" ",separator的值就是"。SQL 文件中的
@param指令的options部分可以多行。SQL 数据库的时间类型严格的转换为了四种,
WallTime,PlainDate,PlaintDatetime和Instant。包括从数据库读取、渲染、参数和提交。删除数据库时,询问是否也删除文件(对于自动发现的数据库的自动删除则默认删除文件)。之前的行为是默认保留。
现在 Monaco Editor 在进行 Typescript 编辑时,可以跳转到类型定义了。
现在保存文件前,会执行一次格式化。
DuckDB 改为使用动态链接库,用户需要单独下载
libduckdb-<os>-<arch>.zip.生产环境标识提供更多提醒,在非生产环境的项目中也可以将某些数据库标记为生产环境。
httpapi 现在需要额外配置域名白名单。
Features
可以将多个表信息和数据库版本信息组织成一个 Markdown 文件,以便于和 LLM 交流。
可以直接编辑渲染变体了。
新增日志查看功能。而且所有可取消的操作都可以在日志中主动取消。但是具体能付取消取决于后端或驱动的具体实现。
Bytes 新增 Hex 和 Bitmap 两种变体。
JavaScript/TypeScript 新增了
faker.js库,用于生成随机数据。现在可以在设置中自定义单元格的颜色。
SQL 的 TypeScript Shell 新增 DDL api。
SQL 的 TypeScript Shell 现在可以 DryRun,即只查看生成的 SQL 而不真的执行。
在 Typescript Shell 中新增
batchapi.在 Typescript Shell 中新增
fsreadapi,会打开一个文件选择器,而不是直接读取文件。表选项新增重命名功能。
Others
自定义字体加载通过AssetServer,而不是Base64了。
设置快捷键时改为录制了。
优化 Monaco Editor 的调用方式,优化性能。之前的使用方式把它完全当作React组件了。
可以导出翻译模板Excel,方便自定义翻译。
更新到了 Mantine 9,主题色的实现好像不一样了。所以主题色现在可以选择使用HLS还是OKLCH。
App的数据可以迁移到其他目录了。默认是
$APPDATA/com.ruiransoft.dbnova/。