aboutsummaryrefslogtreecommitdiffhomepage
path: root/gbp/rpm/__init__.py
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2016-12-05 08:56:48 +0100
committerGuido Günther <agx@sigxcpu.org>2016-12-05 19:03:26 +0100
commita205a137033685d07fd43ae15fc9184ae2340bce (patch)
tree9606940fbbeb9dd4265e68910e04dd322292cb7e /gbp/rpm/__init__.py
parenta10c77b515de0b92740a38f7d4fbe58b1b4cc9f6 (diff)
rpm: allow to filter out elements from the version dict
Diffstat (limited to 'gbp/rpm/__init__.py')
-rw-r--r--gbp/rpm/__init__.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/gbp/rpm/__init__.py b/gbp/rpm/__init__.py
index 5a9a6688..b0b8a2ef 100644
--- a/gbp/rpm/__init__.py
+++ b/gbp/rpm/__init__.py
@@ -927,6 +927,7 @@ def split_version_str(version):
return ret
+
def compose_version_str(evr):
"""
Compose a full version string from individual "version components",
@@ -959,4 +960,21 @@ def compose_version_str(evr):
return None
+def filter_version(evr, key):
+ """
+ Remove entry from the version dict
+
+ @param evr: dict of version components
+ @type evr: C{dict} of C{str}
+ @param key: key to remove
+ @type evr: C{str}
+ @return: new verion dict
+ @rtype: C{dict} of C{str}
+
+ >>> filter_version({'epoch': 'foo', 'upstreamversion': 'bar', 'vendor': 'baz'}, 'vendor').keys()
+ ['epoch', 'upstreamversion']
+ """
+ return {k: evr[k] for k in evr if k != key}
+
+
# vim:et:ts=4:sw=4:et:sts=4:ai:set list listchars=tab\:»·,trail\:·: