diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-09-07 22:39:21 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-09-07 22:39:21 +0000 |
commit | 3ef16d1582246d5da74cdae89aa5d46a8b7005c2 (patch) | |
tree | fb0490eab683113fa4280d5c8fc6ab5353526553 /pym/portage/versions.py | |
parent | 86a420552e2c940b789b187699896b2203f73153 (diff) | |
download | portage-3ef16d1582246d5da74cdae89aa5d46a8b7005c2.tar.gz portage-3ef16d1582246d5da74cdae89aa5d46a8b7005c2.tar.bz2 portage-3ef16d1582246d5da74cdae89aa5d46a8b7005c2.zip |
Reimplement isvalidatom() to use a single regular expression match. Thanks
to Marat Radchenko <marat@slonopotamus.org> for this patch from bug #276813.
svn path=/main/trunk/; revision=14213
Diffstat (limited to 'pym/portage/versions.py')
-rw-r--r-- | pym/portage/versions.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/pym/portage/versions.py b/pym/portage/versions.py index f434ff768..bbea9b7c9 100644 --- a/pym/portage/versions.py +++ b/pym/portage/versions.py @@ -5,7 +5,9 @@ import re -ver_regexp = re.compile("^(cvs\\.)?(\\d+)((\\.\\d+)*)([a-z]?)((_(pre|p|beta|alpha|rc)\\d*)*)(-r(\\d+))?$") +_version = r'(cvs\.)?(\d+)((\.\d+)*)([a-z]?)((_(pre|p|beta|alpha|rc)\d*)*)(-r(\d+))?' + +ver_regexp = re.compile("^" + _version + "$") 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"] |