Fix version compare as strings

Signed-off-by: Loren Eteval <loren.eteval@proton.me>
This commit is contained in:
Loren Eteval
2024-05-10 19:36:16 +08:00
parent 1fc7efa5b7
commit 3b949c5e3f
2 changed files with 4 additions and 19 deletions
+1 -17
View File
@@ -40,22 +40,6 @@ logger = logging.getLogger(__name__)
needTrans = functools.partial(needTransFn, source=__name__)
def versionToNumber(version):
major_weight = 10000
minor_weight = 100
patch_weight = 1
return functools.reduce(
operator.add,
list(
int(ver) * weight
for ver, weight in zip(
version.split('.'), [major_weight, minor_weight, patch_weight]
)
),
)
needTrans('New version available')
@@ -116,7 +100,7 @@ class UpdatesManager(AppQNetworkAccessManager):
# Unchecked?
info = UJSONEncoder.decode(networkReply.readAll().data())
if versionToNumber(info['tag_name']) > versionToNumber(APPLICATION_VERSION):
if versionToValue(info['tag_name']) > versionToValue(APPLICATION_VERSION):
def handleResultCode(code):
if code == PySide6LegacyEnumValueWrapper(
+3 -2
View File
@@ -16,6 +16,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
from Furious.Utility.Constants import *
from Furious.Utility.Utility import *
import time
@@ -24,7 +25,7 @@ __all__ = ['PySide6LegacyEnumValueWrapper', 'PySide6LegacyEventLoopWait']
def PySide6LegacyEnumValueWrapper(enum):
# Protect PySide6 enum wrapper behavior changes
if PYSIDE6_VERSION < '6.2.2':
if versionToValue(PYSIDE6_VERSION) < versionToValue('6.2.2'):
return enum
else:
return enum.value
@@ -33,7 +34,7 @@ def PySide6LegacyEnumValueWrapper(enum):
def PySide6LegacyEventLoopWait(ms):
# Protect qWait method does not exist in some
# old PySide6 version
if PYSIDE6_VERSION < '6.3.1':
if versionToValue(PYSIDE6_VERSION) < versionToValue('6.3.1'):
for counter in range(0, ms, 10):
time.sleep(10 / 1000)