about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gn3/csvcmp.py37
1 files changed, 19 insertions, 18 deletions
diff --git a/gn3/csvcmp.py b/gn3/csvcmp.py
index dd3f72b..975814a 100644
--- a/gn3/csvcmp.py
+++ b/gn3/csvcmp.py
@@ -26,24 +26,25 @@ def create_dirs_if_not_exists(dirs: list) -> None:
 def remove_insignificant_edits(diff_data, epsilon=0.001):
     """Remove or ignore edits that are not within ε"""
     __mod = []
-    for mod in diff_data.get("Modifications"):
-        original = mod.get("Original").split(",")
-        current = mod.get("Current").split(",")
-        for i, (_x, _y) in enumerate(zip(original, current)):
-            if (
-                _x.replace(".", "").isdigit()
-                and _y.replace(".", "").isdigit()
-                and abs(float(_x) - float(_y)) < epsilon
-            ):
-                current[i] = _x
-        if not (__o := ",".join(original)) == (__c := ",".join(current)):
-            __mod.append(
-                {
-                    "Original": __o,
-                    "Current": __c,
-                }
-            )
-    diff_data["Modifications"] = __mod
+    if diff_data.get("Modifications"):
+        for mod in diff_data.get("Modifications"):
+            original = mod.get("Original").split(",")
+            current = mod.get("Current").split(",")
+            for i, (_x, _y) in enumerate(zip(original, current)):
+                if (
+                    _x.replace(".", "").isdigit()
+                    and _y.replace(".", "").isdigit()
+                    and abs(float(_x) - float(_y)) < epsilon
+                ):
+                    current[i] = _x
+            if not (__o := ",".join(original)) == (__c := ",".join(current)):
+                __mod.append(
+                    {
+                        "Original": __o,
+                        "Current": __c,
+                    }
+                )
+        diff_data["Modifications"] = __mod
     return diff_data