Skip to content

Commit 4e88ad6

Browse files
committed
summarize-appveyor-log: sort before printing
1 parent b890c15 commit 4e88ad6

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

misc/summarize-appveyor-log.go

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"os"
99
"regexp"
1010
"strings"
11+
"sort"
1112
)
1213

1314
//uses stdin and stdout
@@ -27,10 +28,10 @@ func countMessages(log []string) (warns, errs map[string][]string) {
2728
warns = make(map[string][]string)
2829
errs = make(map[string][]string)
2930
tstamp := `\[\d\d:\d\d:\d\d\] `
30-
fname := " *(.*)"
31-
fline := `\((\d+)\): `
32-
msgNr := `([A-Z]\d+): `
33-
msgTxt := `([^\[]*) `
31+
fname := " *(.*)" // $1
32+
fline := `(?:\((\d+)\)| ): ` // $2 - either line number in parenthesis or a space, followed by a colon
33+
msgNr := `([A-Z]+\d+): ` // $3 - C4251, LNK2005, etc
34+
msgTxt := `([^\[]*) ` // $4
3435
tail := `\[[^\[\]]*\]`
3536
warnRe := regexp.MustCompile(tstamp + fname + fline + `warning ` + msgNr + msgTxt + tail)
3637
errRe := regexp.MustCompile(tstamp + fname + fline + `(?:fatal )?error ` + msgNr + msgTxt + tail)
@@ -84,8 +85,15 @@ func countMessages(log []string) (warns, errs map[string][]string) {
8485
}
8586

8687
func printMessages(typ string, m map[string][]string) {
87-
for k, v := range m {
88-
for i, l := range v {
88+
//sort keys
89+
keys := make([]string, 0, len(m))
90+
for key := range m {
91+
keys = append(keys, key)
92+
}
93+
sort.Strings(keys)
94+
//fmt.Println(keys)
95+
for _, k := range keys {
96+
for i, l := range m[k] {
8997
//first string is an example, not a location
9098
if i == 0 {
9199
fmt.Printf("%s %s (i.e. \"%s\")\n", typ, k, l)

0 commit comments

Comments
 (0)