From 3401792132fbab4eb33bd3581bb79ff5e8334453 Mon Sep 17 00:00:00 2001 From: roblabla Date: Sun, 31 Dec 2023 15:15:28 +0100 Subject: [PATCH] Actually do the diff in generate_function_diff --- scripts/generate_function_diff.py | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/scripts/generate_function_diff.py b/scripts/generate_function_diff.py index 556bc4f5..2eee1cd2 100755 --- a/scripts/generate_function_diff.py +++ b/scripts/generate_function_diff.py @@ -1,5 +1,6 @@ #!/usr/bin/env python +import difflib from pathlib import Path import sys import os @@ -57,7 +58,27 @@ def generate_function_diff(fn_name): def main(): fn_name = sys.argv[1] - generate_function_diff(fn_name) + orig, reimpl = generate_function_diff(fn_name) + + base_dir = Path(__file__).parent.parent + diff_dir = base_dir / "diff" + fs_fn_name = fn_name.replace(":", "__") + + diff = "\n".join( + difflib.unified_diff( + orig.split("\n"), + reimpl.split("\n"), + "Original", + "Reimplementation", + n=20, + lineterm="", + ) + ) + + print(diff) + + with open(diff_dir / fs_fn_name / "diff.diff", "w") as f: + f.write(diff) if __name__ == "__main__":