From b973eddd2830fb4743e0e69d026eafbb97a40c79 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C3=A9ter=20Szil=C3=A1gyi?= <peterke@gmail.com>
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 53b07dbba..526ea35c2 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -122,7 +122,6 @@ Gus <yo@soygus.com>
 Gustav Simonsson <gustav.simonsson@gmail.com>
 Gísli Kristjánsson <gislik@hamstur.is>
 Ha ĐANG <dvietha@gmail.com>
-hackyminer <hackyminer@gmail.com>
 HackyMiner <hackyminer@gmail.com>
 hadv <dvietha@gmail.com>
 Hao Bryan Cheng <haobcheng@gmail.com>
@@ -257,7 +256,6 @@ Paul Litvak <litvakpol@012.net.il>
 Paulo L F Casaretto <pcasaretto@gmail.com>
 Paweł Bylica <chfast@gmail.com>
 Pedro Pombeiro <PombeirP@users.noreply.github.com>
-Pedro Pombeiro <pombeirp@users.noreply.github.com>
 Peter Broadhurst <peter@themumbles.net>
 Peter Pratscher <pratscher@gmail.com>
 Petr Mikusek <petr@mikusek.info>
diff --git a/build/update-license.go b/build/update-license.go
index 1bad7585d..aa4d6100d 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")
 	}
-- 
GitLab