201 lines
8.7 KiB
Markdown
201 lines
8.7 KiB
Markdown
# 更新日志
|
||
|
||
## [0.5.0] - 2026-05-05 (fs-only-v3)
|
||
|
||
### 新增 ✨
|
||
- **云 OSS 存储**: 七牛云/阿里云双厂商支持,AK/SK 认证连接
|
||
- **多桶导航**: 根目录自动列出所有桶,点进桶浏览文件,桶级客户端懒创建+缓存
|
||
- **OSS 全功能 CRUD**: 列目录/读文件/写文件/创建/删除/重命名/预签名URL
|
||
- **GBK 编码自动转换**: 文件预览智能检测编码(UTF-8/GBK),解决 LRC 等中文文件乱码
|
||
- **桶图标 🪣**: OSS 桶与普通文件夹图标区分
|
||
- **连接对话框 OSS 分类**: 「云OSS」父分类 + 厂商子选择(七牛云/阿里云)
|
||
- **Sidebar 折叠架构**: 收藏夹和帮助文档独立区块,各自支持折叠/展开
|
||
- **帮助文档区块**: 静态快捷键参考面板,默认展示
|
||
- **收藏夹内部滚动**: 收藏内容多时列表区域独立滚动,帮助区块固定底部不溢出
|
||
|
||
### 重构 🔧
|
||
- **Wails v3 迁移**: 从 Wails v2 升级至 v3 alpha.80,全面重构项目架构
|
||
- **前端目录规范化**: `web/` → `frontend/`,对齐 Wails v3 标准目录结构
|
||
- **跨平台构建配置**: 新增 Android/iOS/Linux/macOS/Docker 构建模板(Taskfile.yml)
|
||
- **v3 Bindings**: 自动生成的 TypeScript 绑定替代手动维护的 wailsjs
|
||
|
||
### 修复 🐛
|
||
- **MP3 误报加载失败**: 音频 @canplay 清除错误状态 + previewUrl watcher 重置
|
||
- **启动路径恢复错误**: 本地模式跳过 Linux/OSS 路径残留,避免 `open /bucket` 报错
|
||
- **阿里云签名修复**: ListFiles 签名不含 list 查询参数(prefix/delimiter/marker/max-keys 非子资源)
|
||
- **阿里云 XML 解析**: `<Contents>` 直接映射文件字段,修正 `Contents.Object` 嵌套错误
|
||
- **阿里云 LastModified**: 宽容时间解析(4 种格式兼容)
|
||
- **临时文件白名单放行**: OSS/SFTP 预览文件绕过文件类型限制
|
||
- **custom.js 404**: AssetOptions Middleware 拦截返回空响应,消除控制台报错
|
||
- **longPressTimer TypeError**: `const` → `let` 修复重复赋值错误
|
||
- **Arco Tabs padding**: 覆盖默认 16px padding-top
|
||
- **DevTools 可用性**: production 构建带 devtools tag + 延迟 OpenDevTools() 调用
|
||
|
||
### 变更说明
|
||
- 分支: `feature/fs-only` → `fs-only-v3`
|
||
- 入口: main.go 新增 Middleware 中间件模式
|
||
- build/config.yml executes 流水线对齐官方模板(once → background → blocking → primary)
|
||
|
||
---
|
||
|
||
## [0.4.0] - 2026-04-25
|
||
|
||
### 重构 🔧
|
||
- **移除数据库客户端模块**: 删除全部 MySQL/Redis/MongoDB 相关代码(-17,885 行),应用专注文件管理
|
||
- **清理依赖**: 移除 go-sql-driver/mysql、go-redis/v9、mongo-driver/v2、gorm.io/driver/mysql 等驱动依赖
|
||
- **构建体积优化**: 原始 exe 从 36MB 降至 26MB,UPX 压缩后仅 7.5MB(压缩率 28.8%)
|
||
|
||
### 变更说明
|
||
- 顶部 Tab 仅保留「文件管理」,移除数据库入口
|
||
- Markdown 编辑器、版本历史、系统信息、更新检查等模块不受影响
|
||
- 本地 SQLite 配置存储(AppConfig)保留不变
|
||
|
||
---
|
||
|
||
## [0.3.4] - 2026-04-22
|
||
|
||
### 新增 ✨
|
||
- **CodeMirror 搜索功能**: Ctrl+F / Ctrl+H 全局查找替换,`@codemirror/search` 集成
|
||
- **编辑器滚动位置恢复**: LRU 缓存(最多5份/3分钟TTL),切换文件不丢位置
|
||
- **文件列表列排序**: 图标/名称/时间/大小四列可排序,升序降序切换
|
||
- **文件搜索过滤**: 工具栏实时搜索框,按文件名过滤列表
|
||
- **Toolbar UI 重排**: 快捷访问内嵌面包屑左侧、历史记录改为图标+tooltip、Ctrl+H 快捷键
|
||
- **更新面板 Markdown 渲染**: changelog 用 `marked.parse()` 结构化渲染,替代纯文本
|
||
- **重命名零闪烁**: `updateFilePath()` 仅迁移路径引用+草稿key,不重新加载内容
|
||
|
||
### 优化 🚀
|
||
- **路径安全重构**: `validateFilePath()` 提取统一函数,消除两处重复校验代码
|
||
- **requireUpdateAPI 模式**: 7 处重复 nil 检查收敛为 guard 方法
|
||
- **端口统一**: 文件服务器端口 18765→8073,全局一致消除魔法数字分散
|
||
- **文件服务器 URL 动态获取**: 前端从后端 API 获取,不再硬编码
|
||
- **Tab 配置迁移扩展**: MigrateTabConfig 改为 map 驱动,覆盖 openclaw-manager→version 迁移
|
||
- **updateContent 简化**: 去掉时间窗口双重检查,仅保留版本号机制
|
||
|
||
### 安全修复 🔒
|
||
- **sentinel error 替代字符串匹配**: validateFilePath 错误用 `errors.Is()` 判断,消息变更不再静默失效
|
||
- **sanitizeHtml 防御远程 Markdown XSS**: 过滤 script/iframe/embed/on* 事件属性
|
||
|
||
### 修复 🐛
|
||
- **showHeader 默认值修正**: localStorage 无值时默认显示表头(兼容旧行为)
|
||
- **外层容器双重 scroll reset 移除**: 避免 CodeEditor 内部滚动恢复与外层 reset 冲突闪烁
|
||
|
||
---
|
||
|
||
## [0.3.3] - 2026-04-13
|
||
|
||
### 新增 ✨
|
||
- **Markdown 编辑器**: 独立编辑页面、实时预览、字符/行数统计、Ctrl+S 保存、自动保存
|
||
- **Markdown 文件页面**: 独立的 Markdown 文件查看与编辑界面 (`views/markdown-editor/`)
|
||
- **PDF 导出**: 浏览器打印 + 后端 gofpdf/chromedp 多种导出方式
|
||
- **窗口置顶**: 支持窗口始终置顶
|
||
- **收藏夹置顶**: 收藏项支持置顶排序
|
||
- **文件预览**: Excel/Word 文件预览支持
|
||
- **数据库 UI 大幅改进**: 查询历史面板、查询模板面板、SQL 工具栏、结果导出(CSV)、SQL 格式化器
|
||
- **数据库可见性过滤**: 连接管理增强、ConnectionForm 重写、统一错误处理模块 (`database-error.ts`)
|
||
|
||
### 优化 🚀
|
||
- MySQL 动态连接池重构 — 健康检查、性能权重、自适应扩缩容
|
||
- SQL 查询优化器 — 查询缓存、慢查询日志
|
||
- Redis Pipeline — 批量命令、事务 MULTI/EXEC 支持
|
||
- Office/CSV 预览增强 — 本地文件服务器获取文件
|
||
- Markdown 增强 — 本地文件链接支持、Shell 语法高亮
|
||
- HTML 预览 — 改用 iframe src 替代 srcdoc
|
||
- Wails 框架升级 + Mermaid 主题切换 + 代码高亮修复
|
||
- 文件列表 UI 重构 — 统一渲染逻辑,提升滚动性能
|
||
- CSV 编辑模式优化 + PDF 导出重构
|
||
- 拷贝功能优化
|
||
|
||
### 修复 🐛
|
||
- Office 文件预览:修复类型检测与二进制误判
|
||
- 本地文件服务器 CORS 跨域问题
|
||
- 大文件点击卡死问题
|
||
- 收藏夹 bug 修复
|
||
- FileEditorPanel 语法错误
|
||
|
||
### 安全修复 🔒
|
||
- XSS 防护(PdfExportButton、MarkdownPreview HTML 消毒)
|
||
- PDF 导出路径穿越防护
|
||
- PDF 导出标题 HTML 注入防护
|
||
|
||
### 重构 🔧
|
||
- CodeMirror 架构优化 — 统一导出避免多实例问题
|
||
- 消除代码重复 — storage/connection_service 重构、useVisibleDatabases 抽取
|
||
- 大规模死代码清理,显著减小包体积
|
||
- 配置加载超时保护(最多重试 30 次)
|
||
- 正则表达式预编译、缓存读锁优化
|
||
- 禁止 Ctrl+滚轮缩放
|
||
- Dockerfile 语法高亮支持
|
||
- 滚动条样式修复
|
||
|
||
### 文件系统 📁
|
||
- 右键菜单新增新建文件/文件夹
|
||
- FileEditorPanel 集成 PDF 导出按钮
|
||
- Markdown 文件自动预览与编辑/预览模式切换
|
||
- 面包屑导航组件
|
||
|
||
---
|
||
|
||
## [0.3.2] - 2026-02-05
|
||
|
||
### 重构 🔧
|
||
- **CodeMirror 架构优化** - 统一导出避免多实例问题
|
||
- **语言加载器优化** - 从动态 import 改为静态导入,提升稳定性
|
||
- **动态主题切换** - 使用 Compartment 实现无损切换
|
||
|
||
### 优化 🚀
|
||
- **编辑器性能** - 添加内容更新防抖,减少不必要的渲染
|
||
- **亮色主题** - 改进代码编辑器亮色模式样式
|
||
- **构建配置** - 简化 Vite 配置,优化打包效率
|
||
|
||
### 依赖清理 🧹
|
||
- 移除废弃的 `@codemirror/highlight` 包
|
||
- 移除不再使用的 `@codemirror/legacy-modes` 包
|
||
|
||
---
|
||
|
||
## [0.3.0] - 2026-02-04
|
||
|
||
### 新增 ✨
|
||
- **Markdown 图表支持** - 支持 Mermaid 流程图、时序图、类图等多种图表渲染
|
||
- **代码语法高亮** - 支持 20+ 种常用编程语言的语法高亮
|
||
- **文件列表优化** - 文件夹优先显示,同类型按名称排序
|
||
|
||
### 修复 🐛
|
||
- 修复编辑/预览模式切换时图表不渲染的问题
|
||
- 修复不同主题下代码高亮显示问题
|
||
|
||
---
|
||
|
||
## [0.2.0] - 2026-01-28
|
||
|
||
### 新增 ✨
|
||
- **应用配置管理** - 全新设置面板,支持自定义显示模块和默认启动页
|
||
- **智能更新提醒** - 新增版本更新通知组件
|
||
- **模块重命名** - 应用更名为 u-desk
|
||
|
||
---
|
||
|
||
## [0.1.5] - 2026-01-22
|
||
|
||
### 新增 ✨
|
||
- **文件管理模块** - 文件浏览、编辑、操作功能
|
||
- **版本更新管理** - 自动检查和下载更新
|
||
- **系统信息查询** - CPU、内存、磁盘等硬件信息
|
||
|
||
---
|
||
|
||
## [0.1.0] - 2026-01-18
|
||
|
||
### 新增 ✨
|
||
- **数据库管理** - 支持多种数据库连接和查询功能
|
||
|
||
---
|
||
|
||
## 版本规范
|
||
|
||
版本号格式:`主版本号.次版本号.修订号` (MAJOR.MINOR.PATCH)
|
||
|
||
- **主版本号** - 不兼容的 API 修改
|
||
- **次版本号** - 向下兼容的功能性新增
|
||
- **修订号** - 向下兼容的问题修复
|