parasyte / cartunes

Simple comparison app for iRacing car setups.
MIT License
55 stars 12 forks source link

Check for updates at startup #11

Closed parasyte closed 2 years ago

parasyte commented 2 years ago

This is a large change that adds a simple periodic update check. It defaults to disabled (so the app doesn't require internet access).

The app will remember the last time it checked for updates, and also the last version it knows about. There is unusual behavior with this; If the app is closed while there is an update notification and the app is not updated, the persistence will cause the app to not show an update until another version is released. I might want to change this so the last known version is only persisted when the update notification is dismissed. But I also like that dismissal currently doesn't remove the notification from the GUI.

parasyte commented 2 years ago

The persistence was updated to save the release notes and update URL so that update notifications can be provided at startup without hitting GitHub's API. This fixes the unusual behavior described above.

I also replaced the async http-client crate with the threaded ureq crate to simplify the dependency tree (removing 140 small crates).