forked from LBRYCommunity/lbry-sdk
Move to core.utils and expand to check lbryum too
This commit is contained in:
parent
1eae3fe5dc
commit
3814912adf
3 changed files with 25 additions and 15 deletions
|
@ -1,6 +1,9 @@
|
|||
from lbrynet.core.cryptoutils import get_lbry_hash_obj
|
||||
import distutils.version
|
||||
import random
|
||||
|
||||
from lbrynet.core.cryptoutils import get_lbry_hash_obj
|
||||
|
||||
|
||||
|
||||
blobhash_length = get_lbry_hash_obj().digest_size * 2 # digest_size is in bytes, and blob hashes are hex encoded
|
||||
|
||||
|
@ -25,4 +28,12 @@ def is_valid_blobhash(blobhash):
|
|||
for l in blobhash:
|
||||
if l not in "0123456789abcdef":
|
||||
return False
|
||||
return True
|
||||
return True
|
||||
|
||||
|
||||
def version_is_greater_than(a, b):
|
||||
"""Returns True if version a is more recent than version b"""
|
||||
try:
|
||||
return distutils.version.StrictVersion(a) > distutils.version.StrictVersion(b)
|
||||
except ValueError:
|
||||
return distutils.version.LooseVersion(a) > distutils.version.LooseVersion(b)
|
||||
|
|
|
@ -39,6 +39,7 @@ from lbrynet.lbryfile.client.LBRYFileOptions import add_lbry_file_to_sd_identifi
|
|||
from lbrynet.lbrynet_daemon.LBRYUIManager import LBRYUIManager
|
||||
from lbrynet.lbrynet_daemon.LBRYDownloader import GetStream
|
||||
from lbrynet.lbrynet_daemon.LBRYPublisher import Publisher
|
||||
from lbrynet.core import utils
|
||||
from lbrynet.core.utils import generate_id
|
||||
from lbrynet.lbrynet_console.LBRYSettings import LBRYSettings
|
||||
from lbrynet.conf import MIN_BLOB_DATA_PAYMENT_RATE, DEFAULT_MAX_SEARCH_RESULTS, KNOWN_DHT_NODES, DEFAULT_MAX_KEY_FEE, \
|
||||
|
@ -573,8 +574,11 @@ class LBRYDaemon(jsonrpc.JSONRPC):
|
|||
version = next(line.split("=")[1].split("#")[0].replace(" ", "")
|
||||
for line in r if "LBRYUM_VERSION" in line)
|
||||
version = version.replace("'", "")
|
||||
log.info("remote lbryum " + str(version) + " > local lbryum " + str(lbryum_version) + " = " + str(
|
||||
version > lbryum_version))
|
||||
log.info(
|
||||
"remote lbryum %s > local lbryum %s = %s",
|
||||
version, lbryum_version,
|
||||
utils.version_is_greater_than(version, lbryum_version)
|
||||
)
|
||||
self.git_lbryum_version = version
|
||||
return defer.succeed(None)
|
||||
except:
|
||||
|
@ -587,7 +591,8 @@ class LBRYDaemon(jsonrpc.JSONRPC):
|
|||
version = get_lbrynet_version_from_github()
|
||||
log.info(
|
||||
"remote lbrynet %s > local lbrynet %s = %s",
|
||||
version, lbrynet_version, compare_versions(version, lbrynet_version)
|
||||
version, lbrynet_version,
|
||||
utils.version_is_greater_than(version, lbrynet_version)
|
||||
)
|
||||
self.git_lbrynet_version = version
|
||||
return defer.succeed(None)
|
||||
|
@ -1491,8 +1496,10 @@ class LBRYDaemon(jsonrpc.JSONRPC):
|
|||
'ui_version': self.ui_version,
|
||||
'remote_lbrynet': self.git_lbrynet_version,
|
||||
'remote_lbryum': self.git_lbryum_version,
|
||||
'lbrynet_update_available': lbrynet_version < self.git_lbrynet_version,
|
||||
'lbryum_update_available': lbryum_version < self.git_lbryum_version
|
||||
'lbrynet_update_available': utils.version_is_greater_than(
|
||||
self.git_lbrynet_version, lbrynet_version),
|
||||
'lbryum_update_available': utils.version_is_greater_than(
|
||||
self.git_lbryum_version, lbryum_version)
|
||||
}
|
||||
|
||||
log.info("Get version info: " + json.dumps(msg))
|
||||
|
@ -2311,8 +2318,3 @@ def get_version_from_tag(tag):
|
|||
return match.group(1)
|
||||
else:
|
||||
raise Exception('Failed to parse version from tag {}'.format(tag))
|
||||
|
||||
|
||||
def compare_versions(a, b):
|
||||
"""Returns True if version a is more recent than version b"""
|
||||
return distutils.version.StrictVersion(a) > distutils.version.StrictVersion(b)
|
||||
|
|
|
@ -36,6 +36,3 @@ class MiscTests(unittest.TestCase):
|
|||
def test_error_is_thrown_when_version_cant_be_parsed(self):
|
||||
with self.assertRaises(Exception):
|
||||
LBRYDaemon.get_version_from_tag('garbage')
|
||||
|
||||
def test_compare_versions_isnot_lexographic(self):
|
||||
self.assertTrue(LBRYDaemon.compare_versions('0.3.10', '0.3.6'))
|
||||
|
|
Loading…
Add table
Reference in a new issue