diff --git a/electron-builder.yml b/electron-builder.yml index dbd1f036..536e6553 100644 --- a/electron-builder.yml +++ b/electron-builder.yml @@ -63,7 +63,4 @@ electronDownload: afterSign: scripts/notarize.js releaseInfo: releaseNotes: | - 修复快捷翻译部分模型无法正常使用问题 - 改进智能体页面搜索功能 - 改进重新回复按钮功能 - 重新生成的图标修改为@符号 + 修复删除助手会导致应用崩溃的问题 diff --git a/package.json b/package.json index 65da54dc..942b2ef7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "CherryStudio", - "version": "0.8.21", + "version": "0.8.22", "private": true, "description": "A powerful AI assistant for producer.", "main": "./out/main/index.js", diff --git a/src/main/services/AppUpdater.ts b/src/main/services/AppUpdater.ts index d112e024..03dc8c38 100644 --- a/src/main/services/AppUpdater.ts +++ b/src/main/services/AppUpdater.ts @@ -20,6 +20,13 @@ export default class AppUpdater { autoUpdater.on('update-available', (releaseInfo: UpdateInfo) => { autoUpdater.logger?.info('检测到新版本,开始自动下载') mainWindow.webContents.send('update-available', releaseInfo) + + dialog.showMessageBox({ + type: 'info', + title: '正在下载新版本', + message: `新版本 ${releaseInfo.version}`, + detail: this.formatReleaseNotes(releaseInfo.releaseNotes) + }) }) // 检测到不需要更新时 @@ -34,13 +41,15 @@ export default class AppUpdater { }) // 当需要更新的内容下载完成后 - autoUpdater.on('update-downloaded', () => { - logger.info('下载完成,询问用户是否更新') + autoUpdater.on('update-downloaded', (releaseInfo: UpdateInfo) => { + logger.info('下载完成,询问用户是否更新', releaseInfo) + dialog .showMessageBox({ type: 'info', title: '安装更新', - message: '更新已下载完成,是否立即安装?', + message: `新版本 ${releaseInfo.version} 已准备就绪`, + detail: this.formatReleaseNotes(releaseInfo.releaseNotes), buttons: ['稍后安装', '立即安装'], defaultId: 1, cancelId: 0 @@ -55,4 +64,21 @@ export default class AppUpdater { this.autoUpdater = autoUpdater } + + private formatReleaseNotes(releaseNotes: string | ReleaseNoteInfo[] | null | undefined): string { + if (!releaseNotes) { + return '暂无更新说明' + } + + if (typeof releaseNotes === 'string') { + return releaseNotes + } + + return releaseNotes.map((note) => note.note).join('\n') + } +} + +interface ReleaseNoteInfo { + readonly version: string + readonly note: string | null } diff --git a/src/renderer/src/pages/home/Messages/Message.tsx b/src/renderer/src/pages/home/Messages/Message.tsx index 4fafb142..ce589be8 100644 --- a/src/renderer/src/pages/home/Messages/Message.tsx +++ b/src/renderer/src/pages/home/Messages/Message.tsx @@ -168,7 +168,7 @@ const MessageItem: FC = ({