macvim-dev / macvim

Vim - the text editor - for macOS
https://macvim.org
Vim License
7.51k stars 683 forks source link

Add "What's New" page to show release notes after update to new version #1414

Closed ychin closed 1 year ago

ychin commented 1 year ago

Currently when a user uses Sparkle updater to update, they will see the release notes beforehand. However, if they are updating across multiple versions, they only see the latest one. Also, if they are using automatic update, they will not see the release notes page. Users who get MacVim from Homebrew or manually building from source also do not see the release notes as those mechanisms are driven from command line. This makes it harder to communicate new features and announcements to these users.

Add a new "What's New" page that will be automatically shown whenever the user has updated to a new version of MacVim. The last version of MacVIm is tracked by the MMLastUsedBundleVersion value previously added in #1357, which allows us to detect such update no matter what installation method was used and display a dialog box. Other than opening at launch, the user can also open it in the Help menu, and there's an option to make it not open at launch if it's annoying to the user.

The release notes is served by http://macvim.org/ (done in https://github.com/macvim-dev/macvim-dev.github.io/pull/1) so we don't have to bundle it locally and it makes it easier to update them. MacVim will know the request a range of release notes (if updating across multiple versions at once) so that all new versions will be visible.

Also, fix it so that both Sparkle updater and the new What's New page will properly be shown on top of the new MacVim window that gets opened when MacVim is launched. Previously when we get a new update, Sparkle frequently gets hid behind the editor window.