Add click handling of cli options
Signed-off-by: Fabio Utzig <utzig@apache.org>
diff --git a/scripts/imgtool/version.py b/scripts/imgtool/version.py
index 64962e9..8910e0b 100644
--- a/scripts/imgtool/version.py
+++ b/scripts/imgtool/version.py
@@ -15,20 +15,24 @@
"""
Semi Semantic Versioning
-Implements a subset of semantic versioning that is supportable by the image header.
+Implements a subset of semantic versioning that is supportable by the image
+header.
"""
-import argparse
from collections import namedtuple
import re
-SemiSemVersion = namedtuple('SemiSemVersion', ['major', 'minor', 'revision', 'build'])
+SemiSemVersion = namedtuple('SemiSemVersion', ['major', 'minor', 'revision',
+ 'build'])
-version_re = re.compile(r"""^([1-9]\d*|0)(\.([1-9]\d*|0)(\.([1-9]\d*|0)(\+([1-9]\d*|0))?)?)?$""")
+version_re = re.compile(
+ r"""^([1-9]\d*|0)(\.([1-9]\d*|0)(\.([1-9]\d*|0)(\+([1-9]\d*|0))?)?)?$""")
+
+
def decode_version(text):
- """Decode the version string, which should be of the form maj.min.rev+build"""
+ """Decode the version string, which should be of the form maj.min.rev+build
+ """
m = version_re.match(text)
- # print("decode:", text, m.groups())
if m:
result = SemiSemVersion(
int(m.group(1)) if m.group(1) else 0,
@@ -37,8 +41,10 @@
int(m.group(7)) if m.group(7) else 0)
return result
else:
- msg = "Invalid version number, should be maj.min.rev+build with later parts optional"
- raise argparse.ArgumentTypeError(msg)
+ msg = "Invalid version number, should be maj.min.rev+build with later "
+ msg += "parts optional"
+ raise ValueError(msg)
+
if __name__ == '__main__':
print(decode_version("1.2"))