From 97c52d9f9bec585f5b9a7f3510fdebb6b29c2bd0 Mon Sep 17 00:00:00 2001 From: Miha Zupan Date: Sun, 1 Sep 2024 09:27:23 +0200 Subject: [PATCH] Write final results json directly onto disk --- Runner/RegexDiffJob.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Runner/RegexDiffJob.cs b/Runner/RegexDiffJob.cs index beca0da..927eee2 100644 --- a/Runner/RegexDiffJob.cs +++ b/Runner/RegexDiffJob.cs @@ -347,7 +347,12 @@ static string ParseCSharpLiteral(ReadOnlySpan literal, out int indexOfEndi private async Task UploadResultsAsync(RegexEntry[] entries) { Directory.CreateDirectory("Results"); - File.WriteAllText("Results/Results.json", JsonSerializer.Serialize(entries, s_jsonOptions)); + + using (FileStream jsonFs = File.Create("Results/Results.json")) + { + JsonSerializer.Serialize(jsonFs, entries, s_jsonOptions); + } + PendingTasks.Enqueue(ZipAndUploadArtifactAsync("Results", "Results")); if (entries.Any(e => e.ShortDiff is not null)) @@ -376,6 +381,11 @@ static string GenerateExamplesMarkdown(RegexEntry[] entries, int maxMarkdownLeng continue; } + if (sb.Length + diff.Length > maxMarkdownLength) + { + continue; + } + int startLength = sb.Length; string options = entry.Regex.Options.ToString();