aboutsummaryrefslogtreecommitdiffstats
path: root/version_detect/hg_keywords.py
diff options
context:
space:
mode:
authorUnknown <tolsen@limebits.com>2008-06-26 17:39:31 -0400
committerMatěj Cepl <mcepl@cepl.eu>2023-04-29 18:18:26 +0200
commit81ba8e0b47f2b03e09151e8186d8a9470b4bd5c8 (patch)
tree95d72863c26b012fff1649d94fe905aa1a1603ab /version_detect/hg_keywords.py
parentb6173d98d46241e44a2756f63073cbd3d4d6544e (diff)
downloadurllib2_kerberos-81ba8e0b47f2b03e09151e8186d8a9470b4bd5c8.tar.gz
put version detection files into new version_detect package
Diffstat (limited to 'version_detect/hg_keywords.py')
-rw-r--r--version_detect/hg_keywords.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/version_detect/hg_keywords.py b/version_detect/hg_keywords.py
new file mode 100644
index 0000000..edc9bae
--- /dev/null
+++ b/version_detect/hg_keywords.py
@@ -0,0 +1,21 @@
+import re
+
+keyword_rx = re.compile('^\$(\w+)\:\s+(\S*)\s*\$$')
+
+# returns tuple (key, value)
+# returns None if kwstring is not a keyword expansion
+def extract_keyvalue(kwstring):
+ mo = keyword_rx.match(kwstring)
+ if mo is None: return None
+
+ try:
+ return mo.group(1,2)
+ except IndexError:
+ return None
+
+
+
+def keywords(*kwstrings):
+ keyvalues = [extract_keyvalue(kws) for kws in kwstrings]
+ compacted_keyvalues = [kv for kv in keyvalues if kv is not None]
+ return dict(compacted_keyvalues)