[Reproducible-commits] [misc] 01/01: filter-packages can show only ftbfs packages (...)
Chris West
faux-guest at moszumanska.debian.org
Sat Oct 24 10:38:54 UTC 2015
This is an automated email from the git hooks/post-receive script.
faux-guest pushed a commit to branch master
in repository misc.
commit 452e425336ed295c390681a5c27046013f60559b
Author: Chris West (Faux) <git at goeswhere.com>
Date: Sat Oct 24 11:38:11 2015 +0100
filter-packages can show only ftbfs packages (...)
This, unfortunately, needed a port to python3, which was much more
involved than I was expecting, and I was too lazy to split it into two
different commits. clean-notes could not be imported without errors.
---
filter-packages | 23 ++++++++++++++++++-----
1 file changed, 18 insertions(+), 5 deletions(-)
diff --git a/filter-packages b/filter-packages
index 7473690..9c6fe99 100755
--- a/filter-packages
+++ b/filter-packages
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# filter-packages: easily find and filter packages.yml
@@ -12,7 +12,10 @@ import optparse
from os.path import join, dirname, abspath
+
def main():
+ status = None
+
parser = optparse.OptionParser(usage='%prog [options] [packages.yml]')
parser.add_option('--issues', dest='issues', default=None,
help="only print packages with comma-separated issues ISSUES")
@@ -28,6 +31,8 @@ def main():
help="print package version")
parser.add_option('--issues-exact', dest='issues_exact', action='store_true',
help="match set of issues exactly")
+ parser.add_option('--show-ftbfs', dest='show_ftbfs', action='store_true',
+ help="only show ftbfs packages")
options, args = parser.parse_args()
@@ -43,13 +48,13 @@ def main():
with open(filename) as f:
packages = yaml.safe_load(f)
- for x, y in sorted(packages.iteritems()):
+ for x, y in sorted(packages.items()):
issues = set(y.get('issues', ()))
if options.issues_exact and options.issues != issues:
continue
- if not options.issues <= issues:
+ if options.issues is not None and not options.issues <= issues:
continue
if options.bugs is not None and options.bugs ^ ('bugs' in y):
@@ -59,10 +64,18 @@ def main():
continue
if options.show_version:
- print "%s %s" % (x, y.get('version', ''))
+ print("%s %s" % (x, y.get('version', '')))
continue
- print x
+ if options.show_ftbfs:
+ if not status:
+ clean_notes = __import__('clean-notes')
+ status = clean_notes.load_reproducible_status()
+
+ if status.get(x, {}).get('status', None) != 'FTBFS':
+ continue
+
+ print(x)
return 0
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/misc.git
More information about the Reproducible-commits
mailing list