Repository navigation
feat(updater): add release notes tab and one-time post-install dialog - #418
Open
WilliamWang1721 wants to merge 19 commits into
Open
WilliamWang1721 wants to merge 19 commits into
WilliamWang1721 wants to merge 19 commits into
Conversation
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The single-version cache can evict pending update notes and prevent the promised offline post-install dialog.
Review effort: Balanced
Findings: 1
Open (2)
What changed in this PR
Adds version-specific release notes to Settings and a one-time post-install dialog.
Changes:
- Caches, snapshots, fetches, and acknowledges release notes.
- Adds shared Markdown UI and Settings navigation.
- Defers the dialog until a visible window exists.
| File | Description |
|---|---|
nebula_app/src/update_download/handoff/tests.rs |
Tests successful and rolled-back handoffs. |
nebula_app/src/update_download/handoff.rs |
Snapshots notes and verifies completed updates. |
nebula_app/src/update_check/release_notes.rs |
Implements release-note persistence and retrieval. |
nebula_app/src/update_check/fallback.rs |
Extends fallback release metadata. |
nebula_app/src/update_check.rs |
Caches bodies and emits installed-update events. |
nebula_app/src/gpui_shell/workspace/windowing/transfer_tests.rs |
Tests visible-window deferral. |
nebula_app/src/gpui_shell/workspace/windowing/shell_events.rs |
Routes process-level shell events. |
nebula_app/src/gpui_shell/workspace/windowing.rs |
Extracts shell-event dispatching. |
nebula_app/src/gpui_shell/workspace/update_dialog.rs |
Queues and claims installed notes. |
nebula_app/src/gpui_shell/workspace/residency.rs |
Handles the new shell event variant. |
nebula_app/src/gpui_shell/workspace.rs |
Updates dialog exports. |
nebula_app/src/gpui_shell/settings_pane/tests.rs |
Updates navigation expectations. |
nebula_app/src/gpui_shell/settings_pane/search_header.rs |
Tests release-note search terms. |
nebula_app/src/gpui_shell/settings_pane/navigation.rs |
Adds the release-notes section. |
nebula_app/src/gpui_shell/settings_pane/initialization.rs |
Initializes release-note view state. |
nebula_app/src/gpui_shell/settings_pane/about.rs |
Links About to the internal section. |
nebula_app/src/gpui_shell/settings_pane.rs |
Renders the release-notes section. |
nebula_app/src/gpui_shell/release_notes.rs |
Adds shared Markdown view and dialog. |
nebula_app/src/gpui_shell/mod.rs |
Registers UI module and event. |
nebula_app/i18n/zh-CN.json |
Adds Chinese UI messages. |
nebula_app/i18n/en-US.json |
Adds English UI messages. |
architecture/notes/nebula_app/update_check/2026-09-30-installed-release-notes.md |
Records persistence design. |
architecture/notes/nebula_app/gpui_shell/workspace/windowing/2026-10-01-installed-notes-visibility.md |
Records visibility lifecycle design. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+13
to
+15
| fn cache_path() -> PathBuf { | ||
| nebula_settings::settings_dir().join("updates/release-notes.json") | ||
| } |
|
|
||
| ## Status | ||
|
|
||
| Implemented; regression validation pending. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Result / 用户结果
新增设置“更新内容” Tab。自动安装成功后首次启动展示一次当前版本的 GitHub Release description,支持 Markdown 富文本,重启不重复展示。
Design / 设计边界
复用现有 TextView、安装交接记录和带锁的持久化状态。保存对应版本的 Release body;Tab 与弹窗共用视图。没有新增依赖或安装权限。
Evidence / 验证依据
https://github.com/WilliamWang1721/pebrel/actions/runs/36748073849
Required Review / 必须确认
AI assistance: GPT-6 Codex.