From b973eddd2830fb4743e0e69d026eafbb97a40c79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Szil=C3=A1gyi?= Date: Mon, 22 Jul 2019 12:31:11 +0300 Subject: [PATCH] build: deduplicate same authors with different casing --- AUTHORS | 2 -- build/update-license.go | 23 ++++++++++++++--------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/AUTHORS b/AUTHORS index 53b07dbba7..526ea35c2f 100644 --- a/AUTHORS +++ b/AUTHORS @@ -122,7 +122,6 @@ Gus Gustav Simonsson Gísli Kristjánsson Ha ĐANG -hackyminer HackyMiner hadv Hao Bryan Cheng @@ -257,7 +256,6 @@ Paul Litvak Paulo L F Casaretto Paweł Bylica Pedro Pombeiro -Pedro Pombeiro Peter Broadhurst Peter Pratscher Petr Mikusek diff --git a/build/update-license.go b/build/update-license.go index 1bad7585d4..aa4d6100d7 100644 --- a/build/update-license.go +++ b/build/update-license.go @@ -275,27 +275,32 @@ func mailmapLookup(authors []string) []string { } func writeAuthors(files []string) { - merge := make(map[string]bool) + var ( + dedup = make(map[string]bool) + list []string + ) // Add authors that Git reports as contributors. // This is the primary source of author information. for _, a := range gitAuthors(files) { - merge[a] = true + if la := strings.ToLower(a); !dedup[la] { + list = append(list, a) + dedup[la] = true + } } // Add existing authors from the file. This should ensure that we // never lose authors, even if Git stops listing them. We can also // add authors manually this way. for _, a := range readAuthors() { - merge[a] = true + if la := strings.ToLower(a); !dedup[la] { + list = append(list, a) + dedup[la] = true + } } // Write sorted list of authors back to the file. - var result []string - for a := range merge { - result = append(result, a) - } - sort.Sort(authors(result)) + sort.Sort(authors(list)) content := new(bytes.Buffer) content.WriteString(authorsFileHeader) - for _, a := range result { + for _, a := range list { content.WriteString(a) content.WriteString("\n") }