I've noticed that the "Check for updates on startup" Preferences option appears to be broken. (I'm aware that it only checks at most once per day.)
The (non-manually) else if-block in Check4Update() seems to lack a call to ShowSelfUpdateResult(), here added by me to illustrate where it's missing and to test this fix (which seems to be working) :
I could submit a PR, but would like to check whether this is the "correct" fix...
On a side note, the implicit (hidden) feature of "only check for updates once on the same day" somewhat contradicts the phrasing of the option "Check for updates on startup" which really sounds like it would check on EACH startup. This makes it easy to think that auto-check is broken, even when it's not... I'd suggest to remove this ambiguity by any of these 3 solutions:
- Leave the current implementation as-is, but clarify its behavior by renaming the option to "Check for updates on startup (once per day)".
- Add a 2nd checkbox option "Only check once per day" next to "Check for updates on startup".
- Make auto-check more straight-forward by actually checking on every startup (after all, there's already a "Skip This Version" feature).
Personally, I'd vote for the last solution, for the following reasons:
- Checking on EACH startup would not postpone notification of a new version until tomorrow, if SourceGit was already launched earlier today (before the new version was published) and then again after the release.
- I may not be ready to update when the notification pops up the first time, but I would still expect to be reminded on the next startup as well. (I don't find it very annoying to be reminded on each start.) But if I make a lot of restarts and DO start to get annoyed, I can always press the "Skip This Version" button. (At that stage, I would probably be getting annoyed the next day too, so this option is a sufficient one and a better fit anyway.)
I've noticed that the "Check for updates on startup" Preferences option appears to be broken. (I'm aware that it only checks at most once per day.)
The (non-
manually)else if-block inCheck4Update()seems to lack a call toShowSelfUpdateResult(), here added by me to illustrate where it's missing and to test this fix (which seems to be working) :I could submit a PR, but would like to check whether this is the "correct" fix...
On a side note, the implicit (hidden) feature of "only check for updates once on the same day" somewhat contradicts the phrasing of the option "Check for updates on startup" which really sounds like it would check on EACH startup. This makes it easy to think that auto-check is broken, even when it's not... I'd suggest to remove this ambiguity by any of these 3 solutions:
Personally, I'd vote for the last solution, for the following reasons: