From 627b8586bf44fdccf2061f5031f8e0063d20c3a8 Mon Sep 17 00:00:00 2001 From: Guido Günther Date: Wed, 7 Dec 2016 14:58:55 +0100 Subject: import_srpm: Drop epoch too Upstream tags are without epoch so we need to filter that out too. Thanks: Tzafrir Cohen --- gbp/rpm/__init__.py | 6 ++++-- gbp/scripts/import_srpm.py | 2 +- tests/component/rpm/test_import_srpm.py | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/gbp/rpm/__init__.py b/gbp/rpm/__init__.py index 1b80ba0a..332bc83d 100644 --- a/gbp/rpm/__init__.py +++ b/gbp/rpm/__init__.py @@ -966,7 +966,7 @@ def compose_version_str(evr): return None -def filter_version(evr, key): +def filter_version(evr, *keys): """ Remove entry from the version dict @@ -979,8 +979,10 @@ def filter_version(evr, key): >>> filter_version({'epoch': 'foo', 'upstreamversion': 'bar', 'vendor': 'baz'}, 'vendor').keys() ['epoch', 'upstreamversion'] + >>> filter_version({'epoch': 'foo', 'upstreamversion': 'bar', 'revision': 'baz'}, 'epoch', 'revision').keys() + ['upstreamversion'] """ - return {k: evr[k] for k in evr if k != key} + return {k: evr[k] for k in evr if k not in keys} # vim:et:ts=4:sw=4:et:sts=4:ai:set list listchars=tab\:»·,trail\:·: diff --git a/gbp/scripts/import_srpm.py b/gbp/scripts/import_srpm.py index 231877b5..f98a6598 100755 --- a/gbp/scripts/import_srpm.py +++ b/gbp/scripts/import_srpm.py @@ -326,7 +326,7 @@ def main(argv): else: src_tag_format = options.upstream_tag src_tag = repo.version_to_tag(src_tag_format, tag_str_fields) - upstream_str_fields = filter_version(tag_str_fields, 'release') + upstream_str_fields = filter_version(tag_str_fields, 'release', 'epoch') upstream_tag = repo.version_to_tag(src_tag_format, upstream_str_fields) ver_str = compose_version_str(spec.version) diff --git a/tests/component/rpm/test_import_srpm.py b/tests/component/rpm/test_import_srpm.py index b3dfa0aa..5d3df0d3 100644 --- a/tests/component/rpm/test_import_srpm.py +++ b/tests/component/rpm/test_import_srpm.py @@ -75,7 +75,7 @@ class TestImportPacked(ComponentTestBase): 'my2.patch', 'my3.patch'} self._check_repo_state(repo, 'master', ['master', 'upstream'], files=files, - tags=['packaging/1%2.0-0', 'upstream/1%2.0']) + tags=['packaging/1%2.0-0', 'upstream/2.0']) # Two commits: upstream and packaging files eq_(len(repo.get_commits()), 2) -- cgit v1.2.3