From d5c4c5f2649ecdb4bf7b517c5b33bbf8df753047 Mon Sep 17 00:00:00 2001 From: melMass Date: Wed, 8 Nov 2023 18:28:27 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20=E2=9C=A8=20less=20strict=20csv=20parsin?= =?UTF-8?q?g?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit closes #122 --- nodes/conditions.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/nodes/conditions.py b/nodes/conditions.py index 1a32b37..dfece5b 100644 --- a/nodes/conditions.py +++ b/nodes/conditions.py @@ -1,5 +1,4 @@ -import csv -import shutil +import csv, shutil from pathlib import Path import folder_paths @@ -157,13 +156,21 @@ class StylesLoader: for file in files: with open(file, "r", encoding="utf8") as f: parsed = csv.reader(f) - for row in parsed: + for i, row in enumerate(parsed): log.debug(f"Adding style {row[0]}") try: - cls.options[row[0]] = (row[1], row[2]) - except Exception: + name, positive, negative = (row + [None] * 3)[:3] + positive = positive or "" + negative = negative or "" + if name is not None: + cls.options[name] = (positive, negative) + else: + # Handle the case where 'name' is None + log.warning(f"Missing 'name' in row {i}.") + + except Exception as e: log.warning( - f"There was an error while parsing {file}, make sure it respects A1111 format, i.e 3 columns name, positive, negative" + f"There was an error while parsing {file}, make sure it respects A1111 format, i.e 3 columns name, positive, negative:\n{e}" ) continue