Ken.F, this build's for you (and anyone else that wants to try it, of course)!
Version 3.4.1~beta1 - February 4, 2021
- Fix bug that allowed startup tasks to execute out of order on systems with a low precision system clock
- Fix bug that caused all EPG data to be resent to Kodi during startup regardless of a detected change to the data
- Fix bug that caused "Timer Deleted" toast messages for timers associated with an existing recording
While I didn't find Ken.F's specific concern with Windows 7, at least I don't think, looking for it exposed a few (quite old) defects that occur mainly during addon startup. Many thanks to Ken.F for the report and especially the log file that illustrated this first bug:
Fix bug that allowed startup tasks to execute out of order on systems with a low precision system clock
Category: Correctness
While probably not really a huge problem in and of itself, the discovery tasks that occur during startup are supposed to happen in a certain order to make sure the most current data is used. For example, it does no good to go try to get stuff that relies on the device authorization code(s) if you haven't reloaded those yet. The tasks are scheduled based on the system clock, but on Windows 7 the system clock granularity is very low and all the tasks got scheduled to happen at the exact same time, so it was a crap shoot which ones would fire. The fix ensures that they will go in the order they are supposed to, both during startup and also on resume for systems that support suspend/resume.
Fix bug that caused all EPG data to be resent to Kodi during startup regardless of a detected change to the data
Category: Performance
Of all the boneheaded ... sigh. I have all this code all over the place to track things like when data has "changed" and not to bother pushing it into Kodi over and over again. Guess where ol' djp952 wasn't checking his own "changed" flags? Yeah, #1 data offender - EPG. Basically the bug was that any time I "checked for updates" on the EPG data it would all be pushed into Kodi whether it changed or not. The only place it really hurt for no reason was at startup. Fixed.
Fix bug that caused "Timer Deleted" toast messages for timers associated with an existing recording
Category: Annoyance
This kinda dates back to v1.0.0 (yikes!), but back then there was no way to deal with it. In v3.2.0 (2020.02.07), I had the necessary support but I always turn this off in Kodi so, yeah, never really noticed. What's going on here was an order of operations thing. I was loading the recording rules (Timer Rules) and episodes (Timers) from the backend before I was loading the recordings. On a new installation (or a new PVR database version) that didn't have recordings cached, what was happening is that the HDHomeRun "RecordIfNotRecorded" rule, if present, was always "nope, not recorded" even if it was, so you'd (quickly) get a Timer for each episode. When the timers are re-sent the "RecordIfNotRecorded" rule now comes back as "yup, got that one" and the Timer is deleted. Queue many annoying toast banners.
I'd like to kick the tires on this one a bit and have a few things I'd like to (re)confirm as still correct, but if you want to help me kick the tires, please do so! I think you'll find that starting up Kodi takes noticeably less time now. [On a Vero 4K/OSMC/Leia - v3.4.0 PVR Manager startup = 5.5 seconds. v3.4.1 PVR Manager startup = 2.3 seconds. Makes a difference!]
Link to install packages for both Kodi Leia and Kodi Matrix (RC1) (OneDrive):
https://1drv.ms/u/s!AgEGEEVzGNq-jJgAYV1 ... w?e=Ds0fJf
NOTE: Beta releases are installed as if they were a 'new' installation - download and browse to the .zip file from Kodi. You can rollback to the last formal release (v3.4.0) using the Kodi addon "Update" (Leia) or "Versions" (Matrix) feature if problems arise. Otherwise, if you are happy with the beta release, it will auto-update to the formal version when it's been released.