Jacalz / rymdport

Cross-platform application for easy encrypted file, folder, and text sharing between devices.
https://rymdport.github.io/
GNU General Public License v3.0
1.1k stars 57 forks source link

Automatic update tries to update to the same release (with new checksums) #116

Open graphixillusion opened 1 year ago

graphixillusion commented 1 year ago

Checklist

Description

The update mechanism seems to be broken: upon launch it detects new version (even if the version is already up to date), it downloads the update and the app restarts itself. The old exe is renamed in ".Rymdport.exe.old" and the the new exe has a different checksum of the previous one but the version it's still the same. This exact same issue happens with the previous version too (3.4.0): it updates to the same 3.4.0 version with different hashes and the app still remains on the version 3.4.0 missing the 3.5.0 target.

Steps to Reproduce

  1. Download the last release and start it
  2. The app shows an update notification asking to update
  3. The update process download a new exe, rename the old one to ".Rymdport.exe.old" and restart the app
  4. The app has the same version of before but the exe has different checksum hash

Screenshots

No response

Rymdport version

3.5.0, 3.4.0 (didn't try the oldest ones)

Operating System

Windows

Operating System Version

Windows 11

Go Compiler Version

No response

Additional Information

Already reporte here too:

https://github.com/Jacalz/rymdport/issues/76#issuecomment-1706842842

Jacalz commented 1 year ago

Thanks for the report. I have been quite busy lately. Will look at this as soon as I can

Jacalz commented 1 year ago

Sorry for the late reply. I can replicate this on Linux as well (apart from the renamed file). How very odd. I'll bring this up to the folks developing the update tooling.

Jacalz commented 1 year ago

Seems to be a duplicate of https://github.com/fynelabs/selfupdate/issues/31. I'll keep this open until it is fixed upstream and I've updated to a new version of the selfupdate dependency.