So after the 3.3 disaster, I've been loath to release anything new. But I've been working on a major overhaul for a few years. Finally pulled the trigger. I tested this in every way I could think of and finally got it working as expected. The big hurdle was getting it to update 3.5 or 3.6 versions. Those used config files, and had borked unzipper code. I now fixed the unzipper. But when they unzip the new version it's all borked, so I had to write code to manually fix it.
But of course, it wasn't just that easy, I had to figure out a way to fix it BEFORE the new app really started running, as it needs things to be nice and tidy in folders, not the mess the old unzipper made, dumping everything into the ./ path. So it has to start, fix the problems previous versions made, THEN RESTART itself and fully load. That was fun.
I also dropped config files to move to a SQLite DB for configs. Therefore, I had to figure out how to pull existing settings, then put them into the new DB, and continue on without needing user interaction. So I didn't break automation. That wasn't too bad, just some trial and error.
There are a few known issues:
If you are running Python 3.5 or below, you're sunk. This app won't run on them. Google says 3.6 can be made to work with it by installing dataclasses, but I never tested it. I started DEV on 3.7 and didn't realize it was the first version that had it. But I was many many many hours in by then. If you want to use older Python, just install EmbyUpdate v3.6 and set the config to not update the app.
If for some reason it can't read your config files, it will stop the app. As I don't want to update you to a Stable version if you're running Beta, if I can't tell what release type you're on, I just stop. I suggest just installing 4.12 manually and selecting the desired options in the config wizard.
I'm trying every way possible in 4.12 to find out what version your server is on from the server directly. Not a big deal on new installs, as you'll get a setup wizard to get the server communication working. But if the server is down, you've changed your ports, or have a firewall blocking the default port on localhost, I have no way to tell what version your running. (I found a way around this on Debian, I've found a local .json in Emby's app folder that has the info, but that's for another day). Anyway, no matter what, if I can't reach your server, the app is going to try and install the latest version. No big deal, as all distro's I've tested on simply say "Yeah fool, we're already on that version. Ya fool!" but I hate it wastes the time and space to try.
I think that's it. Lots of new features. But I have to get them documented. A lot you can do from the command line with arguments now. But I haven't tested them all out recently. Want to focus on this upgrade, work through any issues anyone has, and then start working on the features again.
So after the 3.3 disaster, I've been loath to release anything new. But I've been working on a major overhaul for a few years. Finally pulled the trigger. I tested this in every way I could think of and finally got it working as expected. The big hurdle was getting it to update 3.5 or 3.6 versions. Those used config files, and had borked unzipper code. I now fixed the unzipper. But when they unzip the new version it's all borked, so I had to write code to manually fix it.
But of course, it wasn't just that easy, I had to figure out a way to fix it BEFORE the new app really started running, as it needs things to be nice and tidy in folders, not the mess the old unzipper made, dumping everything into the ./ path. So it has to start, fix the problems previous versions made, THEN RESTART itself and fully load. That was fun.
I also dropped config files to move to a SQLite DB for configs. Therefore, I had to figure out how to pull existing settings, then put them into the new DB, and continue on without needing user interaction. So I didn't break automation. That wasn't too bad, just some trial and error.
There are a few known issues:
I think that's it. Lots of new features. But I have to get them documented. A lot you can do from the command line with arguments now. But I haven't tested them all out recently. Want to focus on this upgrade, work through any issues anyone has, and then start working on the features again.