Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show all release notes in the upgrade window #225

Closed
lwouis opened this issue Apr 8, 2020 · 6 comments
Closed

Show all release notes in the upgrade window #225

lwouis opened this issue Apr 8, 2020 · 6 comments
Labels
documentation Improvements or additions to documentation

Comments

@lwouis
Copy link
Owner

lwouis commented Apr 8, 2020

There is a bug currently in Sparkle where it shows only releases notes for the latest release, instead of the release notes of all releases between current and latest.

A workaround would be to display the full changelog on all releases. I think it's better than the current state. See the discussion in the link above for more details

@lwouis lwouis added the documentation Improvements or additions to documentation label Apr 8, 2020
@lwouis
Copy link
Owner Author

lwouis commented Apr 9, 2020

There are currently 680 lines in the changelog. I'm worried that the appcast.xml file could get too big too fast if we put the full changelog on every release. The file can get into the multi-megabytes quickly, and then download time will be long, and displaying the text may be reducing UI performance in the textview.

@DaVince
Copy link

DaVince commented Apr 10, 2020

Thanks for this app, it's very useful and nice :)

I have no experience with what Sparkle handles exactly, but I can think of the following options to limit the appcast.xml size:

  • Limit the amount of entries to 10 max (if possible).
  • Show the full changelog text for the very last version only.
  • Limit older entries to a 5 line summary at most, with a link at the end pointing to that version's Github release page in case someone wants the full changelog.

@lwouis
Copy link
Owner Author

lwouis commented Apr 11, 2020

@DaVince thanks for the suggestions!

All 3 of them have the downside that we have to implement that, and that involves either risky regexps, or involving a markdown or xml parser then writing transformation code.

The solution I have in mind for now, that would be very easy to implement is to use Sparkle appcast.xml tag called releaseNotesLink. Using this tag instead of inlining the changelog delta as is done today, Sparkle will display the full release note on every upgrade, but the appcast only list 1 line every release, like:

<sparkle:releaseNotesLink>https://lwouis.github.io/alt-tab-macos/CHANGELOG</sparkle:releaseNotesLink>

To have a clean HTML page though, I can't just link to the CHANGELOG.md from github, otherwise there is github framing around. I'm waiting on #211 to be completed, and then I will link to the CHANGELOG from there, which will be fullscreen and nice. I already experimented with that and the results are very nice.

@lwouis
Copy link
Owner Author

lwouis commented May 11, 2020

I've released the new website, and also a new page which is displayed by Sparkle on update. I find this new UX very nice and clear. The only missing piece would be localization, but that's a huge undertaking. We could imagine providing google translate links though. However I'm not sure that would be an actual improvement, if the translation is worse than showing english for some users who understand a bit of english.

Update: I actually tried en->fr, and it's impressively good. It may be an improvement to do!

@lwouis
Copy link
Owner Author

lwouis commented May 11, 2020

I thought it was done, but there is a very complex issue in Sparkle which makes it so the translation of release notes is not working currently. I opened a PR to Sparkle. Hopefully they merge it and release a new version. I tried to fork my own but I don't understand how they package Sparkle. It's different from a simple pod like Shortcut Recorder which I forked in the past.

@lwouis
Copy link
Owner Author

lwouis commented May 25, 2020

This is now done, together with localized released notes thanks to google translate, for users not using English 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants