Add "What's New" page and format release notes better by ychin · Pull Request #1 · macvim-dev/macvim-dev.github.io

@ychin

Add a new "What's New" page that will display the release notes in HTML
hosted from MacVim website instead of needing to go to GitHub releases
page. This will be used within MacVim to show a built-in "What's New"
page whenever the user has updated to a new version. It's a static site
that has the 4 latest releases (via Jekyll templating) with only the
latest release visible. MacVim will use URL parameters to specify which
version it wants to see (e.g. if a user upgraded from 176 to 178, the
page will show 177 and 178's release notes) and JavaScript on the page
will hide/show the relevant HTML elements.

Also, refactor release notes to be included and version controlled
instead of just being a part of the appcast XML. As part of this, commit
some recent historical release notes to populate the list and make them
easier to access.

Also refactor out the CSS styles for them and make the header looks
better with a line separator like GitHub Release's styling.

@ychin ychin deleted the whatsnew-page-better-release-notes branch

July 8, 2023 09:31

ychin added a commit to ychin/macvim that referenced this pull request

Jul 8, 2023
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 macvim-dev#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
macvim-dev/macvim-dev.github.io#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.

@ychin ychin mentioned this pull request

Jul 8, 2023

ychin added a commit to ychin/macvim that referenced this pull request

Jul 8, 2023
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 macvim-dev#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
macvim-dev/macvim-dev.github.io#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.