From 7acb31162cf75aedf6c1be4adea4ca43afeed024 Mon Sep 17 00:00:00 2001 From: kaby76 Date: Tue, 30 Jun 2026 18:11:40 -0400 Subject: [PATCH 01/10] Improve TPS output: break down overall/overhead time and add post-warmup metrics. - Track parse-only time separately from overall wall-clock time - Report per-file token count alongside parse time and TPS - Add post-warmup TPS and speed-up ratio (excluding first/warm-up run) - Output each summary metric on its own line with shorter labels Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/templates/CSharp/st.Test.cs | 31 +++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/src/trgen/templates/CSharp/st.Test.cs b/src/trgen/templates/CSharp/st.Test.cs index 69c8bdb89..621e60fda 100644 --- a/src/trgen/templates/CSharp/st.Test.cs +++ b/src/trgen/templates/CSharp/st.Test.cs @@ -177,6 +177,9 @@ public static IParseTree Parse(string input) static bool show_token_count = false; static long total_count = 0; static long total_tokens = 0; + static double total_parse_seconds = 0; + static long first_file_tokens = 0; + static double first_file_parse_seconds = 0; static bool show_trace = false; static bool show_tree = false; static bool old = false; @@ -329,7 +332,24 @@ static void Main(string[] args) ParseString(inputs[f], f); } DateTime after = DateTime.Now; - if (!quiet) System.Console.Error.WriteLine(prefix + "Total Time: " + (after - before).TotalSeconds + " Tokens per second: " + (long)(total_tokens / (after - before).TotalSeconds)); + if (!quiet) + { + var overall_seconds = (after - before).TotalSeconds; + var warm_tokens = total_tokens - first_file_tokens; + var warm_seconds = total_parse_seconds - first_file_parse_seconds; + var warm_tps = (inputs.Count() > 1 && warm_seconds > 0) + ? ((long)(warm_tokens / warm_seconds)).ToString() + : "n.a."; + var first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + var speedup = (inputs.Count() > 1 && warm_seconds > 0 && first_tps > 0) + ? ((warm_tokens / warm_seconds) / first_tps).ToString("F2") + : "n.a."; + System.Console.Error.WriteLine(prefix + "T: " + overall_seconds); + System.Console.Error.WriteLine(prefix + "OT: " + (overall_seconds - total_parse_seconds)); + System.Console.Error.WriteLine(prefix + "TPS: " + (long)(total_tokens / total_parse_seconds)); + System.Console.Error.WriteLine(prefix + "Post-warmup TPS: " + warm_tps); + System.Console.Error.WriteLine(prefix + "Post-warmup speed up: " + speedup); + } if (show_token_count) System.Console.Error.WriteLine("TC: " + total_count); } Environment.ExitCode = exit_code; @@ -434,8 +454,15 @@ static void DoParse(ICharStream str, string input_name, int row_number) DateTime before = DateTime.Now; var tree = parser.(); DateTime after = DateTime.Now; + var parse_seconds = (after - before).TotalSeconds; + total_parse_seconds += parse_seconds; var token_count = tokens.Size; total_tokens += token_count; + if (row_number == 0) + { + first_file_tokens = token_count; + first_file_parse_seconds = parse_seconds; + } var result = ""; if (listener_lexer.had_error || listener_parser.had_error) { @@ -497,7 +524,7 @@ static void DoParse(ICharStream str, string input_name, int row_number) } if (!quiet) { - System.Console.Error.WriteLine(prefix + "CSharp " + row_number + " " + input_name + " " + result + " " + (after - before).TotalSeconds + " s " + (long)(token_count / (after - before).TotalSeconds) + " tps"); + System.Console.Error.WriteLine(prefix + "CSharp " + row_number + " " + input_name + " " + result + " " + parse_seconds + " s " + token_count + " tokens " + (long)(token_count / parse_seconds) + " tps"); } if (earley) { From 03a122904e1745e744aeb56485dbff22aed586ad Mon Sep 17 00:00:00 2001 From: Ken Domino Date: Tue, 30 Jun 2026 18:12:20 -0400 Subject: [PATCH 02/10] Bump to next version 1.1.1. --- _scripts/set-version.sh | 6 +++--- src/tragl/readme.md | 2 +- src/tragl/tragl.csproj | 2 +- src/tranalyze/Config.cs | 2 +- src/tranalyze/readme.md | 2 +- src/tranalyze/tranalyze.csproj | 2 +- src/trash/readme.md | 2 +- src/trash/trash.csproj | 2 +- src/trcaret/Config.cs | 2 +- src/trcaret/readme.md | 2 +- src/trcaret/trcaret.csproj | 2 +- src/trclonereplace/Config.cs | 2 +- src/trclonereplace/readme.md | 2 +- src/trclonereplace/trclonereplace.csproj | 2 +- src/trcombine/Config.cs | 2 +- src/trcombine/readme.md | 2 +- src/trcombine/trcombine.csproj | 2 +- src/trconvert/Config.cs | 2 +- src/trconvert/readme.md | 2 +- src/trconvert/trconvert.csproj | 2 +- src/trcover/Config.cs | 2 +- src/trcover/readme.md | 2 +- src/trcover/trcover.csproj | 2 +- src/trdistill/Config.cs | 2 +- src/trdistill/readme.md | 2 +- src/trdistill/trdistill.csproj | 2 +- src/trdot/Config.cs | 2 +- src/trdot/readme.md | 2 +- src/trdot/trdot.csproj | 2 +- src/trenum/Config.cs | 2 +- src/trenum/readme.md | 2 +- src/trenum/trenum.csproj | 2 +- src/trextract/Config.cs | 2 +- src/trextract/readme.md | 2 +- src/trextract/trextract.csproj | 2 +- src/trff/Config.cs | 2 +- src/trff/readme.md | 2 +- src/trff/trff.csproj | 2 +- src/trfold/Config.cs | 2 +- src/trfold/readme.md | 2 +- src/trfold/trfold.csproj | 2 +- src/trfoldlit/Config.cs | 2 +- src/trfoldlit/readme.md | 2 +- src/trfoldlit/trfoldlit.csproj | 2 +- src/trformat/Config.cs | 2 +- src/trformat/readme.md | 2 +- src/trformat/trformat.csproj | 2 +- src/trgen/Command.cs | 2 +- src/trgen/Config.cs | 2 +- src/trgen/readme.md | 2 +- src/trgen/trgen.csproj | 2 +- src/trgenvsc/Config.cs | 2 +- src/trgenvsc/readme.md | 2 +- src/trgenvsc/trgenvsc.csproj | 2 +- src/trglob/Config.cs | 2 +- src/trglob/readme.md | 2 +- src/trglob/trglob.csproj | 2 +- src/trgroup/Config.cs | 2 +- src/trgroup/readme.md | 2 +- src/trgroup/trgroup.csproj | 2 +- src/triconv/Config.cs | 2 +- src/triconv/readme.md | 2 +- src/triconv/triconv.csproj | 2 +- src/tritext/Config.cs | 2 +- src/tritext/readme.md | 2 +- src/tritext/tritext.csproj | 2 +- src/trjson/Config.cs | 2 +- src/trjson/readme.md | 2 +- src/trjson/trjson.csproj | 2 +- src/trkleene/Config.cs | 2 +- src/trkleene/readme.md | 2 +- src/trkleene/trkleene.csproj | 2 +- src/trnullable/Config.cs | 2 +- src/trnullable/readme.md | 2 +- src/trnullable/trnullable.csproj | 2 +- src/trparse/Config.cs | 2 +- src/trparse/readme.md | 2 +- src/trparse/trparse.csproj | 2 +- src/trperf/Config.cs | 2 +- src/trperf/readme.md | 2 +- src/trperf/trperf.csproj | 2 +- src/trpiggy/Config.cs | 2 +- src/trpiggy/readme.md | 2 +- src/trpiggy/trpiggy.csproj | 2 +- src/trquery/Config.cs | 2 +- src/trquery/readme.md | 2 +- src/trquery/trquery.csproj | 2 +- src/trrename/Config.cs | 2 +- src/trrename/readme.md | 2 +- src/trrename/trrename.csproj | 2 +- src/trrr/Config.cs | 2 +- src/trrr/readme.md | 2 +- src/trrr/trrr.csproj | 2 +- src/trrup/Config.cs | 2 +- src/trrup/readme.md | 2 +- src/trrup/trrup.csproj | 2 +- src/trsem/Config.cs | 2 +- src/trsem/readme.md | 2 +- src/trsem/trsem.csproj | 2 +- src/trsort/Config.cs | 2 +- src/trsort/readme.md | 2 +- src/trsort/trsort.csproj | 2 +- src/trsplit/Config.cs | 2 +- src/trsplit/readme.md | 2 +- src/trsplit/trsplit.csproj | 2 +- src/trsponge/Config.cs | 2 +- src/trsponge/readme.md | 2 +- src/trsponge/trsponge.csproj | 2 +- src/trtext/Config.cs | 2 +- src/trtext/readme.md | 2 +- src/trtext/trtext.csproj | 2 +- src/trthompson/Config.cs | 2 +- src/trthompson/readme.md | 2 +- src/trthompson/trthompson.csproj | 2 +- src/trtokens/Config.cs | 2 +- src/trtokens/readme.md | 2 +- src/trtokens/trtokens.csproj | 2 +- src/trtree/Config.cs | 2 +- src/trtree/readme.md | 2 +- src/trtree/trtree.csproj | 2 +- src/trull/Config.cs | 2 +- src/trull/readme.md | 2 +- src/trull/trull.csproj | 2 +- src/trunfold/Config.cs | 2 +- src/trunfold/readme.md | 2 +- src/trunfold/trunfold.csproj | 2 +- src/trunfoldlit/Config.cs | 2 +- src/trunfoldlit/readme.md | 2 +- src/trunfoldlit/trunfoldlit.csproj | 2 +- src/trungroup/Config.cs | 2 +- src/trungroup/readme.md | 2 +- src/trungroup/trungroup.csproj | 2 +- src/trwdog/Config.cs | 2 +- src/trwdog/readme.md | 2 +- src/trwdog/trwdog.csproj | 2 +- src/trxgrep/Config.cs | 2 +- src/trxgrep/readme.md | 2 +- src/trxgrep/trxgrep.csproj | 2 +- src/trxml/Config.cs | 2 +- src/trxml/readme.md | 2 +- src/trxml/trxml.csproj | 2 +- src/trxml2/Config.cs | 2 +- src/trxml2/readme.md | 2 +- src/trxml2/trxml2.csproj | 2 +- 144 files changed, 146 insertions(+), 146 deletions(-) diff --git a/_scripts/set-version.sh b/_scripts/set-version.sh index b696b3199..de65dd6a6 100644 --- a/_scripts/set-version.sh +++ b/_scripts/set-version.sh @@ -1,7 +1,7 @@ #!/usr/bin/bash #set -e #set -x -version="1.1.0" +version="1.1.1" cd src directories=`find . -maxdepth 1 -type d -name "tr*"` cwd=`pwd` @@ -42,7 +42,7 @@ do do sed -i -e "s%[<][Vv]ersion[>].*[<][/][Vv]ersion[>]%$version%" $csproj done - sed -i -e 's%^[0-9]*[.][0-9]*[.][0-9]*.*$'"%$version"' Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement.%' readme.md + sed -i -e 's%^[0-9]*[.][0-9]*[.][0-9]*.*$'"%$version"' Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates.%' readme.md for cs in *.cs do sed -i -e "s%public string Version { get; set; } = \"[0-9][.][0-9]*[.][0-9]*\";%public string Version { get; set; } = \"$version\";%" $cs @@ -80,7 +80,7 @@ do rm -f asdfasdf cat *.csproj | sed -e "s%[<][Vv]ersion[>].*[<][/][Vv]ersion[>]%$version%" > asdfasdf mv asdfasdf *.csproj - sed -i -e 's%^[0-9]*[.][0-9]*[.][0-9]*.*$'"%$version"' Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement.%' readme.md + sed -i -e 's%^[0-9]*[.][0-9]*[.][0-9]*.*$'"%$version"' Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates.%' readme.md cd .. done diff --git a/src/tragl/readme.md b/src/tragl/readme.md index 76147bc24..19f6f53c8 100644 --- a/src/tragl/readme.md +++ b/src/tragl/readme.md @@ -19,7 +19,7 @@ This tool is part of Trash, Transformations for Antlr Shell. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/tragl/tragl.csproj b/src/tragl/tragl.csproj index d0f875fb6..c0de55ba6 100644 --- a/src/tragl/tragl.csproj +++ b/src/tragl/tragl.csproj @@ -20,7 +20,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/tragl git diff --git a/src/tranalyze/Config.cs b/src/tranalyze/Config.cs index c275ac8a3..715b19910 100644 --- a/src/tranalyze/Config.cs +++ b/src/tranalyze/Config.cs @@ -18,6 +18,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/tranalyze/readme.md b/src/tranalyze/readme.md index 9c8a28709..7410b4cc9 100644 --- a/src/tranalyze/readme.md +++ b/src/tranalyze/readme.md @@ -65,7 +65,7 @@ _Output_ ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/tranalyze/tranalyze.csproj b/src/tranalyze/tranalyze.csproj index 0f9d6ed2e..884790865 100644 --- a/src/tranalyze/tranalyze.csproj +++ b/src/tranalyze/tranalyze.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/tranalyze git diff --git a/src/trash/readme.md b/src/trash/readme.md index 1802260f8..cc5d98ad4 100644 --- a/src/trash/readme.md +++ b/src/trash/readme.md @@ -1,4 +1,4 @@ -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. # trash diff --git a/src/trash/trash.csproj b/src/trash/trash.csproj index 999ca0255..00f928749 100644 --- a/src/trash/trash.csproj +++ b/src/trash/trash.csproj @@ -19,7 +19,7 @@ Usage: trash [options] (e.g. trash trgen, trash gen, trash trparse)]] true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trash git diff --git a/src/trcaret/Config.cs b/src/trcaret/Config.cs index 4ec8ebe2a..57e8a2572 100644 --- a/src/trcaret/Config.cs +++ b/src/trcaret/Config.cs @@ -17,6 +17,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trcaret/readme.md b/src/trcaret/readme.md index 10a5c169c..eb6486ffd 100644 --- a/src/trcaret/readme.md +++ b/src/trcaret/readme.md @@ -18,7 +18,7 @@ Reads a tree from stdin and prints lines and caret marks. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trcaret/trcaret.csproj b/src/trcaret/trcaret.csproj index abbae1e42..40a448f17 100644 --- a/src/trcaret/trcaret.csproj +++ b/src/trcaret/trcaret.csproj @@ -20,7 +20,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trcaret git diff --git a/src/trclonereplace/Config.cs b/src/trclonereplace/Config.cs index 1bf4b21e8..2eaaf0112 100644 --- a/src/trclonereplace/Config.cs +++ b/src/trclonereplace/Config.cs @@ -21,5 +21,5 @@ public class Config public string Suffix { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trclonereplace/readme.md b/src/trclonereplace/readme.md index b56a9d4c5..9704b1493 100644 --- a/src/trclonereplace/readme.md +++ b/src/trclonereplace/readme.md @@ -19,7 +19,7 @@ Clone, rename, and replace symbols in a grammar to optimize full stack fallbacks ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trclonereplace/trclonereplace.csproj b/src/trclonereplace/trclonereplace.csproj index de766fb1e..92f2884fe 100644 --- a/src/trclonereplace/trclonereplace.csproj +++ b/src/trclonereplace/trclonereplace.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trclonereplace git diff --git a/src/trcombine/Config.cs b/src/trcombine/Config.cs index 03b38b7f9..32d65ee8a 100644 --- a/src/trcombine/Config.cs +++ b/src/trcombine/Config.cs @@ -14,6 +14,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trcombine/readme.md b/src/trcombine/readme.md index bcca73ae9..c09962379 100644 --- a/src/trcombine/readme.md +++ b/src/trcombine/readme.md @@ -103,7 +103,7 @@ The original grammars are left unchanged. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trcombine/trcombine.csproj b/src/trcombine/trcombine.csproj index f15c33b22..6ace4d91c 100644 --- a/src/trcombine/trcombine.csproj +++ b/src/trcombine/trcombine.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trcombine git diff --git a/src/trconvert/Config.cs b/src/trconvert/Config.cs index a28a80a13..11228a5e1 100644 --- a/src/trconvert/Config.cs +++ b/src/trconvert/Config.cs @@ -17,6 +17,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trconvert/readme.md b/src/trconvert/readme.md index c9358c957..06d63e0b6 100644 --- a/src/trconvert/readme.md +++ b/src/trconvert/readme.md @@ -93,7 +93,7 @@ _Output_ ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trconvert/trconvert.csproj b/src/trconvert/trconvert.csproj index 4c1f290d1..83214604d 100644 --- a/src/trconvert/trconvert.csproj +++ b/src/trconvert/trconvert.csproj @@ -19,7 +19,7 @@ syntax. This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trconvert git diff --git a/src/trcover/Config.cs b/src/trcover/Config.cs index 32e154e67..103d1551f 100644 --- a/src/trcover/Config.cs +++ b/src/trcover/Config.cs @@ -33,6 +33,6 @@ public class Config public bool ReadFileNameStdin { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trcover/readme.md b/src/trcover/readme.md index e483f8244..0b01a0093 100644 --- a/src/trcover/readme.md +++ b/src/trcover/readme.md @@ -24,7 +24,7 @@ a grammar. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trcover/trcover.csproj b/src/trcover/trcover.csproj index 3de9d51ac..011f1770a 100644 --- a/src/trcover/trcover.csproj +++ b/src/trcover/trcover.csproj @@ -19,7 +19,7 @@ for the entire grammar. This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trcover git diff --git a/src/trdistill/Config.cs b/src/trdistill/Config.cs index a28a80a13..11228a5e1 100644 --- a/src/trdistill/Config.cs +++ b/src/trdistill/Config.cs @@ -17,6 +17,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trdistill/readme.md b/src/trdistill/readme.md index c9358c957..06d63e0b6 100644 --- a/src/trdistill/readme.md +++ b/src/trdistill/readme.md @@ -93,7 +93,7 @@ _Output_ ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trdistill/trdistill.csproj b/src/trdistill/trdistill.csproj index 4ddd3c616..94621fca9 100644 --- a/src/trdistill/trdistill.csproj +++ b/src/trdistill/trdistill.csproj @@ -19,7 +19,7 @@ syntax. This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trdistill git diff --git a/src/trdot/Config.cs b/src/trdot/Config.cs index 230546e0e..2f2544152 100644 --- a/src/trdot/Config.cs +++ b/src/trdot/Config.cs @@ -14,6 +14,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trdot/readme.md b/src/trdot/readme.md index ad5101f18..9fff38313 100644 --- a/src/trdot/readme.md +++ b/src/trdot/readme.md @@ -63,7 +63,7 @@ The output will be: ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trdot/trdot.csproj b/src/trdot/trdot.csproj index bf49d8b0c..b72284f23 100644 --- a/src/trdot/trdot.csproj +++ b/src/trdot/trdot.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trdot git diff --git a/src/trenum/Config.cs b/src/trenum/Config.cs index ddcad15b4..e48e91b20 100644 --- a/src/trenum/Config.cs +++ b/src/trenum/Config.cs @@ -12,6 +12,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trenum/readme.md b/src/trenum/readme.md index df9ed0151..9261a0bed 100644 --- a/src/trenum/readme.md +++ b/src/trenum/readme.md @@ -8,7 +8,7 @@ ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trenum/trenum.csproj b/src/trenum/trenum.csproj index fc30c45ee..d21433af5 100644 --- a/src/trenum/trenum.csproj +++ b/src/trenum/trenum.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trull git diff --git a/src/trextract/Config.cs b/src/trextract/Config.cs index 03b38b7f9..32d65ee8a 100644 --- a/src/trextract/Config.cs +++ b/src/trextract/Config.cs @@ -14,6 +14,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trextract/readme.md b/src/trextract/readme.md index 2d0cb8087..6f8560b6f 100644 --- a/src/trextract/readme.md +++ b/src/trextract/readme.md @@ -33,7 +33,7 @@ The outputed files are: ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trextract/trextract.csproj b/src/trextract/trextract.csproj index 83c35dcd3..fdd06971d 100644 --- a/src/trextract/trextract.csproj +++ b/src/trextract/trextract.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trextract git diff --git a/src/trff/Config.cs b/src/trff/Config.cs index d4464ffe2..8627bfc70 100644 --- a/src/trff/Config.cs +++ b/src/trff/Config.cs @@ -12,7 +12,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0, Required = false, Default = 1)] public int K { get; set; } diff --git a/src/trff/readme.md b/src/trff/readme.md index 5ad1af92b..39c94b33d 100644 --- a/src/trff/readme.md +++ b/src/trff/readme.md @@ -22,7 +22,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trff/trff.csproj b/src/trff/trff.csproj index 1728d1b27..ed69ed203 100644 --- a/src/trff/trff.csproj +++ b/src/trff/trff.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trff git diff --git a/src/trfold/Config.cs b/src/trfold/Config.cs index 1e4f025ff..d459d6bc7 100644 --- a/src/trfold/Config.cs +++ b/src/trfold/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0, Min = 1)] public IEnumerable Expr { get; set; } diff --git a/src/trfold/readme.md b/src/trfold/readme.md index 2eb46c027..d7c7db0c5 100644 --- a/src/trfold/readme.md +++ b/src/trfold/readme.md @@ -26,7 +26,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trfold/trfold.csproj b/src/trfold/trfold.csproj index 14fe7a8c9..8251cea42 100644 --- a/src/trfold/trfold.csproj +++ b/src/trfold/trfold.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trfold git diff --git a/src/trfoldlit/Config.cs b/src/trfoldlit/Config.cs index 240f86069..98c49ccd0 100644 --- a/src/trfoldlit/Config.cs +++ b/src/trfoldlit/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Expr { get; set; } diff --git a/src/trfoldlit/readme.md b/src/trfoldlit/readme.md index ef9eb0e41..40150ec08 100644 --- a/src/trfoldlit/readme.md +++ b/src/trfoldlit/readme.md @@ -65,7 +65,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trfoldlit/trfoldlit.csproj b/src/trfoldlit/trfoldlit.csproj index 9fabd8e54..b382b195b 100644 --- a/src/trfoldlit/trfoldlit.csproj +++ b/src/trfoldlit/trfoldlit.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trfoldlit git diff --git a/src/trformat/Config.cs b/src/trformat/Config.cs index 48189d168..c2c1ca84e 100644 --- a/src/trformat/Config.cs +++ b/src/trformat/Config.cs @@ -15,6 +15,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trformat/readme.md b/src/trformat/readme.md index 0c498b696..cb8d9a868 100644 --- a/src/trformat/readme.md +++ b/src/trformat/readme.md @@ -18,7 +18,7 @@ Format of grammar using machine learning. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trformat/trformat.csproj b/src/trformat/trformat.csproj index cfda98e4c..ec9ddbf68 100644 --- a/src/trformat/trformat.csproj +++ b/src/trformat/trformat.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trformat git diff --git a/src/trgen/Command.cs b/src/trgen/Command.cs index 3b0409032..546df45b5 100644 --- a/src/trgen/Command.cs +++ b/src/trgen/Command.cs @@ -586,7 +586,7 @@ private void ModifyWithGrammarParse(Config config) } } - public static string version = "1.1.0"; + public static string version = "1.1.1"; // For maven-generated code. public List failed_modules = new List(); diff --git a/src/trgen/Config.cs b/src/trgen/Config.cs index 1c57b6f8e..0d9a06026 100644 --- a/src/trgen/Config.cs +++ b/src/trgen/Config.cs @@ -146,5 +146,5 @@ public void OverrideWithTrgenRc() public bool deps { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trgen/readme.md b/src/trgen/readme.md index a33dc3c9d..ebbb6a1fd 100644 --- a/src/trgen/readme.md +++ b/src/trgen/readme.md @@ -49,7 +49,7 @@ simplify and eliminate bugs created when adding new grammars. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trgen/trgen.csproj b/src/trgen/trgen.csproj index aedb25dc1..6c7c570f3 100644 --- a/src/trgen/trgen.csproj +++ b/src/trgen/trgen.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trgen git diff --git a/src/trgenvsc/Config.cs b/src/trgenvsc/Config.cs index 0beff683f..593a883d1 100644 --- a/src/trgenvsc/Config.cs +++ b/src/trgenvsc/Config.cs @@ -23,6 +23,6 @@ public Config(Config copy) public static readonly Config DEFAULT = new Config(); [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trgenvsc/readme.md b/src/trgenvsc/readme.md index dc8546626..28f7bd835 100644 --- a/src/trgenvsc/readme.md +++ b/src/trgenvsc/readme.md @@ -30,7 +30,7 @@ the XPath patterns to match certain parse trees. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trgenvsc/trgenvsc.csproj b/src/trgenvsc/trgenvsc.csproj index 6615ca13f..81348d090 100644 --- a/src/trgenvsc/trgenvsc.csproj +++ b/src/trgenvsc/trgenvsc.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trgenvsc git diff --git a/src/trglob/Config.cs b/src/trglob/Config.cs index 6b3167ce2..a55c0bdb3 100644 --- a/src/trglob/Config.cs +++ b/src/trglob/Config.cs @@ -12,7 +12,7 @@ public class Config public bool Full { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Files { get; set; } diff --git a/src/trglob/readme.md b/src/trglob/readme.md index 70107540c..bf8c7ce1f 100644 --- a/src/trglob/readme.md +++ b/src/trglob/readme.md @@ -17,7 +17,7 @@ Expand a glob string into file names. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trglob/trglob.csproj b/src/trglob/trglob.csproj index 7e6d8742d..f3314ed42 100644 --- a/src/trglob/trglob.csproj +++ b/src/trglob/trglob.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trglob git diff --git a/src/trgroup/Config.cs b/src/trgroup/Config.cs index bee90f266..efdfa1489 100644 --- a/src/trgroup/Config.cs +++ b/src/trgroup/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Expr { get; set; } diff --git a/src/trgroup/readme.md b/src/trgroup/readme.md index c888b0a3f..dfb40a938 100644 --- a/src/trgroup/readme.md +++ b/src/trgroup/readme.md @@ -56,7 +56,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trgroup/trgroup.csproj b/src/trgroup/trgroup.csproj index 2d9a69f5f..9bc15781b 100644 --- a/src/trgroup/trgroup.csproj +++ b/src/trgroup/trgroup.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trgroup git diff --git a/src/triconv/Config.cs b/src/triconv/Config.cs index 41bc63406..6f1172459 100644 --- a/src/triconv/Config.cs +++ b/src/triconv/Config.cs @@ -12,7 +12,7 @@ public class Config public string ToCode { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Files { get; set; } } diff --git a/src/triconv/readme.md b/src/triconv/readme.md index 0a471e369..9f70c8805 100644 --- a/src/triconv/readme.md +++ b/src/triconv/readme.md @@ -20,7 +20,7 @@ unicode. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/triconv/triconv.csproj b/src/triconv/triconv.csproj index d64ff7aae..7154c6e24 100644 --- a/src/triconv/triconv.csproj +++ b/src/triconv/triconv.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trxml2 git diff --git a/src/tritext/Config.cs b/src/tritext/Config.cs index 4f6db754b..e97e3220b 100644 --- a/src/tritext/Config.cs +++ b/src/tritext/Config.cs @@ -19,5 +19,5 @@ public class Config public string Filter { get; set; } = ""; [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/tritext/readme.md b/src/tritext/readme.md index 86a9e7fa6..96b1f5a7f 100644 --- a/src/tritext/readme.md +++ b/src/tritext/readme.md @@ -18,7 +18,7 @@ Get strings from a PDF file using IText. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/tritext/tritext.csproj b/src/tritext/tritext.csproj index 0a08c3846..4e600607b 100644 --- a/src/tritext/tritext.csproj +++ b/src/tritext/tritext.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/tritext git diff --git a/src/trjson/Config.cs b/src/trjson/Config.cs index 0509f283d..e00544ba7 100644 --- a/src/trjson/Config.cs +++ b/src/trjson/Config.cs @@ -11,5 +11,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trjson/readme.md b/src/trjson/readme.md index c17463858..09f567278 100644 --- a/src/trjson/readme.md +++ b/src/trjson/readme.md @@ -18,7 +18,7 @@ Read a parse tree from stdin and write a JSON represenation of it. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trjson/trjson.csproj b/src/trjson/trjson.csproj index 4dc4fc474..b14aa07fc 100644 --- a/src/trjson/trjson.csproj +++ b/src/trjson/trjson.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trjson git diff --git a/src/trkleene/Config.cs b/src/trkleene/Config.cs index bee90f266..efdfa1489 100644 --- a/src/trkleene/Config.cs +++ b/src/trkleene/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Expr { get; set; } diff --git a/src/trkleene/readme.md b/src/trkleene/readme.md index 910b10c76..96cfa4daf 100644 --- a/src/trkleene/readme.md +++ b/src/trkleene/readme.md @@ -38,7 +38,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trkleene/trkleene.csproj b/src/trkleene/trkleene.csproj index c82db8496..70031ef38 100644 --- a/src/trkleene/trkleene.csproj +++ b/src/trkleene/trkleene.csproj @@ -20,7 +20,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trkleene git diff --git a/src/trnullable/Config.cs b/src/trnullable/Config.cs index 0e2a8739f..58579332e 100644 --- a/src/trnullable/Config.cs +++ b/src/trnullable/Config.cs @@ -11,5 +11,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trnullable/readme.md b/src/trnullable/readme.md index 6ec9828df..7190d63b9 100644 --- a/src/trnullable/readme.md +++ b/src/trnullable/readme.md @@ -18,7 +18,7 @@ trparse A.g4 | trnullable ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trnullable/trnullable.csproj b/src/trnullable/trnullable.csproj index 1652bcab7..4300bafe8 100644 --- a/src/trnullable/trnullable.csproj +++ b/src/trnullable/trnullable.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trnullable git diff --git a/src/trparse/Config.cs b/src/trparse/Config.cs index 88c4bea6d..2a530f9e0 100644 --- a/src/trparse/Config.cs +++ b/src/trparse/Config.cs @@ -42,7 +42,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Option('x', Required = false, HelpText = "Read input file names from stdin.")] public bool ReadFileNameStdin { get; set; } diff --git a/src/trparse/readme.md b/src/trparse/readme.md index d0bbecc4b..62bfc209d 100644 --- a/src/trparse/readme.md +++ b/src/trparse/readme.md @@ -50,7 +50,7 @@ the `--type` command-line option: ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trparse/trparse.csproj b/src/trparse/trparse.csproj index 6d5f64dcb..8e4305198 100644 --- a/src/trparse/trparse.csproj +++ b/src/trparse/trparse.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trparse git diff --git a/src/trperf/Config.cs b/src/trperf/Config.cs index f5f98a68d..a0c3a5304 100644 --- a/src/trperf/Config.cs +++ b/src/trperf/Config.cs @@ -33,5 +33,5 @@ public class Config public bool ReadFileNameStdin { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trperf/readme.md b/src/trperf/readme.md index 1e1643d4d..384b0ae64 100644 --- a/src/trperf/readme.md +++ b/src/trperf/readme.md @@ -67,7 +67,7 @@ be in a trgen-generated parser directory, or use the -p option. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trperf/trperf.csproj b/src/trperf/trperf.csproj index ee234e7c4..95aa3b7e4 100644 --- a/src/trperf/trperf.csproj +++ b/src/trperf/trperf.csproj @@ -20,7 +20,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trperf git diff --git a/src/trpiggy/Config.cs b/src/trpiggy/Config.cs index 33fbf624d..a7114af88 100644 --- a/src/trpiggy/Config.cs +++ b/src/trpiggy/Config.cs @@ -15,6 +15,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trpiggy/readme.md b/src/trpiggy/readme.md index ef8c2ab39..8f534756c 100644 --- a/src/trpiggy/readme.md +++ b/src/trpiggy/readme.md @@ -63,7 +63,7 @@ Output: ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trpiggy/trpiggy.csproj b/src/trpiggy/trpiggy.csproj index a524edeb9..d36679c74 100644 --- a/src/trpiggy/trpiggy.csproj +++ b/src/trpiggy/trpiggy.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trpiggy git diff --git a/src/trquery/Config.cs b/src/trquery/Config.cs index 561384a2a..251576d15 100644 --- a/src/trquery/Config.cs +++ b/src/trquery/Config.cs @@ -22,7 +22,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Query { get; set; } } diff --git a/src/trquery/readme.md b/src/trquery/readme.md index 85700515d..5ef7ae09f 100644 --- a/src/trquery/readme.md +++ b/src/trquery/readme.md @@ -47,7 +47,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trquery/trquery.csproj b/src/trquery/trquery.csproj index a5c08fd2d..7ede03bfd 100644 --- a/src/trquery/trquery.csproj +++ b/src/trquery/trquery.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trquery git diff --git a/src/trrename/Config.cs b/src/trrename/Config.cs index ea0610c8c..1a3dde240 100644 --- a/src/trrename/Config.cs +++ b/src/trrename/Config.cs @@ -23,5 +23,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trrename/readme.md b/src/trrename/readme.md index f502567bd..6cab72bcc 100644 --- a/src/trrename/readme.md +++ b/src/trrename/readme.md @@ -27,7 +27,7 @@ make sure to enclose the argument as it contains semi-colons. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trrename/trrename.csproj b/src/trrename/trrename.csproj index 7957bc157..8d5084323 100644 --- a/src/trrename/trrename.csproj +++ b/src/trrename/trrename.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trrename git diff --git a/src/trrr/Config.cs b/src/trrr/Config.cs index c666e5b22..d367c4410 100644 --- a/src/trrr/Config.cs +++ b/src/trrr/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0, Required = false)] public string Expr { get; set; } diff --git a/src/trrr/readme.md b/src/trrr/readme.md index 68316710a..b1436f858 100644 --- a/src/trrr/readme.md +++ b/src/trrr/readme.md @@ -14,7 +14,7 @@ ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trrr/trrr.csproj b/src/trrr/trrr.csproj index 34ec1ac04..6b6121b87 100644 --- a/src/trrr/trrr.csproj +++ b/src/trrr/trrr.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trrr git diff --git a/src/trrup/Config.cs b/src/trrup/Config.cs index 48189d168..c2c1ca84e 100644 --- a/src/trrup/Config.cs +++ b/src/trrup/Config.cs @@ -15,6 +15,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trrup/readme.md b/src/trrup/readme.md index 88977275d..5186538bd 100644 --- a/src/trrup/readme.md +++ b/src/trrup/readme.md @@ -42,7 +42,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trrup/trrup.csproj b/src/trrup/trrup.csproj index d03c8be8d..6e8654e9d 100644 --- a/src/trrup/trrup.csproj +++ b/src/trrup/trrup.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trrup git diff --git a/src/trsem/Config.cs b/src/trsem/Config.cs index e38d05642..86b540d31 100644 --- a/src/trsem/Config.cs +++ b/src/trsem/Config.cs @@ -21,6 +21,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trsem/readme.md b/src/trsem/readme.md index 20499c5da..040ee8e35 100644 --- a/src/trsem/readme.md +++ b/src/trsem/readme.md @@ -18,7 +18,7 @@ Read a static semantics spec file and generate code. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trsem/trsem.csproj b/src/trsem/trsem.csproj index 2b2674491..4299b6cec 100644 --- a/src/trsem/trsem.csproj +++ b/src/trsem/trsem.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trsem git diff --git a/src/trsort/Config.cs b/src/trsort/Config.cs index 5f957c2e3..59ebb3fc9 100644 --- a/src/trsort/Config.cs +++ b/src/trsort/Config.cs @@ -30,6 +30,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trsort/readme.md b/src/trsort/readme.md index 9c9b72eb3..230821079 100644 --- a/src/trsort/readme.md +++ b/src/trsort/readme.md @@ -37,7 +37,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trsort/trsort.csproj b/src/trsort/trsort.csproj index 3c1c66b3f..57abd9b3d 100644 --- a/src/trsort/trsort.csproj +++ b/src/trsort/trsort.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trsort git diff --git a/src/trsplit/Config.cs b/src/trsplit/Config.cs index eb4f85351..94e13eee9 100644 --- a/src/trsplit/Config.cs +++ b/src/trsplit/Config.cs @@ -15,5 +15,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trsplit/readme.md b/src/trsplit/readme.md index 244b70092..640925be9 100644 --- a/src/trsplit/readme.md +++ b/src/trsplit/readme.md @@ -45,7 +45,7 @@ modified. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trsplit/trsplit.csproj b/src/trsplit/trsplit.csproj index a1c74b3ed..4435fccde 100644 --- a/src/trsplit/trsplit.csproj +++ b/src/trsplit/trsplit.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trsplit git diff --git a/src/trsponge/Config.cs b/src/trsponge/Config.cs index a7c4b9beb..33035cde3 100644 --- a/src/trsponge/Config.cs +++ b/src/trsponge/Config.cs @@ -17,5 +17,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trsponge/readme.md b/src/trsponge/readme.md index 5b558e55e..46f38daed 100644 --- a/src/trsponge/readme.md +++ b/src/trsponge/readme.md @@ -19,7 +19,7 @@ results to file(s). ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trsponge/trsponge.csproj b/src/trsponge/trsponge.csproj index 690b4cd98..23087d07a 100644 --- a/src/trsponge/trsponge.csproj +++ b/src/trsponge/trsponge.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trsponge git diff --git a/src/trtext/Config.cs b/src/trtext/Config.cs index 7723f8914..6bba92c9d 100644 --- a/src/trtext/Config.cs +++ b/src/trtext/Config.cs @@ -24,5 +24,5 @@ public class Config public bool Count { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trtext/readme.md b/src/trtext/readme.md index 454412560..fac4490cd 100644 --- a/src/trtext/readme.md +++ b/src/trtext/readme.md @@ -19,7 +19,7 @@ specified, the line number range for the tree is printed. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trtext/trtext.csproj b/src/trtext/trtext.csproj index 7d6aa3a0d..84a94bb5d 100644 --- a/src/trtext/trtext.csproj +++ b/src/trtext/trtext.csproj @@ -20,7 +20,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trtext git diff --git a/src/trthompson/Config.cs b/src/trthompson/Config.cs index f7b688283..7632aa45d 100644 --- a/src/trthompson/Config.cs +++ b/src/trthompson/Config.cs @@ -12,6 +12,6 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } } diff --git a/src/trthompson/readme.md b/src/trthompson/readme.md index f6eb44c20..6687bfd8f 100644 --- a/src/trthompson/readme.md +++ b/src/trthompson/readme.md @@ -12,7 +12,7 @@ ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trthompson/trthompson.csproj b/src/trthompson/trthompson.csproj index be59f0b80..62b88a819 100644 --- a/src/trthompson/trthompson.csproj +++ b/src/trthompson/trthompson.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trthompson git diff --git a/src/trtokens/Config.cs b/src/trtokens/Config.cs index 0509f283d..e00544ba7 100644 --- a/src/trtokens/Config.cs +++ b/src/trtokens/Config.cs @@ -11,5 +11,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trtokens/readme.md b/src/trtokens/readme.md index 5e52fa513..ddc4d07a1 100644 --- a/src/trtokens/readme.md +++ b/src/trtokens/readme.md @@ -52,7 +52,7 @@ Output: ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trtokens/trtokens.csproj b/src/trtokens/trtokens.csproj index 5f4642298..b45aac205 100644 --- a/src/trtokens/trtokens.csproj +++ b/src/trtokens/trtokens.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trtokens git diff --git a/src/trtree/Config.cs b/src/trtree/Config.cs index 4ea856000..ca35ff8da 100644 --- a/src/trtree/Config.cs +++ b/src/trtree/Config.cs @@ -26,5 +26,5 @@ public class Config public bool BlockTreeStyle { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trtree/readme.md b/src/trtree/readme.md index 199cb410d..da5f14864 100644 --- a/src/trtree/readme.md +++ b/src/trtree/readme.md @@ -18,7 +18,7 @@ Reads a tree from stdin and prints the tree as an indented node list. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trtree/trtree.csproj b/src/trtree/trtree.csproj index c7decf896..9205b9ff5 100644 --- a/src/trtree/trtree.csproj +++ b/src/trtree/trtree.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trtree git diff --git a/src/trull/Config.cs b/src/trull/Config.cs index bee90f266..efdfa1489 100644 --- a/src/trull/Config.cs +++ b/src/trull/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Expr { get; set; } diff --git a/src/trull/readme.md b/src/trull/readme.md index ac6448666..dc54263b1 100644 --- a/src/trull/readme.md +++ b/src/trull/readme.md @@ -63,7 +63,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trull/trull.csproj b/src/trull/trull.csproj index a9b0d975c..d5b563108 100644 --- a/src/trull/trull.csproj +++ b/src/trull/trull.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trull git diff --git a/src/trunfold/Config.cs b/src/trunfold/Config.cs index e53c23337..5dec4e37b 100644 --- a/src/trunfold/Config.cs +++ b/src/trunfold/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0, Min = 1)] public IEnumerable Expr { get; set; } } diff --git a/src/trunfold/readme.md b/src/trunfold/readme.md index 891e5bf64..c3a15212f 100644 --- a/src/trunfold/readme.md +++ b/src/trunfold/readme.md @@ -51,7 +51,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trunfold/trunfold.csproj b/src/trunfold/trunfold.csproj index adaac6cff..b99c95d46 100644 --- a/src/trunfold/trunfold.csproj +++ b/src/trunfold/trunfold.csproj @@ -19,7 +19,7 @@ in the parse tree. This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trunfold git diff --git a/src/trunfoldlit/Config.cs b/src/trunfoldlit/Config.cs index 0cc8ebd39..aeaf97459 100644 --- a/src/trunfoldlit/Config.cs +++ b/src/trunfoldlit/Config.cs @@ -15,5 +15,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trunfoldlit/readme.md b/src/trunfoldlit/readme.md index 659c06572..ac029e388 100644 --- a/src/trunfoldlit/readme.md +++ b/src/trunfoldlit/readme.md @@ -51,7 +51,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trunfoldlit/trunfoldlit.csproj b/src/trunfoldlit/trunfoldlit.csproj index b77892e8c..7e9602dc0 100644 --- a/src/trunfoldlit/trunfoldlit.csproj +++ b/src/trunfoldlit/trunfoldlit.csproj @@ -19,7 +19,7 @@ in the parse tree. This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trunfoldlit git diff --git a/src/trungroup/Config.cs b/src/trungroup/Config.cs index e53c23337..5dec4e37b 100644 --- a/src/trungroup/Config.cs +++ b/src/trungroup/Config.cs @@ -15,7 +15,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0, Min = 1)] public IEnumerable Expr { get; set; } } diff --git a/src/trungroup/readme.md b/src/trungroup/readme.md index 81da830ef..33c664585 100644 --- a/src/trungroup/readme.md +++ b/src/trungroup/readme.md @@ -24,7 +24,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trungroup/trungroup.csproj b/src/trungroup/trungroup.csproj index d66e8de44..4cf0b9221 100644 --- a/src/trungroup/trungroup.csproj +++ b/src/trungroup/trungroup.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trungroup git diff --git a/src/trwdog/Config.cs b/src/trwdog/Config.cs index 37f353ed9..a1a990747 100644 --- a/src/trwdog/Config.cs +++ b/src/trwdog/Config.cs @@ -11,5 +11,5 @@ public class Config public int? Timeout { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trwdog/readme.md b/src/trwdog/readme.md index 72f175e1d..d63caf61b 100644 --- a/src/trwdog/readme.md +++ b/src/trwdog/readme.md @@ -18,7 +18,7 @@ Execute a command with a watchdog timer. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trwdog/trwdog.csproj b/src/trwdog/trwdog.csproj index ed2c7b309..837766b38 100644 --- a/src/trwdog/trwdog.csproj +++ b/src/trwdog/trwdog.csproj @@ -20,7 +20,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trwdog git diff --git a/src/trxgrep/Config.cs b/src/trxgrep/Config.cs index 1fd981663..942360973 100644 --- a/src/trxgrep/Config.cs +++ b/src/trxgrep/Config.cs @@ -18,7 +18,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0, Min = 1)] public IEnumerable Expr { get; set; } } diff --git a/src/trxgrep/readme.md b/src/trxgrep/readme.md index e73d8df28..2ec9a3a1e 100644 --- a/src/trxgrep/readme.md +++ b/src/trxgrep/readme.md @@ -24,7 +24,7 @@ XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trxgrep/trxgrep.csproj b/src/trxgrep/trxgrep.csproj index 971fa5c1d..5a2d217bf 100644 --- a/src/trxgrep/trxgrep.csproj +++ b/src/trxgrep/trxgrep.csproj @@ -19,7 +19,7 @@ This program is part of the Trash toolkit. true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trxgrep git diff --git a/src/trxml/Config.cs b/src/trxml/Config.cs index 0509f283d..e00544ba7 100644 --- a/src/trxml/Config.cs +++ b/src/trxml/Config.cs @@ -11,5 +11,5 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; } diff --git a/src/trxml/readme.md b/src/trxml/readme.md index d6aa284a8..6c062956f 100644 --- a/src/trxml/readme.md +++ b/src/trxml/readme.md @@ -18,7 +18,7 @@ Read a tree from stdin and write an XML represenation of it. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trxml/trxml.csproj b/src/trxml/trxml.csproj index b76d787a2..83d10f8aa 100644 --- a/src/trxml/trxml.csproj +++ b/src/trxml/trxml.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trxml git diff --git a/src/trxml2/Config.cs b/src/trxml2/Config.cs index af8294ce4..bb532e140 100644 --- a/src/trxml2/Config.cs +++ b/src/trxml2/Config.cs @@ -9,7 +9,7 @@ public class Config public bool Verbose { get; set; } [Option("version", Required = false)] - public string Version { get; set; } = "1.1.0"; + public string Version { get; set; } = "1.1.1"; [Value(0)] public IEnumerable Files { get; set; } } diff --git a/src/trxml2/readme.md b/src/trxml2/readme.md index 0e51b51db..fe3134bbc 100644 --- a/src/trxml2/readme.md +++ b/src/trxml2/readme.md @@ -18,7 +18,7 @@ Read an xml file and enumerate all paths to elements in xpath syntax. ## Current version -1.1.0 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. +1.1.1 Unified dispatcher for the Trash toolkit. Fix broken Cpp target on Github. Add tokens per second perf measurement. Added more perf measurements to templates. ## License diff --git a/src/trxml2/trxml2.csproj b/src/trxml2/trxml2.csproj index 30e55f373..95937e785 100644 --- a/src/trxml2/trxml2.csproj +++ b/src/trxml2/trxml2.csproj @@ -18,7 +18,7 @@ This program is part of the Trash toolkit.]]> true portable true - 1.1.0 + 1.1.1 https://github.com/kaby76/Trash/tree/main/src/trxml2 git From d2372399cb238c83fa8b0521fe4109152c2d233d Mon Sep 17 00:00:00 2001 From: kaby76 Date: Tue, 30 Jun 2026 20:09:16 -0400 Subject: [PATCH 03/10] Add PT (parse time) to summary; reorder and rename T to TT. - Add "PT:" line showing total parse-only time across all files - Rename "T:" to "TT:" (Total Time) and move it after "OT:" - New summary order: PT, OT, TT, TPS, Post-warmup TPS, Post-warmup speed up Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/templates/CSharp/st.Test.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/trgen/templates/CSharp/st.Test.cs b/src/trgen/templates/CSharp/st.Test.cs index 621e60fda..b94845798 100644 --- a/src/trgen/templates/CSharp/st.Test.cs +++ b/src/trgen/templates/CSharp/st.Test.cs @@ -344,8 +344,9 @@ static void Main(string[] args) var speedup = (inputs.Count() > 1 && warm_seconds > 0 && first_tps > 0) ? ((warm_tokens / warm_seconds) / first_tps).ToString("F2") : "n.a."; - System.Console.Error.WriteLine(prefix + "T: " + overall_seconds); + System.Console.Error.WriteLine(prefix + "PT: " + total_parse_seconds); System.Console.Error.WriteLine(prefix + "OT: " + (overall_seconds - total_parse_seconds)); + System.Console.Error.WriteLine(prefix + "TT: " + overall_seconds); System.Console.Error.WriteLine(prefix + "TPS: " + (long)(total_tokens / total_parse_seconds)); System.Console.Error.WriteLine(prefix + "Post-warmup TPS: " + warm_tps); System.Console.Error.WriteLine(prefix + "Post-warmup speed up: " + speedup); From 67b0f55080e49fab91b7edb5ef0dfc550f3c8022 Mon Sep 17 00:00:00 2001 From: kaby76 Date: Tue, 30 Jun 2026 20:20:28 -0400 Subject: [PATCH 04/10] Apply improved TPS metrics to all remaining trgen target templates. Mirrors the CSharp changes across Antlr4ng, Cpp, Dart, Java, JavaScript, PHP, Python3, and TypeScript: - Track total parse time (PT) separately from overall wall-clock time (TT) - Report overhead time (OT = TT - PT) - Per-file output now includes token count (time, tokens, tps order) - Summary adds Post-warmup TPS and Post-warmup speed up (n.a. for single file) Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/templates/Antlr4ng/st.Test.ts | 28 +++++++++++++++++-- src/trgen/templates/Cpp/st.Test.cpp | 32 +++++++++++++++++++-- src/trgen/templates/Dart/st.Test.dart | 28 +++++++++++++++++-- src/trgen/templates/Java/st.Test.java | 30 ++++++++++++++++++-- src/trgen/templates/JavaScript/st.Test.js | 28 +++++++++++++++++-- src/trgen/templates/PHP/st.Test.php | 34 +++++++++++++++++++++-- src/trgen/templates/Python3/st.Test.py | 29 +++++++++++++++++-- src/trgen/templates/TypeScript/st.Test.ts | 28 +++++++++++++++++-- 8 files changed, 221 insertions(+), 16 deletions(-) diff --git a/src/trgen/templates/Antlr4ng/st.Test.ts b/src/trgen/templates/Antlr4ng/st.Test.ts index f69bd188c..53708c880 100644 --- a/src/trgen/templates/Antlr4ng/st.Test.ts +++ b/src/trgen/templates/Antlr4ng/st.Test.ts @@ -58,6 +58,9 @@ var binary = ; var string_instance = 0; var prefix = ''; var total_tokens = 0; +var total_parse_seconds = 0; +var first_file_tokens = 0; +var first_file_parse_seconds = 0; var inputs: string[] = []; var is_fns: boolean[] = []; @@ -129,7 +132,23 @@ function main() { } timer.stop(); var t = timer.time().m * 60 + timer.time().s + timer.time().ms / 1000; - if (!quiet) console.error(prefix + 'Total Time: ' + t + ' Tokens per second: ' + Math.round(total_tokens / t)); + if (!quiet) { + var warm_tokens = total_tokens - first_file_tokens; + var warm_seconds = total_parse_seconds - first_file_parse_seconds; + var warm_tps = (inputs.length > 1 && warm_seconds > 0) + ? Math.round(warm_tokens / warm_seconds).toString() + : 'n.a.'; + var first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + var speedup = (inputs.length > 1 && warm_seconds > 0 && first_tps > 0) + ? ((warm_tokens / warm_seconds) / first_tps).toFixed(2) + : 'n.a.'; + console.error(prefix + 'PT: ' + total_parse_seconds); + console.error(prefix + 'OT: ' + (t - total_parse_seconds)); + console.error(prefix + 'TT: ' + t); + console.error(prefix + 'TPS: ' + Math.round(total_tokens / total_parse_seconds)); + console.error(prefix + 'Post-warmup TPS: ' + warm_tps); + console.error(prefix + 'Post-warmup speed up: ' + speedup); + } } process.exitCode = error_code; } @@ -201,6 +220,11 @@ function DoParse(str: CharStream, input_name: string, row_number: number) { result = 'success'; } var t = timer.time().m * 60 + timer.time().s + timer.time().ms / 1000; + total_parse_seconds += t; + if (row_number == 0) { + first_file_tokens = token_count; + first_file_parse_seconds = t; + } if (show_tree) { if (tee) { writeFileSync(input_name + ".tree", tree.toStringTree(parser.ruleNames, parser)); @@ -209,7 +233,7 @@ function DoParse(str: CharStream, input_name: string, row_number: number) { } } if (!quiet) { - console.error(prefix + 'TypeScript ' + row_number + ' ' + input_name + ' ' + result + ' ' + t + ' s ' + Math.round(token_count / t) + ' tps'); + console.error(prefix + 'TypeScript ' + row_number + ' ' + input_name + ' ' + result + ' ' + t + ' s ' + token_count + ' tokens ' + Math.round(token_count / t) + ' tps'); } if (tee) { closeSync(output); diff --git a/src/trgen/templates/Cpp/st.Test.cpp b/src/trgen/templates/Cpp/st.Test.cpp index a3aee3845..ecfdedfb9 100644 --- a/src/trgen/templates/Cpp/st.Test.cpp +++ b/src/trgen/templates/Cpp/st.Test.cpp @@ -54,6 +54,9 @@ std::string prefix; bool quiet = false; std::string file_encoding = ""; long total_tokens = 0; +double total_parse_seconds = 0; +long first_file_tokens = 0; +double first_file_parse_seconds = 0; void DoParse(antlr4::CharStream* str, std::string input_name, int row_number) { @@ -93,6 +96,12 @@ void DoParse(antlr4::CharStream* str, std::string input_name, int row_number) long token_count = (long)tokens->size(); total_tokens += token_count; auto duration = std::chrono::duration_cast\(after - before); + double parse_seconds = duration.count() / 1000000.0; + total_parse_seconds += parse_seconds; + if (row_number == 0) { + first_file_tokens = token_count; + first_file_parse_seconds = parse_seconds; + } std::string result; if (listener_parser->had_error || listener_lexer->had_error) { @@ -123,7 +132,7 @@ void DoParse(antlr4::CharStream* str, std::string input_name, int row_number) } if (!quiet) { - std::cerr \<\< prefix \<\< "Cpp " \<\< row_number \<\< " " \<\< input_name \<\< " " \<\< result \<\< " " \<\< formatDurationSeconds(duration.count()) \<\< " s " \<\< (long)(token_count / (duration.count() / 1000000.0)) \<\< " tps" \<\< std::endl; + std::cerr \<\< prefix \<\< "Cpp " \<\< row_number \<\< " " \<\< input_name \<\< " " \<\< result \<\< " " \<\< parse_seconds \<\< " s " \<\< token_count \<\< " tokens " \<\< (long)(token_count / parse_seconds) \<\< " tps" \<\< std::endl; } if (tee) { @@ -244,7 +253,26 @@ int TryParse(std::vector\& args) } auto after = std::chrono::steady_clock::now(); auto duration = std::chrono::duration_cast\(after - before); - if (! quiet) std::cerr \<\< prefix \<\< "Total Time: " \<\< formatDurationSeconds(duration.count()) \<\< " Tokens per second: " \<\< (long)(total_tokens / (duration.count() / 1000000.0)) \<\< std::endl; + if (!quiet) { + double overall_seconds = duration.count() / 1000000.0; + long warm_tokens = total_tokens - first_file_tokens; + double warm_seconds = total_parse_seconds - first_file_parse_seconds; + std::string warm_tps = (inputs.size() > 1 && warm_seconds > 0) + ? std::to_string((long)(warm_tokens / warm_seconds)) + : "n.a."; + double first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + std::ostringstream speedup_ss; + if (inputs.size() > 1 && warm_seconds > 0 && first_tps > 0) + speedup_ss \<\< std::fixed \<\< std::setprecision(2) \<\< ((warm_tokens / warm_seconds) / first_tps); + else + speedup_ss \<\< "n.a."; + std::cerr \<\< prefix \<\< "PT: " \<\< total_parse_seconds \<\< std::endl; + std::cerr \<\< prefix \<\< "OT: " \<\< (overall_seconds - total_parse_seconds) \<\< std::endl; + std::cerr \<\< prefix \<\< "TT: " \<\< overall_seconds \<\< std::endl; + std::cerr \<\< prefix \<\< "TPS: " \<\< (long)(total_tokens / total_parse_seconds) \<\< std::endl; + std::cerr \<\< prefix \<\< "Post-warmup TPS: " \<\< warm_tps \<\< std::endl; + std::cerr \<\< prefix \<\< "Post-warmup speed up: " \<\< speedup_ss.str() \<\< std::endl; + } } return error_code; } diff --git a/src/trgen/templates/Dart/st.Test.dart b/src/trgen/templates/Dart/st.Test.dart index 07868811e..aef44d9fc 100644 --- a/src/trgen/templates/Dart/st.Test.dart +++ b/src/trgen/templates/Dart/st.Test.dart @@ -61,6 +61,9 @@ var string_instance = 0; var prefix = ""; var quiet = false; var total_tokens = 0; +var total_parse_seconds = 0.0; +var first_file_tokens = 0; +var first_file_parse_seconds = 0.0; void main(List\ args) async { // Set command-line args before anything else. @@ -137,7 +140,23 @@ void main(List\ args) async { } s.stop(); var et = s.elapsedMilliseconds / 1000.0; - if (!quiet) stderr.writeln(prefix + "Total Time: " + et.toString() + " Tokens per second: " + (et > 0 ? (total_tokens / et).round().toString() : "0")); + if (!quiet) { + var warm_tokens = total_tokens - first_file_tokens; + var warm_seconds = total_parse_seconds - first_file_parse_seconds; + var warm_tps = (inputs.length > 1 && warm_seconds > 0) + ? (warm_tokens / warm_seconds).round().toString() + : "n.a."; + var first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0.0; + var speedup = (inputs.length > 1 && warm_seconds > 0 && first_tps > 0) + ? ((warm_tokens / warm_seconds) / first_tps).toStringAsFixed(2) + : "n.a."; + stderr.writeln(prefix + "PT: " + total_parse_seconds.toString()); + stderr.writeln(prefix + "OT: " + (et - total_parse_seconds).toString()); + stderr.writeln(prefix + "TT: " + et.toString()); + stderr.writeln(prefix + "TPS: " + (total_parse_seconds > 0 ? (total_tokens / total_parse_seconds).round().toString() : "0")); + stderr.writeln(prefix + "Post-warmup TPS: " + warm_tps); + stderr.writeln(prefix + "Post-warmup speed up: " + speedup); + } } exit(error_code); } @@ -224,6 +243,11 @@ Future\ DoParse(CharStream str, String input_name, int row_number) async var token_count = tokens.size; total_tokens += token_count; var et = s.elapsedMilliseconds / 1000.0; + total_parse_seconds += et; + if (row_number == 0) { + first_file_tokens = token_count; + first_file_parse_seconds = et; + } var result = ""; if (parser.numberOfSyntaxErrors > 0) { @@ -252,7 +276,7 @@ Future\ DoParse(CharStream str, String input_name, int row_number) async } if (!quiet) { - stderr.writeln(prefix + "Dart " + row_number.toString() + " " + input_name + " " + result + " " + et.toString() + " s " + (et > 0 ? (token_count / et).round().toString() : "0") + " tps"); + stderr.writeln(prefix + "Dart " + row_number.toString() + " " + input_name + " " + result + " " + et.toString() + " s " + token_count.toString() + " tokens " + (et > 0 ? (token_count / et).round().toString() : "0") + " tps"); } if (tee) { diff --git a/src/trgen/templates/Java/st.Test.java b/src/trgen/templates/Java/st.Test.java index da895de4f..d25814d53 100644 --- a/src/trgen/templates/Java/st.Test.java +++ b/src/trgen/templates/Java/st.Test.java @@ -35,6 +35,9 @@ public class Test { static String prefix = ""; static boolean quiet = false; static long total_tokens = 0; + static double total_parse_seconds = 0; + static long first_file_tokens = 0; + static double first_file_parse_seconds = 0; public static void main(String[] args) throws FileNotFoundException, IOException { @@ -123,7 +126,24 @@ else if (args[i].charAt(0) == '-') } Instant finish = Instant.now(); long timeElapsed = Duration.between(start, finish).toMillis(); - if (!quiet) System.err.println(prefix + "Total Time: " + (timeElapsed * 1.0) / 1000.0 + " Tokens per second: " + (long)(total_tokens / ((timeElapsed * 1.0) / 1000.0))); + if (!quiet) { + double overall_seconds = (timeElapsed * 1.0) / 1000.0; + long warm_tokens = total_tokens - first_file_tokens; + double warm_seconds = total_parse_seconds - first_file_parse_seconds; + String warm_tps = (inputs.size() > 1 && warm_seconds > 0) + ? Long.toString((long)(warm_tokens / warm_seconds)) + : "n.a."; + double first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + String speedup = (inputs.size() > 1 && warm_seconds > 0 && first_tps > 0) + ? String.format("%.2f", (warm_tokens / warm_seconds) / first_tps) + : "n.a."; + System.err.println(prefix + "PT: " + total_parse_seconds); + System.err.println(prefix + "OT: " + (overall_seconds - total_parse_seconds)); + System.err.println(prefix + "TT: " + overall_seconds); + System.err.println(prefix + "TPS: " + (long)(total_tokens / total_parse_seconds)); + System.err.println(prefix + "Post-warmup TPS: " + warm_tps); + System.err.println(prefix + "Post-warmup speed up: " + speedup); + } } java.lang.System.exit(error_code); } @@ -198,8 +218,14 @@ static void DoParse(CharStream str, String input_name, int row_number) { ParseTree tree = parser.(); Instant finish = Instant.now(); long timeElapsed = Duration.between(start, finish).toMillis(); + double parse_seconds = (timeElapsed * 1.0) / 1000.0; + total_parse_seconds += parse_seconds; long token_count = tokens.size(); total_tokens += token_count; + if (row_number == 0) { + first_file_tokens = token_count; + first_file_parse_seconds = parse_seconds; + } String result = ""; if (listener_parser.had_error || listener_lexer.had_error) { @@ -230,7 +256,7 @@ static void DoParse(CharStream str, String input_name, int row_number) { } if (!quiet) { - System.err.println(prefix + "Java " + row_number + " " + input_name + " " + result + " " + (timeElapsed * 1.0) / 1000.0 + " s " + (long)(token_count / ((timeElapsed * 1.0) / 1000.0)) + " tps"); + System.err.println(prefix + "Java " + row_number + " " + input_name + " " + result + " " + parse_seconds + " s " + token_count + " tokens " + (long)(token_count / parse_seconds) + " tps"); } if (tee) output.close(); } diff --git a/src/trgen/templates/JavaScript/st.Test.js b/src/trgen/templates/JavaScript/st.Test.js index 7f5bf0c9c..e2a924487 100644 --- a/src/trgen/templates/JavaScript/st.Test.js +++ b/src/trgen/templates/JavaScript/st.Test.js @@ -58,6 +58,9 @@ var binary = ; var string_instance = 0; var prefix = ''; var total_tokens = 0; +var total_parse_seconds = 0; +var first_file_tokens = 0; +var first_file_parse_seconds = 0; var inputs = []; var is_fns = []; @@ -129,7 +132,23 @@ function main() { } timer.stop(); var t = timer.time().m * 60 + timer.time().s + timer.time().ms / 1000; - if (!quiet) console.error(prefix + 'Total Time: ' + t + ' Tokens per second: ' + Math.round(total_tokens / t)); + if (!quiet) { + var warm_tokens = total_tokens - first_file_tokens; + var warm_seconds = total_parse_seconds - first_file_parse_seconds; + var warm_tps = (inputs.length > 1 && warm_seconds > 0) + ? Math.round(warm_tokens / warm_seconds).toString() + : 'n.a.'; + var first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + var speedup = (inputs.length > 1 && warm_seconds > 0 && first_tps > 0) + ? ((warm_tokens / warm_seconds) / first_tps).toFixed(2) + : 'n.a.'; + console.error(prefix + 'PT: ' + total_parse_seconds); + console.error(prefix + 'OT: ' + (t - total_parse_seconds)); + console.error(prefix + 'TT: ' + t); + console.error(prefix + 'TPS: ' + Math.round(total_tokens / total_parse_seconds)); + console.error(prefix + 'Post-warmup TPS: ' + warm_tps); + console.error(prefix + 'Post-warmup speed up: ' + speedup); + } } process.exitCode = error_code; } @@ -200,6 +219,11 @@ function DoParse(str, input_name, row_number) { result = 'success'; } var t = timer.time().m * 60 + timer.time().s + timer.time().ms / 1000; + total_parse_seconds += t; + if (row_number == 0) { + first_file_tokens = token_count; + first_file_parse_seconds = t; + } if (show_tree) { if (tee) { fs.writeFileSync(input_name + ".tree", tree.toStringTree(parser.ruleNames)); @@ -208,7 +232,7 @@ function DoParse(str, input_name, row_number) { } } if (! quiet) { - console.error(prefix + 'JavaScript ' + row_number + ' ' + input_name + ' ' + result + ' ' + t + ' s ' + Math.round(token_count / t) + ' tps'); + console.error(prefix + 'JavaScript ' + row_number + ' ' + input_name + ' ' + result + ' ' + t + ' s ' + token_count + ' tokens ' + Math.round(token_count / t) + ' tps'); } if (tee) { fs.closeSync(output); diff --git a/src/trgen/templates/PHP/st.Test.php b/src/trgen/templates/PHP/st.Test.php index 58c065b38..f55b7addd 100644 --- a/src/trgen/templates/PHP/st.Test.php +++ b/src/trgen/templates/PHP/st.Test.php @@ -74,6 +74,9 @@ public function syntaxError( $prefix = ""; $quiet = false; $total_tokens = 0; +$total_parse_seconds = 0; +$first_file_tokens = 0; +$first_file_parse_seconds = 0; function main($argv) : void { global $tee; @@ -87,6 +90,9 @@ function main($argv) : void { global $prefix; global $quiet; global $total_tokens; + global $total_parse_seconds; + global $first_file_tokens; + global $first_file_parse_seconds; for ($i = 1; $i \< count($argv); $i++) { if ($argv[$i] == "-tokens") { $show_tokens = true; @@ -130,7 +136,22 @@ function main($argv) : void { } $duration = $timer->stop(); if (! $quiet) { - fwrite(STDERR, $prefix . "Total Time: " . $duration->asSeconds() . " Tokens per second: " . (int)($total_tokens / $duration->asSeconds()) . "\n"); + $overall_seconds = $duration->asSeconds(); + $warm_tokens = $total_tokens - $first_file_tokens; + $warm_seconds = $total_parse_seconds - $first_file_parse_seconds; + $warm_tps = (count($inputs) > 1 && $warm_seconds > 0) + ? strval((int)($warm_tokens / $warm_seconds)) + : "n.a."; + $first_tps = $first_file_parse_seconds > 0 ? ($first_file_tokens / $first_file_parse_seconds) : 0; + $speedup = (count($inputs) > 1 && $warm_seconds > 0 && $first_tps > 0) + ? number_format(($warm_tokens / $warm_seconds) / $first_tps, 2) + : "n.a."; + fwrite(STDERR, $prefix . "PT: " . $total_parse_seconds . "\n"); + fwrite(STDERR, $prefix . "OT: " . ($overall_seconds - $total_parse_seconds) . "\n"); + fwrite(STDERR, $prefix . "TT: " . $overall_seconds . "\n"); + fwrite(STDERR, $prefix . "TPS: " . (int)($total_tokens / $total_parse_seconds) . "\n"); + fwrite(STDERR, $prefix . "Post-warmup TPS: " . $warm_tps . "\n"); + fwrite(STDERR, $prefix . "Post-warmup speed up: " . $speedup . "\n"); } } exit($error_code); @@ -169,6 +190,9 @@ function DoParse($str, $input_name, $row_number) { global $prefix; global $quiet; global $total_tokens; + global $total_parse_seconds; + global $first_file_tokens; + global $first_file_parse_seconds; $lexer = new ($str); if ($show_tokens) { for ($i=0; ; $i++) { @@ -203,8 +227,14 @@ function DoParse($str, $input_name, $row_number) { $timer2->start(); $tree = $parser->(); $duration = $timer2->stop(); + $parse_seconds = $duration->asSeconds(); + $total_parse_seconds += $parse_seconds; $token_count = $tokens->count(); $total_tokens += $token_count; + if ($row_number == 0) { + $first_file_tokens = $token_count; + $first_file_parse_seconds = $parse_seconds; + } $result = ""; if ($parserErrorListener->had_error || $lexerErrorListener->had_error) { $result = "fail"; @@ -223,7 +253,7 @@ function DoParse($str, $input_name, $row_number) { } } if ( ! $quiet ) { - fwrite(STDERR, $prefix . "PHP " . $row_number . " " . $input_name . " " . $result . " " . $duration->asSeconds() . " s " . (int)($token_count / $duration->asSeconds()) . " tps\n"); + fwrite(STDERR, $prefix . "PHP " . $row_number . " " . $input_name . " " . $result . " " . $parse_seconds . " s " . $token_count . " tokens " . (int)($token_count / $parse_seconds) . " tps\n"); } if ( $tee ) { fclose($output); diff --git a/src/trgen/templates/Python3/st.Test.py b/src/trgen/templates/Python3/st.Test.py index 48a5c3af7..166f3510e 100644 --- a/src/trgen/templates/Python3/st.Test.py +++ b/src/trgen/templates/Python3/st.Test.py @@ -41,6 +41,9 @@ def syntaxError(self, recognizer, offendingSymbol, line, column, msg, e): quiet = False noop = False total_tokens = 0 +total_parse_seconds = 0 +first_file_tokens = 0 +first_file_parse_seconds = 0 def main(argv): global tee @@ -51,7 +54,10 @@ def main(argv): global prefix global quiet global error_code - + global total_parse_seconds + global first_file_tokens + global first_file_parse_seconds + inputs = [] is_fns = [] prefix = "" @@ -103,7 +109,17 @@ def main(argv): diff = end_time - start_time diff_time = diff.total_seconds() if (not quiet): - print(f'{prefix}Total Time: {diff_time} Tokens per second: {int(total_tokens / diff_time) if diff_time > 0 else 0}', file=sys.stderr); + warm_tokens = total_tokens - first_file_tokens + warm_seconds = total_parse_seconds - first_file_parse_seconds + warm_tps = str(int(warm_tokens / warm_seconds)) if (len(inputs) > 1 and warm_seconds > 0) else "n.a." + first_tps = first_file_tokens / first_file_parse_seconds if first_file_parse_seconds > 0 else 0 + speedup = f'{(warm_tokens / warm_seconds) / first_tps:.2f}' if (len(inputs) > 1 and warm_seconds > 0 and first_tps > 0) else "n.a." + print(f'{prefix}PT: {total_parse_seconds}', file=sys.stderr) + print(f'{prefix}OT: {diff_time - total_parse_seconds}', file=sys.stderr) + print(f'{prefix}TT: {diff_time}', file=sys.stderr) + print(f'{prefix}TPS: {int(total_tokens / total_parse_seconds) if total_parse_seconds > 0 else 0}', file=sys.stderr) + print(f'{prefix}Post-warmup TPS: {warm_tps}', file=sys.stderr) + print(f'{prefix}Post-warmup speed up: {speedup}', file=sys.stderr) sys.exit(error_code) def ParseStdin(): @@ -140,6 +156,9 @@ def DoParse(str, input_name, row_number): global quiet global error_code global total_tokens + global total_parse_seconds + global first_file_tokens + global first_file_parse_seconds lexer = (str) lexer.removeErrorListeners() @@ -177,6 +196,10 @@ def DoParse(str, input_name, row_number): total_tokens += token_count diff = end_time - start_time diff_time = diff.total_seconds() + total_parse_seconds += diff_time + if row_number == 0: + first_file_tokens = token_count + first_file_parse_seconds = diff_time result = '' if listener_parser.had_error or listener_lexer.had_error: result = 'fail' @@ -201,6 +224,8 @@ def DoParse(str, input_name, row_number): sys.stderr.write(' ') sys.stderr.write(f'{diff_time}') sys.stderr.write(' s ') + sys.stderr.write(f'{token_count}') + sys.stderr.write(' tokens ') sys.stderr.write(f'{int(token_count / diff_time) if diff_time > 0 else 0}') sys.stderr.write(' tps\n') if (tee): diff --git a/src/trgen/templates/TypeScript/st.Test.ts b/src/trgen/templates/TypeScript/st.Test.ts index a6dec886a..356502dfa 100644 --- a/src/trgen/templates/TypeScript/st.Test.ts +++ b/src/trgen/templates/TypeScript/st.Test.ts @@ -48,6 +48,9 @@ var binary = ; var string_instance = 0; var prefix = ''; var total_tokens = 0; +var total_parse_seconds = 0; +var first_file_tokens = 0; +var first_file_parse_seconds = 0; var inputs: string[] = []; var is_fns: boolean[] = []; @@ -119,7 +122,23 @@ function main() { } timer.stop(); var t = timer.time().m * 60 + timer.time().s + timer.time().ms / 1000; - if (!quiet) console.error(prefix + 'Total Time: ' + t + ' Tokens per second: ' + Math.round(total_tokens / t)); + if (!quiet) { + var warm_tokens = total_tokens - first_file_tokens; + var warm_seconds = total_parse_seconds - first_file_parse_seconds; + var warm_tps = (inputs.length > 1 && warm_seconds > 0) + ? Math.round(warm_tokens / warm_seconds).toString() + : 'n.a.'; + var first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + var speedup = (inputs.length > 1 && warm_seconds > 0 && first_tps > 0) + ? ((warm_tokens / warm_seconds) / first_tps).toFixed(2) + : 'n.a.'; + console.error(prefix + 'PT: ' + total_parse_seconds); + console.error(prefix + 'OT: ' + (t - total_parse_seconds)); + console.error(prefix + 'TT: ' + t); + console.error(prefix + 'TPS: ' + Math.round(total_tokens / total_parse_seconds)); + console.error(prefix + 'Post-warmup TPS: ' + warm_tps); + console.error(prefix + 'Post-warmup speed up: ' + speedup); + } } process.exitCode = error_code; } @@ -189,6 +208,11 @@ function DoParse(str: CharStream, input_name: string, row_number: number) { result = 'success'; } var t = timer.time().m * 60 + timer.time().s + timer.time().ms / 1000; + total_parse_seconds += t; + if (row_number == 0) { + first_file_tokens = token_count; + first_file_parse_seconds = t; + } if (show_tree) { if (tee) { writeFileSync(input_name + ".tree", tree.toStringTree(parser.ruleNames, parser)); @@ -197,7 +221,7 @@ function DoParse(str: CharStream, input_name: string, row_number: number) { } } if (!quiet) { - console.error(prefix + 'TypeScript ' + row_number + ' ' + input_name + ' ' + result + ' ' + t + ' s ' + Math.round(token_count / t) + ' tps'); + console.error(prefix + 'TypeScript ' + row_number + ' ' + input_name + ' ' + result + ' ' + t + ' s ' + token_count + ' tokens ' + Math.round(token_count / t) + ' tps'); } if (tee) { closeSync(output); From 10aa8f2400358bdc9071950f610172e8843f7256 Mon Sep 17 00:00:00 2001 From: kaby76 Date: Tue, 30 Jun 2026 21:48:36 -0400 Subject: [PATCH 05/10] Apply improved TPS metrics to Go trgen template. Mirrors the changes from other targets: - Track total parse time (PT) separately from overall wall-clock time (TT) - Report overhead time (OT = TT - PT) - Per-file output now includes token count (time, tokens, tps order) - Summary adds Post-warmup TPS and Post-warmup speed up (n.a. for single file) Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/templates/Go/Test.go.st | 34 ++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/src/trgen/templates/Go/Test.go.st b/src/trgen/templates/Go/Test.go.st index fb19df7d0..d46639e1a 100644 --- a/src/trgen/templates/Go/Test.go.st +++ b/src/trgen/templates/Go/Test.go.st @@ -68,6 +68,9 @@ var quiet = false var tee = false var binary = var total_tokens int64 = 0 +var total_parse_seconds float64 = 0 +var first_file_tokens int64 = 0 +var first_file_parse_seconds float64 = 0 func main() { for i := 1; i \< len(os.Args); i = i + 1 { @@ -115,8 +118,27 @@ func main() { } elapsed := time.Since(start) if ! quiet { - fmt.Fprintf(os.Stderr, "%sTotal Time: %.3f Tokens per second: %.0f", prefix, elapsed.Seconds(), float64(total_tokens)/elapsed.Seconds()) - fmt.Fprintln(os.Stderr) + overall_seconds := elapsed.Seconds() + warm_tokens := total_tokens - first_file_tokens + warm_seconds := total_parse_seconds - first_file_parse_seconds + warm_tps := "n.a." + if len(inputs) > 1 && warm_seconds > 0 { + warm_tps = fmt.Sprintf("%.0f", float64(warm_tokens)/warm_seconds) + } + first_tps := 0.0 + if first_file_parse_seconds > 0 { + first_tps = float64(first_file_tokens) / first_file_parse_seconds + } + speedup := "n.a." + if len(inputs) > 1 && warm_seconds > 0 && first_tps > 0 { + speedup = fmt.Sprintf("%.2f", (float64(warm_tokens)/warm_seconds)/first_tps) + } + fmt.Fprintf(os.Stderr, "%sPT: %.3f\n", prefix, total_parse_seconds) + fmt.Fprintf(os.Stderr, "%sOT: %.3f\n", prefix, overall_seconds - total_parse_seconds) + fmt.Fprintf(os.Stderr, "%sTT: %.3f\n", prefix, overall_seconds) + fmt.Fprintf(os.Stderr, "%sTPS: %.0f\n", prefix, float64(total_tokens)/total_parse_seconds) + fmt.Fprintf(os.Stderr, "%sPost-warmup TPS: %s\n", prefix, warm_tps) + fmt.Fprintf(os.Stderr, "%sPost-warmup speed up: %s\n", prefix, speedup) } } if error_code != 0 { @@ -203,8 +225,14 @@ func DoParse(str antlr.CharStream, input_name string, row_number int) { start := time.Now() var tree = parser.() elapsed := time.Since(start) + parse_seconds := elapsed.Seconds() + total_parse_seconds += parse_seconds token_count := int64(len(tokens.GetAllTokens())) total_tokens += token_count + if row_number == 0 { + first_file_tokens = token_count + first_file_parse_seconds = parse_seconds + } var result = "" if parserErrors.errors > 0 || lexerErrors.errors > 0 { result = "fail" @@ -231,7 +259,7 @@ func DoParse(str antlr.CharStream, input_name string, row_number int) { fmt.Fprintf(os.Stderr, "%d ", row_number) fmt.Fprintf(os.Stderr, "%s ", input_name) fmt.Fprintf(os.Stderr, "%s ", result) - fmt.Fprintf(os.Stderr, "%.3f s %.0f tps", elapsed.Seconds(), float64(token_count)/elapsed.Seconds()) + fmt.Fprintf(os.Stderr, "%.3f s %d tokens %.0f tps", parse_seconds, token_count, float64(token_count)/parse_seconds) fmt.Fprintln(os.Stderr) } } From 881fd990feb7d97c511b16a5f556a6e16207bdb2 Mon Sep 17 00:00:00 2001 From: kaby76 Date: Tue, 30 Jun 2026 21:50:08 -0400 Subject: [PATCH 06/10] Apply improved TPS metrics to Antlr4cs trgen template. Mirrors the changes from other targets: - Track total parse time (PT) separately from overall wall-clock time (TT) - Report overhead time (OT = TT - PT) - Per-file output now includes token count (time, tokens, tps order) - Summary adds Post-warmup TPS and Post-warmup speed up (n.a. for single file) Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/templates/Antlr4cs/st.Test.cs | 29 +++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/src/trgen/templates/Antlr4cs/st.Test.cs b/src/trgen/templates/Antlr4cs/st.Test.cs index c6beaa538..b94a881ae 100644 --- a/src/trgen/templates/Antlr4cs/st.Test.cs +++ b/src/trgen/templates/Antlr4cs/st.Test.cs @@ -36,6 +36,9 @@ public class Program static string prefix = ""; static bool quiet = false; static long total_tokens = 0; + static double total_parse_seconds = 0; + static long first_file_tokens = 0; + static double first_file_parse_seconds = 0; static void Main(string[] args) { @@ -126,7 +129,22 @@ static void Main(string[] args) DateTime after = DateTime.Now; if (!quiet) { - System.Console.Error.WriteLine(prefix + "Total Time: " + (after - before).TotalSeconds + " Tokens per second: " + (long)(total_tokens / (after - before).TotalSeconds)); + var overall_seconds = (after - before).TotalSeconds; + var warm_tokens = total_tokens - first_file_tokens; + var warm_seconds = total_parse_seconds - first_file_parse_seconds; + var warm_tps = (inputs.Count() > 1 && warm_seconds > 0) + ? ((long)(warm_tokens / warm_seconds)).ToString() + : "n.a."; + var first_tps = first_file_parse_seconds > 0 ? (first_file_tokens / first_file_parse_seconds) : 0; + var speedup = (inputs.Count() > 1 && warm_seconds > 0 && first_tps > 0) + ? ((warm_tokens / warm_seconds) / first_tps).ToString("F2") + : "n.a."; + System.Console.Error.WriteLine(prefix + "PT: " + total_parse_seconds); + System.Console.Error.WriteLine(prefix + "OT: " + (overall_seconds - total_parse_seconds)); + System.Console.Error.WriteLine(prefix + "TT: " + overall_seconds); + System.Console.Error.WriteLine(prefix + "TPS: " + (long)(total_tokens / total_parse_seconds)); + System.Console.Error.WriteLine(prefix + "Post-warmup TPS: " + warm_tps); + System.Console.Error.WriteLine(prefix + "Post-warmup speed up: " + speedup); } } Environment.ExitCode = exit_code; @@ -201,8 +219,15 @@ static void DoParse(ICharStream str, string input_name, int row_number) DateTime before = DateTime.Now; var tree = parser.(); DateTime after = DateTime.Now; + var parse_seconds = (after - before).TotalSeconds; + total_parse_seconds += parse_seconds; var token_count = tokens.Size; total_tokens += token_count; + if (row_number == 0) + { + first_file_tokens = token_count; + first_file_parse_seconds = parse_seconds; + } var result = ""; if (parser.NumberOfSyntaxErrors > 0) { @@ -225,7 +250,7 @@ static void DoParse(ICharStream str, string input_name, int row_number) } if (!quiet) { - System.Console.Error.WriteLine(prefix + "Antlr4cs " + row_number + " " + input_name + " " + result + " " + (after - before).TotalSeconds + " s " + (long)(token_count / (after - before).TotalSeconds) + " tps"); + System.Console.Error.WriteLine(prefix + "Antlr4cs " + row_number + " " + input_name + " " + result + " " + parse_seconds + " s " + token_count + " tokens " + (long)(token_count / parse_seconds) + " tps"); } if (tee) output.Close(); } From 65520b705207057ed02124549e5df2c60ac005fc Mon Sep 17 00:00:00 2001 From: kaby76 Date: Tue, 30 Jun 2026 21:57:29 -0400 Subject: [PATCH 07/10] Apply improved TPS metrics to Rust trgen template. Mirrors the changes from other targets: - Track total parse time (PT) separately from overall wall-clock time (TT) - Report overhead time (OT = TT - PT) - Per-file output now includes token count (time, tokens, tps order) - Summary adds Post-warmup TPS and Post-warmup speed up (n.a. for single file) - Thread parse_seconds out of parse_input via updated return type (usize, usize, f64) Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/templates/Rust/src/st.main.rs | 44 ++++++++++++++++++++----- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/src/trgen/templates/Rust/src/st.main.rs b/src/trgen/templates/Rust/src/st.main.rs index 012a783fa..d95401896 100644 --- a/src/trgen/templates/Rust/src/st.main.rs +++ b/src/trgen/templates/Rust/src/st.main.rs @@ -27,7 +27,7 @@ fn parse_input( input_name: &str, idx: i32, flags: &Flags, -) -> (usize, usize) { +) -> (usize, usize, f64) { let writer: Rc\>> = Rc::new(RefCell::new( if flags.tee { Box::new(File::create(format!("{}.errors", input_name)).unwrap()) as Box\ @@ -80,6 +80,7 @@ fn parse_input( let start = Instant::now(); let tree = parser.().expect("parsing failed setup"); let elapsed = start.elapsed(); + let parse_seconds = elapsed.as_secs_f64(); let token_count = parser.get_input_stream_mut().size() as usize; let error_cnt = *lec.borrow() + *pec.borrow(); @@ -95,15 +96,16 @@ fn parse_input( } if !flags.quiet { - eprint!("{}Rust {} {} {} {:.3} s {:.0} tps\n", + eprint!("{}Rust {} {} {} {:.3} s {} tokens {:.0} tps\n", flags.prefix, idx, input_name, if error_cnt > 0 { "fail" } else { "success" }, - elapsed.as_secs_f64(), - token_count as f64 / elapsed.as_secs_f64() + parse_seconds, + token_count, + token_count as f64 / parse_seconds ); } - if error_cnt > 0 { (1, token_count) } else { (0, token_count) } + if error_cnt > 0 { (1, token_count, parse_seconds) } else { (0, token_count, parse_seconds) } } struct Flags { @@ -170,18 +172,44 @@ fn main() { } else { let mut exit_code = 0; let mut total_tokens: usize = 0; + let mut total_parse_seconds: f64 = 0.0; + let mut first_file_tokens: usize = 0; + let mut first_file_parse_seconds: f64 = 0.0; let start_all = Instant::now(); for (idx, input) in flags.inputs.iter().enumerate() { - let (rc, tc) = parse_input(input, idx as i32, &flags); + let (rc, tc, ps) = parse_input(input, idx as i32, &flags); total_tokens += tc; + total_parse_seconds += ps; + if idx == 0 { + first_file_tokens = tc; + first_file_parse_seconds = ps; + } if rc > 0 { exit_code = 1; } } let elapsed = start_all.elapsed(); if !flags.quiet { - let secs = elapsed.as_secs_f64(); - eprintln!("{}Total Time: {:.3} Tokens per second: {:.0}", flags.prefix, secs, total_tokens as f64 / secs); + let overall_seconds = elapsed.as_secs_f64(); + let warm_tokens = total_tokens - first_file_tokens; + let warm_seconds = total_parse_seconds - first_file_parse_seconds; + let warm_tps = if flags.inputs.len() > 1 && warm_seconds > 0.0 { + format!("{:.0}", warm_tokens as f64 / warm_seconds) + } else { + "n.a.".to_string() + }; + let first_tps = if first_file_parse_seconds > 0.0 { first_file_tokens as f64 / first_file_parse_seconds } else { 0.0 }; + let speedup = if flags.inputs.len() > 1 && warm_seconds > 0.0 && first_tps > 0.0 { + format!("{:.2}", (warm_tokens as f64 / warm_seconds) / first_tps) + } else { + "n.a.".to_string() + }; + eprintln!("{}PT: {:.3}", flags.prefix, total_parse_seconds); + eprintln!("{}OT: {:.3}", flags.prefix, overall_seconds - total_parse_seconds); + eprintln!("{}TT: {:.3}", flags.prefix, overall_seconds); + eprintln!("{}TPS: {:.0}", flags.prefix, total_tokens as f64 / total_parse_seconds); + eprintln!("{}Post-warmup TPS: {}", flags.prefix, warm_tps); + eprintln!("{}Post-warmup speed up: {}", flags.prefix, speedup); } process::exit(exit_code as i32); } From c1d4a2c90c7d11b1a2cede5d8549d6032a86d2f2 Mon Sep 17 00:00:00 2001 From: kaby76 Date: Wed, 1 Jul 2026 07:53:49 -0400 Subject: [PATCH 08/10] Document output measurements in trgen readme. Add a new section explaining the per-file output fields (time, tokens, tps) and the six summary labels (PT, OT, TT, TPS, Post-warmup TPS, Post-warmup speed up) with a description of what each measures. Co-Authored-By: Claude Sonnet 4.6 --- src/trgen/readme.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/trgen/readme.md b/src/trgen/readme.md index ebbb6a1fd..0b946f3db 100644 --- a/src/trgen/readme.md +++ b/src/trgen/readme.md @@ -47,6 +47,40 @@ need to specify information that is required in the pom.xml, and helps to greatl simplify and eliminate bugs created when adding new grammars. +## Output measurements + +The generated driver prints timing and throughput information to stderr after each parse +and again as a summary after all files have been parsed. + +### Per-file output + +Each parsed file produces one line in the form: + +