Make _old_client() support alphas/betas
This commit is contained in:
parent
2dc1f28b04
commit
85c9b85c1f
@ -57,12 +57,23 @@ class SyncCollectionHandler(Syncer):
|
|||||||
if not cv:
|
if not cv:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
note = {"alpha": 0, "beta": 0}
|
||||||
client, version, platform = cv.split(',')
|
client, version, platform = cv.split(',')
|
||||||
version_int = [ int(str(x).translate(None, string.ascii_letters))
|
|
||||||
for x in version.split('.') ]
|
|
||||||
|
|
||||||
return (client == 'ankidroid' and version_int < [2, 3, 0]) \
|
for name in note.keys():
|
||||||
or (client == 'ankidesktop' and version_int < [2, 0, 27])
|
if name in version:
|
||||||
|
vs = version.split(name)
|
||||||
|
version = vs[0]
|
||||||
|
note[name] = int(vs[-1])
|
||||||
|
|
||||||
|
version_int = [int(x) for x in version.split('.')]
|
||||||
|
|
||||||
|
if client == 'ankidesktop':
|
||||||
|
return version_int < [2, 0, 27]
|
||||||
|
elif client == 'ankidroid':
|
||||||
|
return version_int < [2, 2, 3] or (version_int == [2, 3] and note["alpha"] < 4)
|
||||||
|
else: # unknown client, assume current version
|
||||||
|
return False
|
||||||
|
|
||||||
def meta(self):
|
def meta(self):
|
||||||
# Make sure the media database is open!
|
# Make sure the media database is open!
|
||||||
|
|||||||
@ -27,8 +27,8 @@ class SyncCollectionHandlerTest(CollectionTestBase):
|
|||||||
','.join(('ankidesktop', '2.0.26', 'lin::')),
|
','.join(('ankidesktop', '2.0.26', 'lin::')),
|
||||||
','.join(('ankidroid', '2.1', '')),
|
','.join(('ankidroid', '2.1', '')),
|
||||||
','.join(('ankidroid', '2.2', '')),
|
','.join(('ankidroid', '2.2', '')),
|
||||||
#','.join(('ankidroid', '2.2.2', '')),
|
','.join(('ankidroid', '2.2.2', '')),
|
||||||
#','.join(('ankidroid', '2.3alpha3', '')),
|
','.join(('ankidroid', '2.3alpha3', '')),
|
||||||
)
|
)
|
||||||
|
|
||||||
current = (
|
current = (
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user