jenkins-bot has submitted this change and it was merged.

Change subject: Convert CREDITS to list of all known git contributors
......................................................................


Convert CREDITS to list of all known git contributors

* Add an updateCredits.php script that will merge the existing
  contributors list with a list generated using git-log.
* Update the existing .mailmap file to de-duplicate author list
* Update CREDITS using updateCredits.php

Bug: T139300
Change-Id: If00ae955c8026d6be38575f3766a06c46e5e7126
---
M .mailmap
M CREDITS
A maintenance/updateCredits.php
3 files changed, 639 insertions(+), 39 deletions(-)

Approvals:
  Legoktm: Looks good to me, approved
  Jdlrobson: Looks good to me, but someone else must approve
  jenkins-bot: Verified



diff --git a/.mailmap b/.mailmap
index 5c82af8..6d9f8e8 100644
--- a/.mailmap
+++ b/.mailmap
@@ -1,30 +1,62 @@
+# Map author and committer names and email addresses to canonical real names
+# and email addresses.
+#
+# To update the CREDITS file, run maintenance/updateCredits.php
+#
+# Two types of entries are useful here. The first sets a cannonical author
+# name for a given email address:
+#
+#   Cannonical Author Name <author email>
+#
+# The second allows collecting alternate email addresses into a single
+# cannonical author name and email address:
+#
+#   Cannonical Author Name <author email> <alternate email>
+#
+# Mappings are only needed for authors who have used multiple author names
+# and/or author emails for revisions over time. Author names begenning with
+# "[BOT]" will be omitted from the CREDITS file.
+#
+# See also: https://git-scm.com/docs/git-shortlog#_mapping_authors
+#
+[BOT] Gerrit Code Review <ger...@wikimedia.org>
 [BOT] Gerrit Patch Uploader <gerritpatchuploa...@gmail.com>
+[BOT] jenkins-bot <jenkins-...@gerrit.wikimedia.org>
+[BOT] jenkins-bot <jenkins-...@gerrit.wikimedia.org> 
<jenkins-...@wikimedia.org>
 [BOT] Translation updater bot <l10n-...@translatewiki.net>
 Aaron Schulz <asch...@wikimedia.org>
 Aaron Schulz <asch...@wikimedia.org> <aa...@users.mediawiki.org>
 Adam Roses Wight <awi...@wikimedia.org>
+Adam Roses Wight <awi...@wikimedia.org> <s...@ludd.net>
 addshore <addshorew...@gmail.com>
+Aditya Sastry <ganeshadit...@gmail.com>
 Adrian Heine <adrian.he...@wikimedia.de>
-Alex Monk <kren...@gmail.com>
-Alex Monk <kren...@gmail.com> <kren...@wikimedia.org>
-Alex Z <mrzmanw...@gmail.com> <mrz...@users.mediawiki.org>
+Alex Z. <mrzmanw...@gmail.com> <mrz...@users.mediawiki.org>
 Alexander Emsenhuber <ialex.w...@gmail.com>
 Alexander Emsenhuber <ialex.w...@gmail.com> <ia...@users.mediawiki.org>
 Alexander Emsenhuber <ialex.w...@gmail.com> <mediaw...@emsenhuber.ch>
+Alexander Monk <kren...@gmail.com>
+Alexander Monk <kren...@gmail.com> <a...@wikimedia.org>
+Alexander Monk <kren...@gmail.com> <kren...@wikimedia.org>
 Alexia E. Smith <was...@gmail.com>
 Amir E. Aharoni <amir.ahar...@mail.huji.ac.il>
 Amir E. Aharoni <amir.ahar...@mail.huji.ac.il> <amir...@users.mediawiki.org>
+Amir Sarabadani <ladsgr...@gmail.com> <ladsgr...@gmail.com>
 Anders Wegge Jakobsen <awe...@gmail.com> <we...@users.mediawiki.org>
 Andre Engels <andreeng...@gmail.com> <a_eng...@users.mediawiki.org>
+Andrew Garrett <agarr...@wikimedia.org>
 Andrew Garrett <agarr...@wikimedia.org> <wer...@users.mediawiki.org>
 Angela Beesley Starling <w...@nge.la> <ange...@users.mediawiki.org>
 Antoine Musso <has...@free.fr>
 Antoine Musso <has...@free.fr> <has...@users.mediawiki.org>
 Aran Dunkley <a...@organicdesign.co.nz> <n...@users.mediawiki.org>
 Ariel Glenn <ar...@wikimedia.org> <ar...@users.mediawiki.org>
+Ariel Glenn <ar...@wikimedia.org> <ar...@wikimedia.org>
 Arlo Breault <abrea...@wikimedia.org>
+Arthur Richards <aricha...@wikimedia.org>
 Arthur Richards <aricha...@wikimedia.org> <awjricha...@users.mediawiki.org>
 Aryeh Gregor <simetrical...@gmail.com> <simetri...@users.mediawiki.org>
+Asher Feldman <afeld...@wikimedia.org>
 Asher Feldman <afeld...@wikimedia.org> <as...@users.mediawiki.org>
 aude <aude.w...@gmail.com>
 Audrey Tang <audr...@audreyt.org>
@@ -32,25 +64,30 @@
 ayush_garg <ayush.c...@iitp.ac.in>
 Bahodir Mansurov <bmansu...@wikimedia.org>
 Bartosz Dziewoński <matma....@gmail.com>
-Bartosz Dziewoński <matma....@gmail.com> <matma...@wikimedia.org>
 Bartosz Dziewoński <matma....@gmail.com> <bdziewon...@wikimedia.org>
+Bartosz Dziewoński <matma....@gmail.com> <matma...@wikimedia.org>
 Ben Hartshorne <bhartsho...@wikimedia.org> <b...@users.mediawiki.org>
 Bene <benestar.wikime...@gmail.com>
-Benjamin Lees <emufarm...@gmail.com> <emufarm...@users.mediawiki.org>
+Bene <benestar.wikime...@gmail.com> <benestar.wikime...@googlemail.com>
+Benny Situ <bs...@wikimedia.org>
 Benny Situ <bs...@wikimedia.org> <bs...@users.mediawiki.org>
 Bertrand Grondin <bertrand.gron...@tiscali.fr> <gron...@users.mediawiki.org>
 Brad Jorsch <bjor...@wikimedia.org>
+Brad Jorsch <bjor...@wikimedia.org> <anomie.wikipe...@gmail.com>
 Brandon Harris <bhar...@wikimedia.org> <bhar...@users.mediawiki.org>
-Brian Wolff <bawolff+...@gmail.com> <bawo...@users.mediawiki.org>
 Brian Wolff <bawolff...@gmail.com>
+Brian Wolff <bawolff...@gmail.com> <bawolff+...@gmail.com>
+Brian Wolff <bawolff...@gmail.com> <bawo...@users.mediawiki.org>
 Brion Vibber <br...@wikimedia.org>
 Brion Vibber <br...@wikimedia.org> <br...@pobox.com>
 Brion Vibber <br...@wikimedia.org> <br...@users.mediawiki.org>
 Bryan Davis <bd...@wikimedia.org>
+Bryan Davis <bd...@wikimedia.org> <bd...@bd808.com>
+Bryan Tong Minh <bryan.tongm...@gmail.com>
 Bryan Tong Minh <bryan.tongm...@gmail.com> <btongm...@users.mediawiki.org>
 C. Scott Ananian <csc...@cscott.net>
 C. Scott Ananian <csc...@cscott.net> <canan...@wikimedia.org>
-cacy...@gerrit.wikimedia.org <cacycl...@gmail.com>
+Cacycle <cacycl...@gmail.com>
 cenarium <cenarium.sy...@gmail.com>
 Chad Horohoe <ch...@wikimedia.org>
 Chad Horohoe <ch...@wikimedia.org> <de...@users.mediawiki.org>
@@ -58,44 +95,64 @@
 Chiefwei <chiefwei1...@gmail.com>
 Chris McMahon <cmcma...@wikimedia.org>
 Chris Steipp <cste...@wikimedia.org>
-Christian Aistleitner <christ...@quelltextlich.at> <qch...@users.mediawiki.org>
 Christian Aistleitner <christ...@quelltextlich.at>
+Christian Aistleitner <christ...@quelltextlich.at> <qch...@users.mediawiki.org>
 Christian Williams <or...@framezero.com>
 Christian Williams <or...@framezero.com> <christian@localhost>
 Christian Williams <or...@framezero.com> <christ...@wikia-inc.com>
+Christopher Johnson <r...@bugzilla.wmde.de>
+church of emacs <churchofem...@users.mediawiki.org>
+Cindy Cicalese <cical...@mitre.org>
 ckoerner <nob...@gmail.com>
 Conrad Irwin <conrad.irwin+w...@gmail.com> <con...@users.mediawiki.org>
 Dan Duvall <dduv...@wikimedia.org>
 dan-nl <d_ent...@yahoo.com>
 Daniel A. R. Werner <daniel.a.r.wer...@gmail.com>
 Daniel Cannon <cannon.dani...@gmail.com> <amidan...@users.mediawiki.org>
+Daniel Friesen <mediaw...@danielfriesen.name>
+Daniel Friesen <mediaw...@danielfriesen.name> <dan...@nadir-seen-fire.com>
 Daniel Friesen <mediaw...@danielfriesen.name> <dant...@users.mediawiki.org>
+Daniel Friesen <mediaw...@danielfriesen.name> <pub-git...@nadir-seen-fire.com>
 Daniel Kinzler <daniel.kinz...@wikimedia.de>
 Daniel Kinzler <daniel.kinz...@wikimedia.de> <dan...@users.mediawiki.org>
-Danny B <wikipedia.dann...@email.cz> <dann...@users.mediawiki.org>
+Danny B. <wikipedia.dann...@email.cz>
+Danny B. <wikipedia.dann...@email.cz> <dann...@email.cz>
+Danny B. <wikipedia.dann...@email.cz> <dann...@users.mediawiki.org>
+Danny B. <wikipedia.dann...@email.cz> <wikimedia.dann...@email.cz>
+Darian Anthony Patrick <dpatr...@wikimedia.org>
+Darkdragon09 <ubu...@ip-172-31-39-38.us-west-2.compute.internal>
 David Chan <da...@sheetmusic.org.uk>
+Dereckson <dereck...@espace-win.org>
+Derk-Jan Hartman <hart...@videolan.org>
+Derk-Jan Hartman <hart...@videolan.org> <hartman.w...@gmail.com>
 Derk-Jan Hartman <hart...@videolan.org> <hart...@users.mediawiki.org>
-Derk-Jan Hartman <hartman.w...@gmail.com>
 Diederik van Liere <dvanli...@gmail.com> <diede...@users.mediawiki.org>
 Domas Mituzas <domas.mitu...@gmail.com> <mi...@users.mediawiki.org>
 Douglas Gardner <doug...@chippy.ch>
 DPStokesNZ <duncan.sto...@gmail.com>
 Ebrahim Byagowi <ebra...@gnu.org>
 Ed Sanders <esand...@wikimedia.org>
-Elliott Eggleston <ej...@ejegg.com>
+Elliott Eggleston <eeggles...@wikimedia.org>
+Elliott Eggleston <eeggles...@wikimedia.org> <ej...@ejegg.com>
 Emmanuel Engelhart <kel...@kiwix.org> <kelso...@users.mediawiki.org>
-eranroz <eranro...@gmail.com>
+Emufarmers <emufarm...@gmail.com>
+Emufarmers <emufarm...@gmail.com> <emufarm...@users.mediawiki.org>
+Entlinkt <entli...@gmx-topmail.de>
+Eranroz <eranro...@gmail.com>
 Erik Bernhardson <ebernhard...@wikimedia.org>
 Erik Moeller <e...@wikimedia.org>
 Erik Moeller <e...@wikimedia.org> <e...@users.mediawiki.org>
 Erwin Dokter <er...@darcoury.nl>
 Evan McIntire <mcintire.e...@gmail.com>
+Evan Prodromou <evanprodro...@users.mediawiki.org> <e...@users.mediawiki.org>
 Federico Leva <federicol...@tiscali.it>
 Fenzik Joseph <fen...@gmail.com> <fen...@users.mediawiki.org>
-Florianschmidtwelzow <florian.schmidt.wel...@t-online.de> 
<florian.schmidt.stargatewis...@gmail.com>
-Florianschmidtwelzow <florian.schmidt.wel...@t-online.de> Florian 
<florian.schmidt.wel...@t-online.de>
-Fomafix <foma...@googlemail.com>
+Florian Schmidt <florian.schmidt.wel...@t-online.de>
+Florian Schmidt <florian.schmidt.wel...@t-online.de> 
<florian.schmidt.stargatewis...@gmail.com>
+fomafix <foma...@googlemail.com>
+Fran Rogers <f...@dumetella.net>
 Fran Rogers <f...@dumetella.net> <krim...@users.mediawiki.org>
+freakolowsky <fr...@drajv.si>
 FunPika <funpikaw...@gmail.com>
 Gabriel Wicke <gwi...@wikimedia.org>
 Gabriel Wicke <gwi...@wikimedia.org> <gwi...@users.mediawiki.org>
@@ -110,31 +167,38 @@
 Greg Sabino Mullane <g...@turnstep.com>
 Greg Sabino Mullane <g...@turnstep.com> <g...@endpoint.com>
 Greg Sabino Mullane <g...@turnstep.com> <g...@users.mediawiki.org>
+Grunny <mwgru...@gmail.com>
 Guy Van den Broeck <guy...@gmail.com> <guy...@users.mediawiki.org>
 Happy-melon <happy-me...@live.com> <happy-me...@users.mediawiki.org>
 Helder <he7...@gmail.com>
 Helder <he7...@gmail.com> <helder.w...@gmail.com>
 Hoo man <h...@online.de>
+Huji <huji.h...@gmail.com>
 Huji <huji.h...@gmail.com> <h...@users.mediawiki.org>
 Ian Baker <iba...@wikimedia.org> <raindr...@users.mediawiki.org>
 Ilmari Karonen <nos...@vyznev.net> <vyz...@users.mediawiki.org>
 Inez Korczyński <i...@wikia-inc.com>
 Inez Korczyński <i...@wikia-inc.com> <i...@users.mediawiki.org>
 isarra <s...@zaori.org>
+isarra <s...@zaori.org> <zhoris...@gmail.com>
 Ivan Lanin <ivanla...@gmail.com> <ivanla...@users.mediawiki.org>
-Jack Phoenix <j...@countervandalism.net> <ash...@users.mediawiki.org>
 Jack Phoenix <j...@countervandalism.net>
+Jack Phoenix <j...@countervandalism.net> <ash...@users.mediawiki.org>
 Jackmcbarn <jackmcb...@gmail.com>
-Jackmcbarn <jackmcb...@users.noreply.github.com>
+Jackmcbarn <jackmcb...@gmail.com> <jackmcb...@users.noreply.github.com>
 jagori <jagor...@gmail.com>
-James D. Forrester <jforres...@wikimedia.org>
+James Forrester <jforres...@wikimedia.org>
 Jan Gerber <j...@thing.net> <j...@users.mediawiki.org>
+Jan Luca Naumann <j...@jans-seite.de>
 Jan Luca Naumann <j...@jans-seite.de> <j...@users.mediawiki.org>
 Jan Paul Posma <jp.po...@gmail.com> <janpaul...@users.mediawiki.org>
 Jan Zerebecki <jan.wikime...@zerebecki.de>
+Jared Flores <jaredflores2...@gmail.com>
 Jaroslav Škarvada <jskar...@redhat.com>
 jarrettmunton <jmuntjm...@gmail.com>
+Jason Richey <jas...@wikia.com>
 Jason Richey <jas...@wikia.com> <jas...@users.mediawiki.org>
+Jason Richey <jas...@wikia.com> <urich...@users.mediawiki.org>
 Jeff Hall <jeffreyeh...@gmail.com>
 Jeff Hall <jeffreyeh...@gmail.com> <jh...@wikimedia.org>
 Jeff Janes <jeff.ja...@gmail.com>
@@ -151,40 +215,58 @@
 Juliusz Gonera <jgon...@gmail.com>
 Juliusz Gonera <jgon...@gmail.com> <jgon...@wikimedia.org>
 JuneHyeon Bae <dev...@gmail.com>
+Jure Kajzer <fr...@drajv.si>
 Jure Kajzer <fr...@drajv.si> <freakolow...@users.mediawiki.org>
+Karun Dambiec <karun...@gmx.de>
+Katie Filbert <aude.w...@gmail.com>
 Katie Filbert <aude.w...@gmail.com> <a...@users.mediawiki.org>
 Kevin Israel <pleasest...@live.com>
-Kunal Mehta <lego...@gmail.com>
-Kunal Mehta <lego...@gmail.com> <legoktm.wikipe...@gmail.com>
+Kunal Grover <kunalgrove...@gmail.com>
+Kunal Mehta <lego...@member.fsf.org>
+Kunal Mehta <lego...@member.fsf.org> <legoktm.wikipe...@gmail.com>
+Kunal Mehta <lego...@member.fsf.org> <lego...@gmail.com>
 Kwan Ting Chan <k...@ktchan.info> <ktc...@users.mediawiki.org>
 lekshmi <andnlnb...@gmail.com>
 Leo Koppelkamm <diebu...@gmail.com> <diebu...@users.mediawiki.org>
+Leon Liesener <leon.liese...@wikipedia.de>
 Leon Weber <l...@vserver152.masterssystems.com> <l...@users.mediawiki.org>
 Leonardo Gregianin <leogregia...@googlemail.com> 
<leogregia...@users.mediawiki.org>
 Leons Petrazickis 
<leons.petrazickis.haveyouconsiderednotincludingthisphr...@gmail.com> 
<leo...@users.mediawiki.org>
-Liangent <liang...@gmail.com>
+liangent <liang...@gmail.com>
 Lisa Ridley <lhrid...@gmail.com> <lhrid...@users.mediawiki.org>
 Ljudusika <plo2...@i.ua>
 Luis Felipe Schenone <scheno...@gmail.com>
+Lupo <lupo.bugzi...@gmail.com>
 m4tx <m...@m4tx.pl>
+Madman <madman.enw...@gmail.com>
 Magnus Manske <magnusman...@googlemail.com> <magnusman...@users.mediawiki.org>
 Manuel Schneider <manuel.schnei...@wikimedia.ch> <80...@users.mediawiki.org>
+Marc-André Pelletier <m...@uberbox.org>
+Marcin Cieślak <sa...@saper.info>
 Marcin Cieślak <sa...@saper.info> <sa...@users.mediawiki.org>
+Marco Falke <mai...@live.de>
+MarcoAurelio <strig...@gmail.com>
 Marielle Volz <marielle.v...@gmail.com>
 Marius Hoch <h...@online.de>
-Mark A. Hershberger <m...@everybody.org>
-Mark A. Hershberger <m...@everybody.org> <m...@nichework.com>
-Mark A. Hershberger <m...@everybody.org> <m...@users.mediawiki.org>
 Mark Clements <mediaw...@kennel17.co.uk> <happy...@users.mediawiki.org>
+Mark Hershberger <m...@everybody.org>
+Mark Hershberger <m...@everybody.org> <m...@nichework.com>
+Mark Hershberger <m...@everybody.org> <m...@users.mediawiki.org>
+Mark Hershberger <m...@everybody.org> <mhershber...@wikimedia.org>
 Mark Holmquist <mtrac...@member.fsf.org>
+Mark Holmquist <mtrac...@member.fsf.org> <mholmqu...@wikimedia.org>
 Marko Obrovac <mobro...@wikimedia.org>
+Markus Glaser <gla...@hallowelt.biz>
+Markus Glaser <gla...@hallowelt.biz> <mgla...@users.mediawiki.org>
 Matt Johnston <ma...@emazestudios.com> <ma...@users.mediawiki.org>
 Matthew Britton <hugglegu...@gmail.com> <gu...@users.mediawiki.org>
 Matthew Flaschen <mflasc...@wikimedia.org>
 Matthias Mullie <g...@mullie.eu>
+Matthias Mullie <g...@mullie.eu> <mmul...@wikimedia.org>
 Matěj Grabovský <mgrabov...@yahoo.com> <mgrabov...@users.mediawiki.org>
 Max Semenik <maxsem.w...@gmail.com>
 Max Semenik <maxsem.w...@gmail.com> <max...@users.mediawiki.org>
+Max Semenik <maxsem.w...@gmail.com> <seme...@gmail.com>
 mgooley <g00...@gmail.com>
 Michael Dale <md...@wikimedia.org> <d...@users.mediawiki.org>
 mjbmr <mjb...@gmail.com>
@@ -192,23 +274,30 @@
 Moriel Schottlender <mschottlen...@wikimedia.org>
 Moriel Schottlender <mschottlen...@wikimedia.org> <mor...@gmail.com>
 Mormegil <morme...@centrum.cz>
+MrBlueSky <mrblue...@wikipedia.be>
+MrBlueSky <mrblue...@wikipedia.be> <mrbluesky@localhost>
 Mukunda Modell <mmod...@wikimedia.org>
+Mwalker <mwal...@wikimedia.org>
 MZMcBride <g...@mzmcbride.com>
 nadeesha <nadee...@calcey.com> <nadee...@users.mediawiki.org>
 Namit <namit.o...@gmail.com>
 Nathaniel Herman <redw...@yahoo.com> <pi...@users.mediawiki.org>
 Neil Kandalgaonkar <ne...@wikimedia.org> <ne...@users.mediawiki.org>
 Nemo bis <federicol...@tiscali.it>
-Nephele <neph...@skyhighway.com> <neph...@users.mediawiki.org>
+nephele <neph...@skyhighway.com> <neph...@users.mediawiki.org>
 Nick Jenkins <nic...@gmail.com> <ni...@users.mediawiki.org>
 Nik Everett <never...@wikimedia.org>
 Niklas Laxström <niklas.laxst...@gmail.com>
 Niklas Laxström <niklas.laxst...@gmail.com> <nikerab...@users.mediawiki.org>
 Nimish Gautam <nimi...@wikimedia.org> <nimi...@users.mediawiki.org>
 Nuria Ruiz <nu...@wikimedia.org>
-Ori.livneh <o...@wikimedia.org>
+Ori Livneh <o...@wikimedia.org>
+Ori Livneh <o...@wikimedia.org> <ori.liv...@gmail.com>
 OverlordQ <wikipe...@thedarkcitadel.com> <overlo...@users.mediawiki.org>
+Owen Davis <o...@wikia-inc.com>
+Owen Davis <o...@wikia-inc.com> <o...@users.mediawiki.org>
 paladox <thomasmulhall...@yahoo.com>
+Patrick Reilly <prei...@wikimedia.org>
 Patrick Reilly <prei...@wikimedia.org> <prei...@users.mediawiki.org>
 Patrick Westerhoff <patrickwesterh...@gmail.com>
 Paul Copperman <paul.copper...@gmail.com> <pc...@users.mediawiki.org>
@@ -223,9 +312,9 @@
 Prateek Saxena <psax...@wikimedia.org>
 Prateek Saxena <psax...@wikimedia.org> <prtks...@gmail.com>
 Priyanka Dhanda <pdha...@wikimedia.org> <pdha...@users.mediawiki.org>
-Purodha B Blissenbach <puro...@blissenbach.org>
-Purodha B Blissenbach <puro...@blissenbach.org> <puro...@users.mediawiki.org>
-Purodha B Blissenbach <puro...@blissenbach.org> <pu...@web.de>
+Purodha Blissenbach <puro...@blissenbach.org>
+Purodha Blissenbach <puro...@blissenbach.org> <pu...@web.de>
+Purodha Blissenbach <puro...@blissenbach.org> <puro...@users.mediawiki.org>
 Raimond Spekking <raimond.spekk...@gmail.com>
 Raimond Spekking <raimond.spekk...@gmail.com> <raym...@users.mediawiki.org>
 Remember the dot <rememberthe...@gmail.com> 
<rememberthe...@users.mediawiki.org>
@@ -233,13 +322,15 @@
 Ricordisamoa <ricordisa...@openmailbox.org>
 rillke <ril...@wikipedia.de>
 rillke <ril...@wikipedia.de> <rainerril...@hotmail.com>
-River Tarnell <ri...@wikimedia.org> <ri...@users.mediawiki.org>
 River Tarnell <ri...@wikimedia.org> <katetur...@users.mediawiki.org>
+River Tarnell <ri...@wikimedia.org> <ri...@users.mediawiki.org>
 Roan Kattouw <roan.katt...@gmail.com>
 Roan Kattouw <roan.katt...@gmail.com> <catr...@users.mediawiki.org>
 Roan Kattouw <roan.katt...@gmail.com> <r...@wikimedia.org>
 Rob Church <robc...@gmail.com> <robchu...@users.mediawiki.org>
+Rob Lanphier <ro...@robla.net>
 Rob Lanphier <ro...@robla.net> <ro...@users.mediawiki.org>
+Rob Lanphier <ro...@robla.net> <ro...@wikimedia.org>
 Rob Moen <rm...@mediawiki.org>
 Rob Moen <rm...@mediawiki.org> <rm...@users.mediawiki.org>
 Rob Moen <rm...@mediawiki.org> <rm...@wikimedia.org>
@@ -247,24 +338,30 @@
 Robert Leverington <rob...@rhl.me.uk> <rober...@users.mediawiki.org>
 Robert Rohde <raro...@gmail.com> <raro...@users.mediawiki.org>
 Robert Stojnić <rainma...@gmail.com> <rain...@users.mediawiki.org>
+Robin Pepermans <robinp.1...@gmail.com>
 Robin Pepermans <robinp.1...@gmail.com> <ro...@users.mediawiki.org>
 robinhood701 <robinhoo...@live.ca>
 Rohan <rohan1...@yahoo.com>
 Rotem Liss <roteml...@gmail.com> <ro...@users.mediawiki.org>
 Rummana Yasmeen <ryasm...@wikimedia.org>
 Russ Nelson <russnel...@gmail.com> <nel...@users.mediawiki.org>
-Ryan Kaldari <rkald...@wikimedia.org> <kald...@users.mediawiki.org>
 Ryan Kaldari <rkald...@wikimedia.org>
 Ryan Kaldari <rkald...@wikimedia.org> <kald...@gmail.com>
+Ryan Kaldari <rkald...@wikimedia.org> <kald...@users.mediawiki.org>
+Ryan Lane <rlan...@gmail.com>
 Ryan Lane <rlan...@gmail.com> <la...@users.mediawiki.org>
+Ryan Lane <rlan...@gmail.com> <rl...@wikimedia.org>
+Ryan Schmidt <skizz...@gmail.com>
+Ryan Schmidt <skizz...@gmail.com> <skizz...@skizzerz.net>
 Ryan Schmidt <skizz...@gmail.com> <skizz...@users.mediawiki.org>
 S Page <sp...@wikimedia.org>
 Sam Reed <re...@wikimedia.org>
+Sam Reed <re...@wikimedia.org> <Reedy re...@wikimedia.org>
+Sam Reed <re...@wikimedia.org> <re...@formey.wikimedia.org>
 Sam Reed <re...@wikimedia.org> <re...@users.mediawiki.org>
 Sam Smith <g...@samsmith.io>
-Santhosh Thottingal <santhosh.thottin...@gmail.com> 
<santh...@users.mediawiki.org>
 Santhosh Thottingal <santhosh.thottin...@gmail.com>
-saper <sa...@saper.info>
+Santhosh Thottingal <santhosh.thottin...@gmail.com> 
<santh...@users.mediawiki.org>
 Schnark <listenle...@gmail.com>
 Scimonster <tehalmightyscimons...@gmail.com>
 Sean Colombo <sean.colo...@gmail.com> <sean_colo...@users.mediawiki.org>
@@ -272,11 +369,14 @@
 Seb35 <seb35wikipe...@gmail.com>
 Sergio Santoro <santoro....@gmail.com>
 Shahyar <shah...@gmail.com>
+Shinjiman <shinji...@gmail.com>
 Shinjiman <shinji...@gmail.com> <shinji...@users.mediawiki.org>
 Siebrand Mazeland <s.mazel...@xs4all.nl>
 Siebrand Mazeland <s.mazel...@xs4all.nl> <siebr...@kitano.nl>
 Siebrand Mazeland <s.mazel...@xs4all.nl> <siebr...@users.mediawiki.org>
 Siebrand Mazeland <s.mazel...@xs4all.nl> <siebr...@wikimedia.org>
+Smriti Singh <smritis.31...@gmail.com>
+Sorawee Porncharoenwase <nullzero.f...@gmail.com>
 Southparkfan <southparkfan...@hotmail.com>
 SQL <sxw...@gmail.com> <s...@users.mediawiki.org>
 Stanislav Malyshev <smalys...@gmail.com>
@@ -288,9 +388,10 @@
 Subramanya Sastry <ssas...@wikimedia.org>
 Sucheta Ghoshal <sghos...@wikimedia.org>
 Sumit Asthana <asthana.sumi...@gmail.com>
+Swalling <swall...@wikimedia.org>
 Thalia Chan <tha...@cantorion.org>
-TheDJ <hartman.w...@gmail.com>
 Thiemo Mättig (WMDE) <thiemo.maet...@wikimedia.de>
+Thiemo Mättig (WMDE) <thiemo.maet...@wikimedia.de> <mr.h...@gmx.de>
 This, that and the other <at.li...@live.com.au>
 tholam <t....@lamsinfosystem.com>
 Thomas Bleher <thomasble...@gmx.de> <tble...@users.mediawiki.org>
@@ -305,29 +406,45 @@
 Timo Tijhof <krinklem...@gmail.com> <t...@wikimedia.org>
 Timo Tijhof <krinklem...@gmail.com> <ttij...@wikimedia.org>
 Tina Johnson <tinajohnson.1...@gmail.com>
+Tisane <nathanlarson3...@gmail.com>
+Tjones <tjo...@wikimedia.org>
 Tom Maaswinkel <tom.maaswin...@12wiki.eu> <thedevilonl...@users.mediawiki.org>
 Tomasz Finc <tf...@wikimedia.org> <tom...@users.mediawiki.org>
+Tomasz W. Kozlowski <tom...@twkozlowski.com>
+Tomasz W. Kozlowski <tom...@twkozlowski.com> <tom...@twkozlowski.net>
+Tomasz W. Kozlowski <tom...@twkozlowski.com> <twkozlow...@gmail.com>
 Tony Thomas <01tonytho...@gmail.com>
+Tpt <thoma...@hotmail.fr>
 Trevor Parscal <trevorpars...@gmail.com>
 Trevor Parscal <trevorpars...@gmail.com> <tpars...@users.mediawiki.org>
 Trevor Parscal <trevorpars...@gmail.com> <tpars...@wikimedia.org>
 Tyler Cipriani <tcipri...@wikimedia.org>
 Tyler Romeo <tylerro...@gmail.com>
-umherirrender <umherirrender_de...@web.de>
+Umherirrender <umherirrender_de...@web.de>
+Victor Vasiliev <vasi...@mit.edu>
 Victor Vasiliev <vasi...@mit.edu> <vasilie...@users.mediawiki.org>
+Victor Vasiliev <vasi...@mit.edu> <vasi...@gmail.com>
 Vikas S Yaligar <vikasyaligar...@gmail.com>
 Vivek Ghaisas <v.a.ghai...@gmail.com>
 wctaiwan <wctai...@gmail.com>
 withoutaname <drevit...@gmail.com>
 X! <soxre...@gmail.com> <soxre...@users.mediawiki.org>
+Yaron Koren <yaro...@gmail.com>
+Yaron Koren <yaro...@gmail.com> <ya...@users.mediawiki.org>
 Yaroslav Melnychuk <yaroslavmelnuc...@gmail.com>
+Yongmin Hong <r...@member.fsf.org>
+Yongmin Hong <r...@member.fsf.org> <r...@pobox.com>
+Yongmin Hong <r...@member.fsf.org> <reviw...@gmail.com>
 Yuri Astrakhan <yu...@wikimedia.org>
+Yuri Astrakhan <yu...@wikimedia.org> <yuriastrak...@gmail.com>
 Yuri Astrakhan <yu...@wikimedia.org> <yu...@users.mediawiki.org>
 Yusuke Matsubara <w...@whym.org>
-YuviPanda <yuvipa...@gmail.com>
+Yuvi Panda <yuvipa...@gmail.com>
 Zak Greant <zak+mediaw...@fooassociates.com> <z...@users.mediawiki.org>
-Ævar Arnfjörð Bjarmason <ava...@gmail.com> <a...@users.mediawiki.org>
-Željko Filipin <zeljko.fili...@gmail.com>
-Željko Filipin <zeljko.fili...@gmail.com> <zfili...@wikimedia.org>
 Zhengzhu Feng <zheng...@gmail.com>
 Zhengzhu Feng <zheng...@gmail.com> <zheng...@users.mediawiki.org>
+Zppix <supp...@zppixballee.com>
+Ævar Arnfjörð Bjarmason <ava...@gmail.com> <a...@users.mediawiki.org>
+Étienne Beaulé <beauleetien...@gmail.com>
+Željko Filipin <zeljko.fili...@gmail.com>
+Željko Filipin <zeljko.fili...@gmail.com> <zfili...@wikimedia.org>
diff --git a/CREDITS b/CREDITS
index 30ebc9e..1c1cf87 100644
--- a/CREDITS
+++ b/CREDITS
@@ -7,249 +7,655 @@
 <!-- Please notice that the following can be found parsed under 
Special:Version/Credits -->
 
 == Contributors ==
+<!-- Updates to this list made with maintenance/updateCredits.php -->
 <!-- BEGIN CONTRIBUTOR LIST -->
+* aalekhN
 * Aaron Ball
 * Aaron Pramana
 * Aaron Schulz
+* Aarti Dwivedi
+* Aashaka Shah
+* abhinand
+* Abhishek Das
+* Adam Miller
+* Adam Roses Wight
+* addshore
+* Aditya Sastry
+* Adrian Heine
+* Adrian Lang
+* Ævar Arnfjörð Bjarmason
 * Agbad
 * Ahmad Sherif
+* Ajayrahul P
+* Alangi Derick
+* Albert221
 * Alejandro Mery
+* AlephNull
+* Alex Ivanov
+* Alex Shih-Han Lin
 * Alex Z.
+* Alexander Emsenhuber
+* Alexander I. Mashin
+* Alexander Lehmann
 * Alexander Monk
+* Alexander Sigachov
 * Alexandre Emsenhuber
+* Alexia E. Smith
 * Amalthea
 * Amir E. Aharoni
+* Amir Sarabadani
+* ananay
+* Anders Wegge Jakobsen
+* Andre Engels
+* Andrew Bogott
 * Andrew Dunbar
 * Andrew Garrett
+* Andrew Green
+* Andrew H
+* Andrew Harris
+* Andrew Otto
+* Andrius R
+* andymw
+* Angela Beesley Starling
+* ankur
 * Antoine Musso
 * Antonio Ospite
+* apexkid
+* April King
+* Aran Dunkley
+* Arash Boostani
+* Arcane21
+* Ariel Glenn
+* Arlo Breault
+* Arne Heizmann
 * Arthur Richards
 * Aryeh Gregor
+* Asher Feldman
 * Asier Lostalé
+* ayush_garg
 * Azliq7
 * Bagariavivek
+* Bahodir Mansurov
+* balloonguy
 * Bartosz Dziewoński
 * Beau
+* Ben Davis
+* Ben Hartshorne
+* Bene
 * Benny Situ
 * Bergi
 * Bertrand Grondin
+* Bill Traynor
+* Billinghurst
+* billm
+* blotmandroid
+* Bogdan Stancescu
+* Boris Nagaev
 * Borislav Manolov
 * Brad Jorsch
+* Brandon Black
+* Brandon Harris
 * Brent G
+* Brent Garber
 * Brian Wolff
 * Brianna Laugher
 * Brion Vibber
 * Bryan Davis
 * Bryan Tong Minh
+* burthsceh
+* C. Scott Ananian
+* Cacycle
+* Calak
+* Camille Constans
+* Carl Fürstenberg
 * Carlin
 * Carsten Nielsen
+* Cblair91
+* cenarium
 * Chad Horohoe
 * Charles Melbye
+* Chiefwei
+* Chris McMahon
+* Chris Seaton
 * Chris Steipp
 * Christian Aistleitner
+* Christian List
 * Christian Neubauer
+* Christopher Johnson
 * church of emacs
+* Cindy Cicalese
+* ckoerner
 * Conrad Irwin
 * cryptocoryne
 * Dan Barrett
 * Dan Collins
+* Dan Duvall
 * Dan Nessett
+* Dan Poltawski
+* dan-nl
+* Daniel A. R. Werner
 * Daniel Arnold
+* Daniel Cannon
+* Daniel De Marco
+* Daniel Evans
 * Daniel Friesen
 * Daniel Kinzler
 * Daniel Renfro
 * Daniel Werner
+* DanielRenfro
 * Danny B.
+* Darian Anthony Patrick
+* Darkdragon09
+* DaSch
 * David Baumgarten
+* David Chan
+* David E. Narváez
+* David Lynch
 * David McCabe
+* David Mudrák
+* dcausse
+* dennisroczek
 * Denny Vrandecic
+* Dereckson
 * Derk-Jan Hartman
+* Derric Atzrott
+* Derrick Coetzee
 * Dévai Tamás
+* Devi Krishnan
+* Diederik van Liere
 * Domas Mituzas
+* Douglas Gardner
+* DPStokesNZ
+* dr0ptp4kt
 * Ebrahim Byagowi
+* Ed Sanders
+* Edward Chernenko
 * Edward Z. Yang
+* Elisabeth Bauer
+* Elliott Eggleston
 * Elvis Stansvik
+* Emil Podlaszewski
+* Emmanuel Engelhart
+* Emmanuel Gil Peyrot
+* Emmet Hikory
 * Emufarmers
+* enigmaeth
+* Entlinkt
 * Eranroz
+* Eric Evans
+* Eric Schneider
+* Erich Lerch
+* Erick Guan
+* Erik Bernhardson
+* Erik Moeller
 * Erwin Dokter
 * Étienne Beaulé
+* Evan McIntire
+* Evan Prodromou
+* ExplosiveHippo
+* Faidon Liambotis
 * Federico Leva
+* Fenzik Joseph
+* firebus
 * Florian Schmidt
 * fomafix
 * Fran Rogers
+* Fred Emmott
 * FunPika
 * Gabriel Wicke
+* Gary Guo
+* gbt248
 * Geoffrey Mon
+* georggi
+* Gergő Tisza
 * Gero Scholz
+* gicode
+* Giftpflanze
+* Gilles Dubuc
 * Gilles van den Hoven
+* Giuseppe Lavagetto
+* gladoscc
+* glaisher
+* Greg Maxwell
 * Greg Sabino Mullane
+* Gregory Szorc
 * Grunny
+* Guillaume Blanchard
 * Guy Van den Broeck
 * Happy-melon
+* haritha28
 * Harry Burt
+* Hazard-SJ
+* Hector A Escobedo
+* Helder
+* Henning Snater
 * Hojjat
+* Huji
+* Hydriz
 * Ian Baker
 * Ilmari Karonen
+* Inez Korczyński
+* IoannisKydonis
 * Ireas
+* isarra
+* Ivan Lanin
 * Jack D. Pond
 * Jack Phoenix
 * Jackmcbarn
 * Jacob Block
+* Jacob Clark
+* jagori
+* Jakub Vrana
+* James Earl Douglas
 * James Forrester
+* Jan Berkel
+* Jan Drewniak
 * Jan Gerber
 * Jan Luca Naumann
 * Jan Paul Posma
+* Jan Zerebecki
+* Jared Flores
+* Jaroslav Škarvada
+* jarrettmunton
+* jarry1250
 * Jaska Zedlik
 * Jason Richey
+* jeblad
+* Jeff Janes
+* jeff303
+* Jens Frank
+* Jens Ohlig
+* Jérémie Roquet
 * Jeremy Baron
+* Jeremy Postlethwaite
+* jeremyb
 * Jeroen De Dauw
+* Jerome Jamnicky
+* Jesús Martínez Novo
+* jhobs
+* Jiabao
 * Jidanni
+* Jimmy Collins
 * Jimmy Xu
+* joakin
+* Joan Creus
+* Joel Natividad
+* Joerg
+* Johan Dahlin
 * John Du Hart
 * John N
 * Jon Harald Søby
+* Jon Robson
 * Jonathan Wiltshire
+* Jools Wills
+* jsahleen
+* Julian Ostrow
 * Juliano F. Ravasi
+* Juliusz Gonera
 * JuneHyeon Bae
 * Jure Kajzer
+* Justin Du
+* Kai_WMDE
+* kaligula
+* Kartik Mistry
 * Karun Dambiec
 * Katie Filbert
 * Kevin Israel
+* Kghbln
+* Kim Eik
 * Kim Hyun-Joon
+* kipod
+* kishanio
+* konarak
+* krishna keshav
+* Krzysztof Krzyzaniak
+* Krzysztof Zbudniewek
+* Kunal Grover
+* Kunal Mehta
+* Kwan Ting Chan
+* Laurence Parry
+* Lee Bousfield
+* Lee Daniel Crocker
 * Lee Worden
 * Lejonel
+* lekshmi
 * Leo Koppelkamm
 * Leon Liesener
 * Leon Weber
+* Leonardo Gregianin
+* Leons Petrazickis
 * Leslie Hoare
+* Leszek Manicki
+* lethosor
+* Lewis Cawte
+* Liam Edwards-Playne
 * liangent
+* Lisa Ridley
+* Ljudusika
+* Lojjik Braughler
 * Louperivois
+* Ltrlg
+* Luc Van Oostenryck
 * Lucas Garczewski
 * Luigi Corsaro
+* Luis Felipe Schenone
 * Luke Faraone
+* Lupin
 * Lupo
+* lwelling
+* m4tx
 * Madman
+* madurangasiriwardena
+* Magnus Manske
 * Manuel Menal
+* Manuel Schneider
+* Marc Ordinas i Llopis
 * Marc-André Pelletier
 * Marcin Cieślak
+* Marco Falke
 * Marco Schuster
+* MarcoAurelio
 * Marcus Buck
 * Marius Hoch
+* Mark Bergsma
+* Mark Clements
 * Mark Hershberger
 * Mark Holmquist
+* Marko Obrovac
+* Markus Glaser
+* Markus Krötzsch
 * Marooned
+* Martin Urbanec
+* Massaf
 * Matěj Grabovský
+* matejsuchanek
 * Mathias Ertl
 * mati
+* Matt Fitzpatrick
 * Matt Johnston
+* Matt Russell
+* Matthew Bowker
 * Matthew Britton
 * Matthew Flaschen
+* Matthias Jordan
 * Matthias Mullie
+* MatthiasDD
 * Max
 * Max Semenik
 * Max Sikström
+* mayankmadan
 * Meno25
 * merl
+* Merlijn S. van Deen
+* MGChecker
+* mgooley
+* mhutti1
 * Michael Dale
 * Michael De La Rue
+* Michael Holloway
 * Michael M.
 * Michael Newton
 * Michael Walsh
+* Michał Łazowik
+* Michał Roszka
+* Michał Zieliński
 * Mike Horvath
+* Minh Nguyễn
 * MinuteElectron
+* Misza13
+* mjbmr
 * moejoe0000
 * Mohamed Magdy
+* Molly White
+* Moriel Schottlender
 * Mormegil
+* Mr. E23
 * MrBlueSky
 * MrPete
+* Mukunda Modell
+* Mwalker
+* mwjames
 * mybugs.mail
 * MZMcBride
+* nadeesha
 * Nakon
+* Namit
 * Nathan Larson
 * Nathaniel Herman
 * Neil Kandalgaonkar
+* Nemo bis
 * nephele
+* Nicholas Pisarro, Jr
+* Nick Jenkins
+* nicoco007
 * Nicolas Dumazet
+* Nicolas Weeger
 * Nik
+* Nik Everett
 * Niklas Laxström
 * Nikola Kovacs
+* Nikola Smolenski
 * Nikolaos S. Karastathis
+* Nimish Gautam
 * Nischay Nahata
+* nischayn22
+* nomoa
+* nullspoon
+* Nuria Ruiz
 * Nx.devnull
+* Ocean behind ears
 * Olaf Lenz
 * Olivier Finlay Beaton
+* onei
+* opatel99
+* Oren Held
 * Ori Livneh
+* oskar.ja...@gmail.com
+* OverlordQ
+* Owen Davis
+* Paa Kwesi Imbeah
+* paladox
 * Patricio Molina
 * Patrick Reilly
+* Patrick Westerhoff
+* Pau Giner
 * Paul Copperman
 * Paul Oranje
+* Pavel Astakhov
+* Pavel Selitskas
+* Pcoombe
+* Perside Rosalie
 * Peter Gehres
+* Peter Hedenskog
+* Peter Potrowl
+* Petr Bena
+* Petr Kadlec
 * Petr Onderka
+* Petr Pchelko
 * Philip Tzou
+* physikerwelt (Moritz Schubotz)
 * PieRRoMaN
+* Pikne
+* PiRSquared17
 * Platonides
+* Pmlineditor
+* pmolina
+* prageck
+* Pranav Ravichandran
+* PranavK
+* Prateek Saxena
+* Priyanka Dhanda
+* Prod
+* ptarjan
+* pubudu538
 * Purodha Blissenbach
+* quiddity
 * quietust
+* Quim Gil
+* rahul21
 * Raimond Spekking
+* Ramunas Geciauskas
 * Remember the dot
 * René Kijewski
+* Reza
 * rgcjonas
+* Ricordisamoa
+* rillke
+* River Tarnell
 * Roan Kattouw
+* Rob Church
+* Rob Lanphier
 * Rob Moen
+* Robert Hoenig
+* Robert Leverington
+* Robert Rohde
 * Robert Stojnić
 * Robert Treat
+* Robert Vogel
 * Robin Pepermans
+* robinhood701
 * RockMFR
+* Rohan
+* Roman Nosov
+* Roman Tsukanov
 * Rotem Liss
+* Rowan Collins
+* Russ Nelson
 * Russell Blau
 * Rusty Burchfield
+* Ruud Koot
+* Ryan Bies
+* Ryan Finnie
 * Ryan Kaldari
 * Ryan Lane
 * Ryan Schmidt
 * S Page
 * Salvatore Ingala
 * Sam Reed
+* Sam Smith
 * Santhosh Thottingal
+* Schnark
+* Scimonster
+* scnd
 * Scott Colcord
 * se4598
+* Sean Colombo
+* Sean Pringle
+* Seb35
+* Sebastian Brückner
 * Sébastien Santoro
+* Sergio Santoro
+* Sethakill
+* Shahyar
+* Shane Gibbons
+* Shane King
 * Shinjiman
+* shirayuki
+* Sidhant Gupta
 * Siebrand Mazeland
 * Simon Walker
+* Smriti Singh
 * Solitarius
+* Sorawee Porncharoenwase
 * Søren Løvborg
 * Southparkfan
 * Soxred93
 * SQL
 * Srikanth Lakshmanan
+* Stanislav Malyshev
 * Stefano Codari
+* Steinsplitter
+* Stephan Gambke
+* Stephan Muggli
+* Stephane Bisson
+* Stephen Liang
+* Steve Sanbeg
+* Steven Roddis
 * Str4nd
 * Subramanya Sastry
+* Sumit Asthana
 * svip
+* Swalling
 * Szymon Świerkosz
+* T.D. Corell
+* Tarquin
+* The Discoverer
 * The Evil IP address
+* theopolisme
+* Thiemo Mättig (WMDE)
 * This, that and the other
+* tholam
+* Thomas Arrow
 * Thomas Bleher
+* Thomas Dalton
 * Thomas Gries
+* ThomasV
+* Tim Hollmann
 * Tim Landscheidt
+* Tim Laqua
 * Tim Starling
 * Timo Tijhof
+* Tina Johnson
 * Tisane
+* tjlsangria
+* Tjones
+* TK-999
+* Tobias Gritschacher
+* Tom Arrow
+* Tom Gilder
+* Tom Maaswinkel
+* Tomasz Finc
+* Tomasz W. Kozlowski
+* Tomasz Wegrzanowski
+* tomek
+* Tony Thomas
+* Tpt
 * Trevor Parscal
+* TyA
+* Tychay
 * Tyler Anthony Romeo
+* Tyler Cipriani
+* Tyler Romeo
+* U-REDMOND\emadelw
+* UltrasonicNXT
 * Umherirrender
+* utkarsh95
 * Van de Bugger
+* Viačeslav
+* Victor Porton
 * Victor Vasiliev
+* victorbarbu
 * Ville Stadista
+* vishnu
 * Vitaliy Filippov
 * Vivek Ghaisas
+* vlakoff
+* Volker E
 * Waldir Pimenta
+* wctaiwan
+* Wikinaut
+* Wil Mahan
 * William Demchick
+* withoutaname
+* WMDE-Fisch
+* X!
+* XP1
+* Yaron Koren
+* Yaroslav Melnychuk
 * Yesid Carrillo
+* Yogesh K S
+* Yongmin Hong
+* yoonghm
 * Yuri Astrakhan
 * Yusuke Matsubara
 * Yuvi Panda
 * Zachary Hauri
+* Zak Greant
+* Željko Filipin
+* Zhaofeng Li
+* Zhengzhu Feng
+* Zppix
+* محمد شعیب
 <!-- END CONTRIBUTOR LIST -->
 
 == Translators ==
diff --git a/maintenance/updateCredits.php b/maintenance/updateCredits.php
new file mode 100644
index 0000000..a43e0ba
--- /dev/null
+++ b/maintenance/updateCredits.php
@@ -0,0 +1,77 @@
+<?php
+/**
+ * Update the CREDITS list by merging in the list of git commit authors.
+ *
+ * The contents of the existing contributors list will be preserved. If a name
+ * needs to be removed for some reason that must be done manually before or
+ * after running this script.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+
+if ( PHP_SAPI != 'cli' ) {
+       die( "This script can only be run from the command line.\n" );
+}
+
+chdir( dirname( __DIR__ ) );
+
+$CREDITS = 'CREDITS';
+$START_CONTRIBUTORS = '<!-- BEGIN CONTRIBUTOR LIST -->';
+$END_CONTRIBUTORS = '<!-- END CONTRIBUTOR LIST -->';
+
+$inHeader = true;
+$inFooter = false;
+$header = [];
+$contributors = [];
+$footer = [];
+
+$lines = explode( "\n", file_get_contents( $CREDITS ) );
+foreach ( $lines as $line ) {
+       if ( $inHeader ) {
+               $header[] = $line;
+               $inHeader = $line !== $START_CONTRIBUTORS;
+       } elseif ( $inFooter ) {
+               $footer[] = $line;
+       } elseif ( $line == $END_CONTRIBUTORS ) {
+               $inFooter = true;
+               $footer[] = $line;
+       } else {
+               $name = substr( $line, 2 );
+               $contributors[$name] = true;
+       }
+}
+unset( $lines );
+
+$lines = explode( "\n", shell_exec( 'git log --format="%aN"' ) );
+foreach ( $lines as $line ) {
+       if ( empty( $line ) )  {
+               continue;
+       }
+       if ( substr( $line, 0, 5 ) === '[BOT]' ) {
+               continue;
+       }
+       $contributors[$line] = true;
+}
+
+$contributors = array_keys( $contributors );
+$collator = Collator::create( 'uca-default-u-kn' );
+$collator->sort( $contributors );
+array_walk( $contributors, function ( &$v, $k ) {
+       $v = "* {$v}";
+} );
+
+file_put_contents( $CREDITS,
+       implode( "\n", array_merge( $header, $contributors, $footer ) ) );

-- 
To view, visit https://gerrit.wikimedia.org/r/315607
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: If00ae955c8026d6be38575f3766a06c46e5e7126
Gerrit-PatchSet: 11
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: BryanDavis <bda...@wikimedia.org>
Gerrit-Reviewer: Alex Monk <a...@wikimedia.org>
Gerrit-Reviewer: Bartosz Dziewoński <matma....@gmail.com>
Gerrit-Reviewer: Brion VIBBER <br...@wikimedia.org>
Gerrit-Reviewer: BryanDavis <bda...@wikimedia.org>
Gerrit-Reviewer: Jdlrobson <jrob...@wikimedia.org>
Gerrit-Reviewer: Jforrester <jforres...@wikimedia.org>
Gerrit-Reviewer: Legoktm <legoktm.wikipe...@gmail.com>
Gerrit-Reviewer: Nemo bis <federicol...@tiscali.it>
Gerrit-Reviewer: Reedy <re...@wikimedia.org>
Gerrit-Reviewer: RobLa <ro...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to