Make the inter-revision regex tighter, and teach repoman the same trick.
authorFabian Groffen <grobian@gentoo.org>
Sun, 24 Dec 2006 11:56:50 +0000 (11:56 -0000)
committerFabian Groffen <grobian@gentoo.org>
Sun, 24 Dec 2006 11:56:50 +0000 (11:56 -0000)
(So in total this code seems to be at three places implemented.)

svn path=/main/branches/prefix/; revision=5377

bin/repoman
pym/portage_versions.py

index 9181be345685dcc8ce83c0ab5f42db4872e25ead..00d1254bcf11d0495470f039b1882e68e40000fd 100755 (executable)
@@ -227,7 +227,8 @@ ven_cat = r'[\w0-9-]+'                                 # Category
 ven_nam = r'([+a-z0-9-]+(?:[+_a-z0-9-]*[+a-z0-9-]+)*)' # Name
 ven_ver = r'((?:\d+\.)*\d+[a-z]?)'                     # Version
 ven_suf = r'(_(alpha\d*|beta\d*|pre\d*|rc\d*|p\d+))?'  # Suffix
-ven_rev = r'(-r\d+)?'                                  # Revision
+# PREFIX hack: (-r\d+)? -> (-r(\d+|0\d+\.\d+a))
+ven_rev = r'(-r(\d+|0\d+\.\d+))?'                      # Revision
        
 ven_string=ven_cat+'/'+ven_nam+'-'+ven_ver+ven_suf+ven_rev
 valid_ebuild_name_re=re.compile(ven_string+'$', re.I)
index 2f1bb9c3ed4ea9e441372aff8778943d872512f2..ba46dd6ec98a88b4d3429044d7f9b72ab30646d9 100644 (file)
@@ -5,8 +5,8 @@
 
 import re,string
 
-# PREFIX hack: -r(\\d+) -> -r(\\d+(\\.\\d+)?) (see below)
-ver_regexp = re.compile("^(cvs\\.)?(\\d+)((\\.\\d+)*)([a-z]?)((_(pre|p|beta|alpha|rc)\\d*)*)(-r(\\d+(\\.\\d+)?))?$")
+# PREFIX hack: -r(\\d+) -> -r(\\d+|0\\d+\\.\\d+) (see below)
+ver_regexp = re.compile("^(cvs\\.)?(\\d+)((\\.\\d+)*)([a-z]?)((_(pre|p|beta|alpha|rc)\\d*)*)(-r(\\d+|0\\.\\d+))?$")
 suffix_regexp = re.compile("^(alpha|beta|rc|pre|p)(\\d*)$")
 suffix_value = {"pre": -2, "p": 0, "alpha": -4, "beta": -3, "rc": -1}
 endversion_keys = ["pre", "p", "alpha", "beta", "rc"]