From 0f726ca6ea1344f9c7b00bd3b9f1de5f0df83356 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Arkadiusz=20Mi=C5=9Bkiewicz?= Date: Wed, 24 Feb 2021 13:13:34 +0100 Subject: [PATCH] Generate diffstat for each patch, so it's easier to compare if rediff is not broken. --- rediff-patches.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/rediff-patches.py b/rediff-patches.py index ca7a0a8..caac7d1 100755 --- a/rediff-patches.py +++ b/rediff-patches.py @@ -58,6 +58,17 @@ def diff(diffdir_org, diffdir, builddir, output): raise logging.info("rediff generated as %s" % output) +def diffstat(patch): + cmd = [ 'diffstat', patch ] + logging.info("running diffstat for: %s" % patch) + try: + subprocess.check_call(cmd, stdout=sys.stdout, stderr=sys.stderr, + env={'LC_ALL': 'C.UTF-8'}, timeout=60) + except subprocess.CalledProcessError as err: + logging.error("running diffstat failed: %s" % err) + except FileNotFoundError as err: + logging.error("running diffstat failed: %s, install diffstat package?" % err) + def main(): parser = parser = argparse.ArgumentParser(description='rediff patches to avoid fuzzy hunks') parser.add_argument('spec', type=str, help='spec file name') @@ -121,6 +132,9 @@ def main(): diff(appbuilddir + ".org", appbuilddir, builddir, os.path.join(topdir, os.path.join(appsourcedir, patch_name + ".rediff"))) + diffstat(os.path.join(topdir, os.path.join(appsourcedir, patch_name))) + diffstat(os.path.join(topdir, os.path.join(appsourcedir, patch_name + ".rediff"))) + shutil.rmtree(builddir) tempdir.cleanup() -- 2.44.0