From a52e762c2526e0f9d40f8d0c05f9ca2744de8ebe Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Sun, 17 Jul 2022 22:30:37 -0600 Subject: [PATCH] updates.py: allow for unrestricted versioning Previously limited to x.x.x checks --- resources/updates.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/resources/updates.py b/resources/updates.py index e25b057a7..ee2891d8b 100644 --- a/resources/updates.py +++ b/resources/updates.py @@ -28,18 +28,16 @@ class check_binary_updates: return False def check_if_build_newer(self): - if self.remote_version_array[0] > self.binary_version_array[0]: - return True - elif self.remote_version_array[0] == self.binary_version_array[0]: - if self.remote_version_array[1] > self.binary_version_array[1]: + # Pad version numbers to match length (ie. 0.1.0 vs 0.1.0.1) + while len(self.remote_version_array) > len(self.binary_version_array): + self.binary_version_array.append(0) + while len(self.remote_version_array) < len(self.binary_version_array): + self.remote_version_array.append(0) + + for i in range(0, len(self.remote_version_array)): + if self.remote_version_array[i] > self.binary_version_array[i]: return True - elif self.remote_version_array[1] == self.binary_version_array[1]: - if self.remote_version_array[2] > self.binary_version_array[2]: - return True - else: - return False - else: - return False + return False def determine_local_build_type(self):