add special treatment of develop version

This commit is contained in:
Denis Davydov 2016-07-07 19:18:10 +02:00
parent b0f4052bd8
commit b29d5e6032
3 changed files with 16 additions and 1 deletions

View File

@ -166,6 +166,10 @@ def prefer_key(v):
valid_versions.sort(key=prefer_key, reverse=True)
if valid_versions:
# Disregard @develop and take the next valid version
if ver(valid_versions[0]) == ver('develop') and len(valid_versions) > 1:
spec.versions = ver([valid_versions[1]])
else:
spec.versions = ver([valid_versions[0]])
else:
# We don't know of any SAFE versions that match the given

View File

@ -92,6 +92,9 @@ def test_two_segments(self):
self.assert_ver_eq('1.0', '1.0')
self.assert_ver_lt('1.0', '2.0')
self.assert_ver_gt('2.0', '1.0')
self.assert_ver_eq('develop', 'develop')
self.assert_ver_lt('1.0', 'develop')
self.assert_ver_gt('develop', '1.0')
def test_three_segments(self):
self.assert_ver_eq('2.0.1', '2.0.1')

View File

@ -236,6 +236,14 @@ def __lt__(self, other):
if self.version == other.version:
return False
# dev is __gt__ than anything but itself.
if other.string == 'develop':
return True
# If lhs is dev then it can't be < than anything
if self.string == 'develop':
return False
for a, b in zip(self.version, other.version):
if a == b:
continue