summaryrefslogtreecommitdiff
path: root/pbr/version.py
diff options
context:
space:
mode:
Diffstat (limited to 'pbr/version.py')
-rw-r--r--pbr/version.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/pbr/version.py b/pbr/version.py
index d3fe401..619c432 100644
--- a/pbr/version.py
+++ b/pbr/version.py
@@ -142,6 +142,14 @@ class SemanticVersion(object):
ever released - we're treating that as a critical bug that we ever
made them and have stopped doing that.
"""
+
+ try:
+ return klass._from_pip_string_unsafe(version_string)
+ except IndexError:
+ raise ValueError("Invalid version %r" % version_string)
+
+ @classmethod
+ def _from_pip_string_unsafe(klass, version_string):
# Versions need to start numerically, ignore if not
if not version_string[:1].isdigit():
raise ValueError("Invalid version %r" % version_string)