scripts: csv.py: Replaced -b/--by exprs with % modifiers

In addition to providing more functionality for creating -b/--by fields,
this lets us remove strings from the expr parser. Strings had no
well-defined operations and could best be described as an "ugly wart".

Maybe we'll reintroduce string exprs in the future, but for now csv.py's
-f/--field fields will be limited to numeric values.

As an extra plus, no more excessive quoting when injecting new -b/--by
fields.

---

This also fixed sorting on non-field fields, which was apparently
broken. Or at least mostly useless since it was defaulting to string
sorting.
This commit is contained in:
Christopher Haster
2025-02-21 16:37:57 -06:00
parent 5f2ea77c42
commit dcbc195b41
2 changed files with 103 additions and 56 deletions
+2 -2
View File
@@ -392,7 +392,7 @@ summary-diff sizes-diff: $(OBJ) $(CI)
<(./scripts/ctx.py $(OBJ) -q $(CTXFLAGS) -o-) \
-fctx='max(size)' -q -o-) \
-fcode -fdata -fstack='max(stack)' -fctx='max(ctx)' \
-bbuild='"AFTER"' -q -o-) \
-bbuild=AFTER -q -o-) \
<(./scripts/csv.py \
<(./scripts/csv.py $(BUILDDIR)/lfs.code.csv \
-fcode=size -q -o-) \
@@ -403,7 +403,7 @@ summary-diff sizes-diff: $(OBJ) $(CI)
<(./scripts/csv.py $(BUILDDIR)/lfs.ctx.csv \
-fctx='max(size)' -q -o-) \
-fcode -fdata -fstack='max(stack)' -fctx='max(ctx)' \
-bbuild='"BEFORE"' -q -o-) \
-bbuild=BEFORE -q -o-) \
-bbuild -cBEFORE -Q $(SUMMARYFLAGS))
## Build the test-runner