summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBirte Kristina Friesel <birte.friesel@uos.de>2024-05-23 15:13:47 +0200
committerBirte Kristina Friesel <birte.friesel@uos.de>2024-05-23 15:13:47 +0200
commit0c09f3486fa4db0e2f4f5ee415b846107cceace6 (patch)
treed371de1583a2e16ab6fcdd17b66c0380da18dd72
parent30ae9c71614d0edb68a2d7616ab044bded2cd43d (diff)
Support CSV exports in UNIX dialect (without CRLF) via --export-csv-dialect
-rwxr-xr-xbin/analyze-archive.py4
-rwxr-xr-xbin/analyze-kconfig.py4
-rwxr-xr-xbin/analyze-log.py4
-rw-r--r--lib/cli.py12
4 files changed, 19 insertions, 5 deletions
diff --git a/bin/analyze-archive.py b/bin/analyze-archive.py
index 53a8c37..0587ce1 100755
--- a/bin/analyze-archive.py
+++ b/bin/analyze-archive.py
@@ -426,7 +426,9 @@ def main():
dfatool.cli.print_info_by_name(model, by_name)
if args.export_csv_unparam:
- dfatool.cli.export_csv_unparam(model, args.export_csv_unparam)
+ dfatool.cli.export_csv_unparam(
+ model, args.export_csv_unparam, dialect=args.export_csv_dialect
+ )
if args.export_pgf_unparam:
dfatool.cli.export_pgf_unparam(model, args.export_pgf_unparam)
diff --git a/bin/analyze-kconfig.py b/bin/analyze-kconfig.py
index d148641..da58bc7 100755
--- a/bin/analyze-kconfig.py
+++ b/bin/analyze-kconfig.py
@@ -354,7 +354,9 @@ def main():
dfatool.cli.print_info_by_name(model, by_name)
if args.export_csv_unparam:
- dfatool.cli.export_csv_unparam(model, args.export_csv_unparam)
+ dfatool.cli.export_csv_unparam(
+ model, args.export_csv_unparam, dialect=args.export_csv_dialect
+ )
if args.export_pgf_unparam:
dfatool.cli.export_pgf_unparam(model, args.export_pgf_unparam)
diff --git a/bin/analyze-log.py b/bin/analyze-log.py
index dd32fab..a394b10 100755
--- a/bin/analyze-log.py
+++ b/bin/analyze-log.py
@@ -125,7 +125,9 @@ def main():
dfatool.cli.print_info_by_name(model, by_name)
if args.export_csv_unparam:
- dfatool.cli.export_csv_unparam(model, args.export_csv_unparam)
+ dfatool.cli.export_csv_unparam(
+ model, args.export_csv_unparam, dialect=args.export_csv_dialect
+ )
if args.export_pgf_unparam:
dfatool.cli.export_pgf_unparam(model, args.export_pgf_unparam)
diff --git a/lib/cli.py b/lib/cli.py
index 310314b..297944b 100644
--- a/lib/cli.py
+++ b/lib/cli.py
@@ -358,13 +358,13 @@ def export_dot(model, dot_prefix):
logger.info(f"Dot export of model saved to {filename}")
-def export_csv_unparam(model, csv_prefix):
+def export_csv_unparam(model, csv_prefix, dialect="excel"):
import csv
for name in sorted(model.names):
filename = f"{csv_prefix}{name}.csv"
with open(filename, "w") as f:
- writer = csv.writer(f)
+ writer = csv.writer(f, dialect=dialect)
writer.writerow(
["measurement"] + model.parameters + sorted(model.attributes(name))
)
@@ -479,6 +479,14 @@ def add_standard_arguments(parser):
help="Export raw (parameter-independent) observations in CSV format to {PREFIX}{name}-{attribute}.csv",
)
parser.add_argument(
+ "--export-csv-dialect",
+ metavar="DIALECT",
+ type=str,
+ choices=["excel", "excel-tab", "unix"],
+ default="excel",
+ help="CSV dialect to use for --export-csv-unparam",
+ )
+ parser.add_argument(
"--export-pgf-unparam",
metavar="PREFIX",
type=str,