DevSpace Portable 1.1.15
DevSpace Portable 1.1.15
1.1.15 增加基于公开 GitHub Releases 的在线更新,并重做原生控制中心的会话分组、逐文件差异和关闭窗口行为。Portable Protocol 保持 1.5,现有 MCP 顶层工具定义不变。
GitHub Release 在线更新
- “状态与部署”新增“检查更新”,直接读取公开仓库的最新稳定 Release 和
update-manifest.json,不要求用户配置 GitHub Token。 - 下载前核对 Release 标签、仓库、文件名和清单;下载后同时校验字节数与 SHA-256,并拒绝逃逸
DevSpacePortable/根目录的压缩包条目。 - 更新包先解压到
.update-staging/;用户确认安装后,独立 PowerShell 更新器等待原生 UI 退出,再停止当前 Portable 服务并替换应用文件。 data/、logs/和reports/始终保留。替换过程使用同目录备份;任何验证、替换或启动错误都会恢复旧文件并重新启动旧版本。- Git 源码检出目录明确拒绝应用级覆盖,只允许正式 Release 解压目录执行在线更新。
会话历史按名称分组
- 同名会话合并到一个视觉分组,分组按最近一次修改时间从新到旧排列,置顶分组仍优先显示。
- 每个分组内部的具体会话轮次同样按最近更新时间从新到旧排列,并保留文件数、增删行数、状态和项目目录。
- 分组标题只负责汇总,回退、重命名、隐藏、归档和打开目录必须选择分组内的一轮具体会话,避免误操作。
现代逐文件差异
- 文件差异区改为接近 PyCharm/Codex 的深色统一差异视图,增加文件标题、行号栏、差异元信息和新增、删除、区块、文件头背景色。
- 未选择文件时只显示引导提示,不再退回展示整轮会话的全部 patch。
- 选择上方任意改动文件后,只提取并渲染该文件对应的 unified diff;无法可靠匹配文件区块时显示空状态,而不是泄露其他文件差异。
关闭窗口与系统托盘
- 点击窗口右上角关闭按钮时,弹出“最小化到系统托盘”“退出控制中心”“取消”三种选择。
- 最小化到托盘会隐藏窗口、保留 UI 进程、本地桌面租约、Computer Use 和后台服务;双击托盘图标或使用菜单可恢复窗口。
- 退出控制中心只关闭原生 UI 和本地 UI 租约,不停止 DevSpace、隧道或计划任务。
- 可勾选“记住我的选择”;托盘菜单提供“下次关闭时询问”以清除偏好。
验证
- 原生 WinForms x64 编译通过。
- Portable manager、在线更新器 PowerShell 语法和更新契约测试通过。
- 会话分组、仅选中文件差异、关闭选择、Memory CRUD、Computer Use、插件与稀疏审阅回归继续通过。
- 最终 ZIP、更新清单和 GitHub Release 附件按大小与 SHA-256 交叉验证。