From 1b0df8f23c690d9464d82f4d3e57fe2a334b5d98 Mon Sep 17 00:00:00 2001 From: Rahul Bedarkar Date: Thu, 22 Sep 2016 00:29:14 +0530 Subject: [PATCH] scripts/get-developers: correct type of patches argument Current type for 'patches' argument is str. It supposed to only contain names of files. If we specify FileType as type, then we don't need to open file ourself and it allows script to read patch from standard input as well. e.g. $ git show -1 | ./support/scripts/get-developers - Cc: Thomas Petazzoni Signed-off-by: Rahul Bedarkar Signed-off-by: Thomas Petazzoni --- support/scripts/get-developers | 4 ++-- support/scripts/getdeveloperlib.py | 25 ++++++++++++------------- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/support/scripts/get-developers b/support/scripts/get-developers index 8b1891d999..83f1e5b9b2 100755 --- a/support/scripts/get-developers +++ b/support/scripts/get-developers @@ -5,8 +5,8 @@ import getdeveloperlib def parse_args(): parser = argparse.ArgumentParser() - parser.add_argument('patches', metavar='P', type=str, nargs='*', - help='list of patches') + parser.add_argument('patches', metavar='P', type=argparse.FileType('r'), nargs='*', + help='list of patches (use - to read patches from stdin)') parser.add_argument('-a', dest='architecture', action='store', help='find developers in charge of this architecture') parser.add_argument('-p', dest='package', action='store', diff --git a/support/scripts/getdeveloperlib.py b/support/scripts/getdeveloperlib.py index 7b390417fc..65191073a3 100644 --- a/support/scripts/getdeveloperlib.py +++ b/support/scripts/getdeveloperlib.py @@ -16,19 +16,18 @@ def analyze_patch(patch): removed by the patch.""" files = set() infras = set() - with open(patch, "r") as f: - for line in f: - # If the patch is adding a package, find which infra it is - m = FIND_INFRA_IN_PATCH.match(line) - if m: - infras.add(m.group(2)) - if not line.startswith("+++ "): - continue - line.strip() - fname = line[line.find("/") + 1 : ].strip() - if fname == "dev/null": - continue - files.add(fname) + for line in patch: + # If the patch is adding a package, find which infra it is + m = FIND_INFRA_IN_PATCH.match(line) + if m: + infras.add(m.group(2)) + if not line.startswith("+++ "): + continue + line.strip() + fname = line[line.find("/") + 1 : ].strip() + if fname == "dev/null": + continue + files.add(fname) return (files, infras) FIND_INFRA_IN_MK = re.compile("^\$\(eval \$\((host-)?([^-]*)-package\)\)$") -- 2.30.2