OF-DL icon indicating copy to clipboard operation
OF-DL copied to clipboard

Feature Request: Support auto-updating to newest release

Open melithine opened this issue 1 year ago • 0 comments

It would be helpful for users if OFDL could not just detect that there is a newer version, but also update to it.

DoD (Definition of Done):

  • New config option to disable automatic updates to preserve user autonomy.
  • Automatic updates should only be applied under Windows. Unix clients should not attempt to autoupdate-- this makes no sense with regards to Docker, and it's not like we build ZIP release files for macOS or Linux anyways.
  • All files in the Windows release ZIP should be extracted except for config.json and auth.json -- we don't want to overwrite the user's existing configs or auth info when updating to a new release (but we do want the .exe, any .dlls, and rules.json to be updated).
  • If possible, once the new files are in place, swap to the new version without the user needing to re-invoke the application. If not, log a message and wait for a keypress unless in non-interactive mode.

Questions:

  • Should we preserve the original files in a backup folder before the new ones are put in place for safety's sake?
  • Should we apply autoupdates to noninteractive users? I suspect that most of the people using noninteractive are likely doing so via Docker or the native Linux builds, but I'm challenging my own assumption here.
  • I'm leaning towards once this option is available, the config setting will be disabled by default in the initial release, and then after a release or two later, we change the default to enabled. That would give more time for people to test it out on an opt-in basis before opening the floodgates.

melithine avatar Sep 08 '24 20:09 melithine