Amulet-Team / Amulet-Map-Editor

A new Minecraft world editor and converter that supports all versions since Java 1.12 and Bedrock 1.7.
https://www.amuletmc.com/
1.79k stars 123 forks source link

Program updator #121

Open gentlegiantJGC opened 4 years ago

gentlegiantJGC commented 4 years ago

Currently to update, users have to to the website and manually download and install the new zip of the program.

I haven't looked into it too much but PyUpdater seems like it might be what we are looking for. It is built on top of PyInstaller

gentlegiantJGC commented 4 years ago

Here are some links

https://www.pyupdater.org/

https://github.com/Digital-Sapphire/PyUpdater

https://pyupdater-wx-demo.readthedocs.io/en/latest/overview.html

Podshot commented 4 years ago

I can start looking into PyUpdater, from a quick glance at the wx-demo it seems a bit complicated to integrate into our current codebase but I'll keep investigating.

Another possible solution would be to write our own updater (in Python/Java/another language) and have Amulet download the latest updater release, which then handles the updating process. This way we can also back up existing user settings/configuration and then restore them after updating, as well as doing any additional steps to transfer user data. Off of the top of my head, this would beneficial if we happen to do any of these things in the future by comparing the existing version with the version being downloaded: