summaryrefslogtreecommitdiffstats
path: root/cnucnu/package_list.py
diff options
context:
space:
mode:
authorTill Maas <opensource@till.name>2012-07-03 22:37:54 +0200
committerTill Maas <opensource@till.name>2012-07-03 22:37:54 +0200
commit4c2602db6290c95a7dcb2bd3b1e889ced7a1cda7 (patch)
treea774d226bf0406fa744bd9e4649193c62f34ffb6 /cnucnu/package_list.py
parent5e8649f36fefca201b014cd6323b897afb8da0ef (diff)
downloadcnucnu-4c2602db6290c95a7dcb2bd3b1e889ced7a1cda7.tar.gz
cnucnu-4c2602db6290c95a7dcb2bd3b1e889ced7a1cda7.tar.xz
cnucnu-4c2602db6290c95a7dcb2bd3b1e889ced7a1cda7.zip
package_list: except invalid regular expression exception
Diffstat (limited to 'cnucnu/package_list.py')
-rwxr-xr-xcnucnu/package_list.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/cnucnu/package_list.py b/cnucnu/package_list.py
index 8927c45..eddd022 100755
--- a/cnucnu/package_list.py
+++ b/cnucnu/package_list.py
@@ -23,7 +23,8 @@
__docformat__ = "restructuredtext"
# python default modules
-import re
+# sre_constants contains re exceptions
+import re, sre_constants
import urllib
# cnucnu modules
@@ -264,7 +265,10 @@ class Package(object):
def upstream_versions(self):
if not self._upstream_versions:
- upstream_versions = re.findall(self.regex, self.html)
+ try:
+ upstream_versions = re.findall(self.regex, self.html)
+ except sre_constants.error, e:
+ raise cc_errors.UpstreamVersionRetrievalError("%s: invalid regular expression" % self.name)
for version in upstream_versions:
if " " in version:
raise cc_errors.UpstreamVersionRetrievalError("%s: invalid upstream version:>%s< - %s - %s " % (self.name, version, self.url, self.regex))