[libvirt] [PATCH] Autogenerate AUTHORS

We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date. AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution. --- .gitignore | 1 + .mailmap | 13 +++ AUTHORS | 279 ---------------------------------------------- AUTHORS.in | 86 ++++++++++++++ Makefile.am | 12 +- bootstrap.conf | 3 +- build-aux/make-authors.py | 44 ++++++++ cfg.mk | 15 --- 8 files changed, 157 insertions(+), 296 deletions(-) delete mode 100644 AUTHORS create mode 100644 AUTHORS.in create mode 100644 build-aux/make-authors.py If someone wants to suggest a perl or shell script replacement I'm all ears. Or we could just commit to sorting AUTHORS alphabetically and let sort + uniq do all the work. diff --git a/.gitignore b/.gitignore index 1cd2d45..004bc76 100644 --- a/.gitignore +++ b/.gitignore @@ -26,6 +26,7 @@ .memdump .sc-start-sc_* /ABOUT-NLS +/AUTHORS /COPYING /ChangeLog /GNUmakefile diff --git a/.mailmap b/.mailmap index 76e6513..924c501 100644 --- a/.mailmap +++ b/.mailmap @@ -34,6 +34,8 @@ <gerd@egidy.de> <lists@egidy.de> <gerd@egidy.de> <gerd.von.egidy@intra2net.com> <benoar@dolka.fr> <benjamin.cama@telecom-bretagne.eu> +<serge.hallyn@canonical.com> <serue@us.ibm.com> +<pritesh.kothari@sun.com> <Pritesh.Kothari@Sun.COM> # Name consolidation: # Preferred author spelling <preferred email> @@ -42,3 +44,14 @@ Royce Lv <lvroyce@linux.vnet.ibm.com> Daniel J Walsh <dwalsh@redhat.com> Ján Tomko <jtomko@redhat.com> Gerd von Egidy <gerd@egidy.de> +MATSUDA Daiki <matsudadik@intellilink.co.jp> +Tang Chen <tangchen@cn.fujitsu.com> +Peng Zhou <ailvpeng25@gmail.com> +Dirk Herrendoerfer <d.herrendoerfer@herrendoerfer.name> +Thibault VINCENT <thibault.vincent@smartjog.com> +Aurelien Rougemont <beorn@binaries.fr> +Serge E. Hallyn <serge.hallyn@canonical.com> +Henrik Persson E <henrik.e.persson@ericsson.com> +Philipp Hahn <hahn@univention.de> +Marco Bozzolan <bozzolan@gmail.com> +Pritesh Kothari <pritesh.kothari@sun.com> diff --git a/AUTHORS b/AUTHORS deleted file mode 100644 index 27c4eda..0000000 --- a/AUTHORS +++ /dev/null @@ -1,279 +0,0 @@ - libvirt Authors - =============== - -The libvirt project was initiated by: - - Daniel Veillard <veillard@redhat.com> or <daniel@veillard.com> - -The primary maintainers and people with commit access rights: - - Daniel Veillard <veillard@redhat.com> - Daniel Berrange <berrange@redhat.com> - Richard W.M. Jones <rjones@redhat.com> - Mark McLoughlin <markmc@redhat.com> - Anthony Liguori <aliguori@us.ibm.com> - Jim Meyering <meyering@redhat.com> - Jim Fehlig <jfehlig@suse.com> - Chris Lalancette <clalance@redhat.com> - Cole Robinson <crobinso@redhat.com> - Guido Günther <agx@sigxcpu.org> - John Levon <john.levon@sun.com> - Matthias Bolte <matthias.bolte@googlemail.com> - Jiří Denemark <jdenemar@redhat.com> - Dave Allan <dallan@redhat.com> - Laine Stump <laine@redhat.com> - Stefan Berger <stefanb@us.ibm.com> - Eric Blake <eblake@redhat.com> - Justin Clift <jclift@redhat.com> - Osier Yang <jyang@redhat.com> - Wen Congyang <wency@cn.fujitsu.com> - Michal Prívozník <mprivozn@redhat.com> - Peter Krempa <pkrempa@redhat.com> - Christophe Fergeau <cfergeau@redhat.com> - Alex Jia <ajia@redhat.com> - Martin Kletzander <mkletzan@redhat.com> - -Previous maintainers: - Karel Zak <kzak@redhat.com> - Atsushi SAKAI <sakaia@jp.fujitsu.com> - Dave Leskovec <dlesko@linux.vnet.ibm.com> - Dan Smith <danms@us.ibm.com> - -Patches have also been contributed by: - - David Lutterkort <dlutter@redhat.com> - Andrew Puch <apuch@redhat.com> - Philippe Berthault <philippe.berthault@Bull.net> - Hugh Brock <hbrock@redhat.com> - Michel Ponceau <michel.ponceau@bull.net> - Jeremy Katz <katzj@redhat.com> - Pete Vetere <pvetere@redhat.com> - Kazuki Mizushima <mizushima.kazuk@jp.fujitsu.com> - Saori Fukuta <fukuta.saori@jp.fujitsu.com> - Tatsuro Enokura <fj7716hz@aa.jp.fujitsu.com> - Takahashi Tomohiro <takatom@jp.fujitsu.com> - Nobuhiro Itou <fj0873gn@aa.jp.fujitsu.com> - Masayuki Sunou <fj1826dm@aa.jp.fujitsu.com> - Mark Johnson <johnson.nh@gmail.com> - Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> - Shuveb Hussain <shuveb@binarykarma.com> - Jim Paris <jim@jtan.com> - Daniel Hokka Zakrisson <daniel@hozac.com> - Mads Chr. Olesen <shiyee@shiyee.dk> - Anton Protopopov <aspsk2@gmail.com> - Stefan de Konink <dekonink@kinkrsoftware.nl> - Kaitlin Rupert <kaitlin@linux.vnet.ibm.com> - Evgeniy Sokolov <evg@openvz.org> - David Lively <dlively@virtualiron.com> - Charles Duffy <Charles_Duffy@messageone.com> - Nguyen Anh Quynh <aquynh@gmail.com> - James Morris <jmorris@namei.org> - Chris Wright <chrisw@redhat.com> - Ben Guthro <ben.guthro@gmail.com> - Shigeki Sakamoto <fj0588di@aa.jp.fujitsu.com> - Gerd von Egidy <gerd@egidy.de> - Itamar Heim <iheim@redhat.com> - Markus Armbruster <armbru@redhat.com> - Ryota Ozaki <ozaki.ryota@gmail.com> - Daniel J Walsh <dwalsh@redhat.com> - Maximilian Wilhelm <max@rfc2324.org> - Pritesh Kothari <Pritesh.Kothari@Sun.COM> - Amit Shah <amit.shah@redhat.com> - Florian Vichot <florian.vichot@diateam.net> - Serge E. Hallyn <serue@us.ibm.com> - Soren Hansen <soren@linux2go.dk> - Abel Míguez Rodríguez<amiguezr@pdi.ucm.es> - Doug Goldstein <cardoe@cardoe.com> - Javier Fontan <jfontan@gmail.com> - Federico Simoncelli <fsimonce@redhat.com> - Amy Griffis <amy.griffis@hp.com> - Henrik Persson E <henrik.e.persson@ericsson.com> - Satoru SATOH <satoru.satoh@gmail.com> - Paolo Bonzini <pbonzini@redhat.com> - Miloslav Trmač <mitr@redhat.com> - Jamie Strandboge <jamie@canonical.com> - Gerhard Stenzel <gerhard.stenzel@de.ibm.com> - Matthew Booth <mbooth@redhat.com> - Diego Elio Pettenò <flameeyes@gmail.com> - Adam Litke <agl@us.ibm.com> - Steve Yarmie <steve.yarmie@gmail.com> - Dan Kenigsberg <danken@redhat.com> - Yuji NISHIDA <nishidy@nict.go.jp> - Dustin Xiong <x_k_123@hotmail.com> - Rolf Eike Beer <eike@sf-mail.de> - Wolfgang Mauerer <wolfgang.mauerer@siemens.com> - Philipp Hahn <hahn@univention.de> - Ed Swierk <eswierk@aristanetworks.com> - Paolo Smiraglia <paolo.smiraglia@gmail.com> - Sharadha Prabhakar <sharadha.prabhakar@citrix.com> - Chris Wong <wongc-redhat@hoku.net> - Daniel Berteaud <daniel@firewall-services.com> - Dustin Kirkland <kirkland@canonical.com> - Luiz Capitulino <lcapitulino@redhat.com> - Ryan Harper <ryanh@us.ibm.com> - Spencer Shimko <sshimko@tresys.com> - Marco Bozzolan <bozzolan@gmail.com> - Alex Williamson <alex.williamson@redhat.com> - Ersek Laszlo <lacos@caesar.elte.hu> - Kenneth Nagin <NAGIN@il.ibm.com> - Klaus Ethgen <Klaus@Ethgen.de> - Bryan Kearney <bkearney@redhat.com> - Darry L. Pierce <dpierce@redhat.com> - David Jorm <dfj@redhat.com> - Eduardo Otubo <otubo@linux.vnet.ibm.com> - Garry Dolley <gdolley@arpnetworks.com> - Harshavardhana <harsha@gluster.com> - Jonas Eriksson <jonas.j.eriksson@ericsson.com> - Jun Koi <junkoi2004@gmail.com> - Olivier Fourdan <ofourdan@redhat.com> - Ron Yorston <rmy@tigress.co.uk> - Shahar Klein <shaharklein@yahoo.com> - Taizo ITO <taizo.ito@hde.co.jp> - Thomas Treutner <thomas@scripty.at> - Jean-Baptiste Rouault <jean-baptiste.rouault@diateam.net> - Марк Коренберг <socketpair@gmail.com> - Alan Pevec <apevec@redhat.com> - Aurelien Rougemont <beorn@binaries.fr> - Patrick Dignan <pat_dignan@dell.com> - Serge Hallyn <serge.hallyn@canonical.com> - Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com> - Lai Jiangshan <laijs@cn.fujitsu.com> - Harsh Prateek Bora <harsh@linux.vnet.ibm.com> - John Morrissey <jwm@horde.net> - KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> - Hu Tao <hutao@cn.fujitsu.com> - Laurent Léonard <laurent@open-minds.org> - MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp> - Josh Durgin <josh.durgin@inktank.com> - Roopa Prabhu <roprabhu@cisco.com> - Paweł Krześniak <pawel.krzesniak@gmail.com> - Kay Schubert <kayegypt@web.de> - Marc-André Lureau <marcandre.lureau@redhat.com> - Juerg Haefliger <juerg.haefliger@hp.com> - Matthias Dahl <mdvirt@designassembly.de> - Niels de Vos <ndevos@redhat.com> - Davidlohr Bueso <dave@gnu.org> - Alon Levy <alevy@redhat.com> - Hero Phương <herophuong93@gmail.com> - Zdenek Styblik <stybla@turnovfree.net> - Gui Jianfeng <guijianfeng@cn.fujitsu.com> - Michal Novotny <minovotn@redhat.com> - Markus Groß <gross@univention.de> - Phil Petty <phpetty@cisco.com> - Taku Izumi <izumi.taku@jp.fujitsu.com> - Minoru Usui <usui@mxm.nes.nec.co.jp> - Tiziano Mueller <dev-zero@gentoo.org> - Thibault VINCENT <thibault.vincent@smartjog.com> - Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> - Jesse Cook <code.crashenx@gmail.com> - Alexander Todorov <atodorov@otb.bg> - Richard Laager <rlaager@wiktel.com> - Mark Wu <dwu@redhat.com> - Yufang Zhang <yuzhang@redhat.com> - Supriya Kannery <supriyak@linux.vnet.ibm.com> - Dirk Herrendoerfer <d.herrendoerfer@herrendoerfer.name> - Taisuke Yamada <tai@rakugaki.org> - Heath Petersen <HeathPetersen@Kandre.com> - Neil Wilson <neil@aldur.co.uk> - Ohad Levy <ohadlevy@gmail.com> - Michael Chapman <mike@very.puzzling.org> - Daniel Gollub <gollub@b1-systems.de> - David S. Wang <dwang2@cisco.com> - Ruben Kerkhof <ruben@rubenkerkhof.com> - Scott Moser <smoser@ubuntu.com> - Guannan Ren <gren@redhat.com> - John Williams <john.williams@petalogix.com> - Michael Santos <michael.santos@gmail.com> - Oskari Saarenmaa <os@ohmu.fi> - Nan Zhang <nzhang@redhat.com> - Wieland Hoffmann <themineo@googlemail.com> - Douglas Schilling Landgraf <dougsland@redhat.com> - Tom Vijlbrief <tom.vijlbrief@xs4all.nl> - Shradha Shah <sshah@solarflare.com> - Steve Hodgson <shodgson@solarflare.com> - Xu He Jie <xuhj@linux.vnet.ibm.com> - Lei Li <lilei@linux.vnet.ibm.com> - Matthias Witte <witte@netzquadrat.de> - Tang Chen <tangchen@cn.fujitsu.com> - Dan Horák <dan@danny.cz> - Sage Weil <sage@newdream.net> - David L Stevens <dlstevens@us.ibm.com> - Tyler Coumbes <coumbes@gmail.com> - Royce Lv <lvroyce@linux.vnet.ibm.com> - Patrice LACHANCE <patlachance@gmail.com> - Eli Qiao <taget@linux.vnet.ibm.com> - Michael Wood <esiotrot@gmail.com> - Bharata B Rao <bharata@linux.vnet.ibm.com> - Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> - Chang Liu <lingjiao.lc@taobao.com> - Lorin Hochstein <lorin@isi.edu> - Christian Franke <nobody@nowhere.ws> - Prerna Saxena <prerna@linux.vnet.ibm.com> - Michael Ellerman <michael@ellerman.id.au> - Rommer <rommer@active.by> - Yuri Chornoivan <yurchor@ukr.net> - Deepak C Shetty <deepakcs@linux.vnet.ibm.com> - Laszlo Ersek <lersek@redhat.com> - Zeeshan Ali (Khattak) <zeeshanak@gnome.org> - Marcelo Cerri <mhcerri@linux.vnet.ibm.com> - Hendrik Schwartke <hendrik@os-t.de> - Ansis Atteka <aatteka@nicira.com> - Dan Wendlandt <dan@nicira.com> - Kyle Mestery <kmestery@cisco.com> - Lincoln Myers <lincoln_myers@yahoo.com> - Peter Robinson <pbrobinson@gmail.com> - Benjamin Cama <benoar@dolka.fr> - Duncan Rance <libvirt@dunquino.com> - Peng Zhou <ailvpeng25@gmail.com> - Li Zhang <zhlcindy@linux.vnet.ibm.com> - Stef Walter <stefw@gnome.org> - Christian Benvenuti <benve@cisco.com> - Ilja Livenson <ilja.livenson@gmail.com> - Stefan Bader <stefan.bader@canonical.com> - MATSUDA Daiki <matsudadik@intellilink.co.jp> - Jan Kiszka <jan.kiszka@siemens.com> - Ryan Woodsmall <rwoodsmall@gmail.com> - Wido den Hollander <wido@widodh.nl> - Eugen Feller <eugen.feller@inria.fr> - Dmitry Guryanov <dguryanov@parallels.com> - William Jon McCann <william.jon.mccann@gmail.com> - David Weber <wb@munzinger.de> - Marti Raudsepp <marti@juffo.org> - Radu Caragea <dmns_serp@yahoo.com> - Beat Jörg <Beat.Joerg@ssatr.ch> - Gao feng <gaofeng@cn.fujitsu.com> - Dipankar Sarma <dipankar@in.ibm.com> - Gerd Hoffmann <kraxel@redhat.com> - Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com> - Thang Pham <thang.pham@us.ibm.com> - Eiichi Tsukata <eiichi.tsukata.xh@hitachi.com> - Sascha Peilicke <saschpe@suse.de> - Chuck Short <chuck.short@canonical.com> - Sebastian Wiedenroth <wiedi@frubar.net> - Ata E Husain Bohra <ata.husain@hotmail.com> - Ján Tomko <jtomko@redhat.com> - Richa Marwaha <rmarwah@linux.vnet.ibm.com> - Peter Feiner <peter@gridcentric.ca> - Frido Roose <frido.roose@gmail.com> - Asad Saeed <asad.saeed@acidseed.com> - Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> - Thomas Woerner <twoerner@redhat.com> - J.B. Joret <jb@linux.vnet.ibm.com> - Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> - Gene Czarcinski <gene@czarc.net> - Nishank Trivedi <nistrive@cisco.com> - Jasper Lievisse Adriaanse <jasper@humppa.nl> - Paul Eggert <eggert@cs.ucla.edu> - Dwight Engen <dwight.engen@oracle.com> - liguang <lig.fnst@cn.fujitsu.com> - Chuck Short <zulcss@gmail.com> - Alexander Larsson <alexl@redhat.com> - - [....send patches to get your name here....] - -The libvirt Logo was designed by Diana Fong - --- End -;; Local Variables: -;; coding: utf-8 -;; End: diff --git a/AUTHORS.in b/AUTHORS.in new file mode 100644 index 0000000..849badf --- /dev/null +++ b/AUTHORS.in @@ -0,0 +1,86 @@ + libvirt Authors + =============== + +The libvirt project was initiated by: + + Daniel Veillard <veillard@redhat.com> or <daniel@veillard.com> + +The primary maintainers and people with commit access rights: + + Daniel Veillard <veillard@redhat.com> + Daniel Berrange <berrange@redhat.com> + Richard W.M. Jones <rjones@redhat.com> + Mark McLoughlin <markmc@redhat.com> + Anthony Liguori <aliguori@us.ibm.com> + Jim Meyering <meyering@redhat.com> + Jim Fehlig <jfehlig@suse.com> + Chris Lalancette <clalance@redhat.com> + Cole Robinson <crobinso@redhat.com> + Guido Günther <agx@sigxcpu.org> + John Levon <john.levon@sun.com> + Matthias Bolte <matthias.bolte@googlemail.com> + Jiří Denemark <jdenemar@redhat.com> + Dave Allan <dallan@redhat.com> + Laine Stump <laine@redhat.com> + Stefan Berger <stefanb@us.ibm.com> + Eric Blake <eblake@redhat.com> + Justin Clift <jclift@redhat.com> + Osier Yang <jyang@redhat.com> + Wen Congyang <wency@cn.fujitsu.com> + Michal Prívozník <mprivozn@redhat.com> + Peter Krempa <pkrempa@redhat.com> + Christophe Fergeau <cfergeau@redhat.com> + Alex Jia <ajia@redhat.com> + Martin Kletzander <mkletzan@redhat.com> + +Previous maintainers: + Karel Zak <kzak@redhat.com> + Atsushi SAKAI <sakaia@jp.fujitsu.com> + Dave Leskovec <dlesko@linux.vnet.ibm.com> + Dan Smith <danms@us.ibm.com> + +Patches have also been contributed by: + + David Lutterkort <dlutter@redhat.com> + Andrew Puch <apuch@redhat.com> + Philippe Berthault <philippe.berthault@Bull.net> + Hugh Brock <hbrock@redhat.com> + Michel Ponceau <michel.ponceau@bull.net> + Jeremy Katz <katzj@redhat.com> + Pete Vetere <pvetere@redhat.com> + Kazuki Mizushima <mizushima.kazuk@jp.fujitsu.com> + Saori Fukuta <fukuta.saori@jp.fujitsu.com> + Tatsuro Enokura <fj7716hz@aa.jp.fujitsu.com> + Takahashi Tomohiro <takatom@jp.fujitsu.com> + Nobuhiro Itou <fj0873gn@aa.jp.fujitsu.com> + Masayuki Sunou <fj1826dm@aa.jp.fujitsu.com> + Mark Johnson <johnson.nh@gmail.com> + Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> + Shuveb Hussain <shuveb@binarykarma.com> + Daniel Hokka Zakrisson <daniel@hozac.com> + Mads Chr. Olesen <shiyee@shiyee.dk> + Anton Protopopov <aspsk2@gmail.com> + Stefan de Konink <dekonink@kinkrsoftware.nl> + Kaitlin Rupert <kaitlin@linux.vnet.ibm.com> + Evgeniy Sokolov <evg@openvz.org> + David Lively <dlively@virtualiron.com> + James Morris <jmorris@namei.org> + Ben Guthro <ben.guthro@gmail.com> + Shigeki Sakamoto <fj0588di@aa.jp.fujitsu.com> + Amit Shah <amit.shah@redhat.com> + Itamar Heim <iheim@redhat.com> + Markus Armbruster <armbru@redhat.com> + Abel Míguez Rodríguez<amiguezr@pdi.ucm.es> + Javier Fontan <jfontan@gmail.com> + Matthias Witte <witte@netzquadrat.de> + Dan Wendlandt <dan@nicira.com> +@authorlist@ + + [....send patches to get your name here....] + +The libvirt Logo was designed by Diana Fong + +-- End +;; Local Variables: +;; coding: utf-8 +;; End: diff --git a/Makefile.am b/Makefile.am index 333e300..73d6a00 100644 --- a/Makefile.am +++ b/Makefile.am @@ -28,6 +28,7 @@ EXTRA_DIST = \ cfg.mk \ examples/domain-events/events-python \ run.in \ + AUTHORS.in \ $(XML_EXAMPLES) pkgconfigdir = $(libdir)/pkgconfig @@ -78,7 +79,7 @@ MAINTAINERCLEANFILES = .git-module-status # disable this check distuninstallcheck: -dist-hook: gen-ChangeLog +dist-hook: gen-ChangeLog gen-AUTHORS # Generate the ChangeLog file (with all entries since the switch to git) # and insert it into the directory we're about to use to create a tarball. @@ -91,3 +92,12 @@ gen-ChangeLog: rm -f $(distdir)/ChangeLog; \ mv $(distdir)/cl-t $(distdir)/ChangeLog; \ fi + +.PHONY: gen-AUTHORS +gen-AUTHORS: + if test -d .git; then \ + git log --pretty=format:"%aN@@@%aE" | \ + python $(top_srcdir)/build-aux/make-authors.py > \ + $(distdir)/AUTHORS-tmp && \ + mv -f $(distdir)/AUTHORS-tmp $(distdir)/AUTHORS ; \ + fi diff --git a/bootstrap.conf b/bootstrap.conf index f8b7c4d..c40db3d 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -223,7 +223,8 @@ if `(${PYTHON_CONFIG-python-config} --version; PYTHON_CONFIG=true fi -# Automake requires that ChangeLog exist. +# Automake requires that ChangeLog and AUTHORS exist. +touch AUTHORS || exit 1 touch ChangeLog || exit 1 # Override bootstrap's list - we don't use mdate-sh or texinfo.tex. diff --git a/build-aux/make-authors.py b/build-aux/make-authors.py new file mode 100644 index 0000000..f1df62f --- /dev/null +++ b/build-aux/make-authors.py @@ -0,0 +1,44 @@ +# -*- coding: utf-8 -*- + +# +# make-authors.py: Generate AUTHORS file from AUTHORS.in and git +# log output on stdin +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library. If not, see +# <http://www.gnu.org/licenses/>. +# + +import sys + +lines = sys.stdin.read().splitlines() +lines.reverse() +template = file("AUTHORS.in").read() + +authlist = "" +authlist = [] +for line in lines: + name, email = line.split("@@@") + if email in template: + continue + + entry = " %-20s <%s>" % (name.decode("utf-8"), email) + if entry in authlist: + continue + authlist.append(entry) + +template = template.split("@authorlist@") +output = "%s%s%s" % (template[0], + "\n".join(authlist).encode("utf-8"), + template[1]) +sys.stdout.write(output) diff --git a/cfg.mk b/cfg.mk index e1fbf4f..eed7fd8 100644 --- a/cfg.mk +++ b/cfg.mk @@ -43,7 +43,6 @@ _test_script_regex = \<\(init\|test-lib\)\.sh\> # Tests not to run as part of "make distcheck". local-checks-to-skip = \ changelog-check \ - check-AUTHORS \ makefile-check \ makefile_path_separator_check \ patch-check \ @@ -711,20 +710,6 @@ _autogen: $(srcdir)/autogen.sh ./config.status -# Give credit where due: -# Ensure that each commit author email address (possibly mapped via -# git log's .mailmap) appears in our AUTHORS file. -sc_check_author_list: - @fail=0; \ - for i in $$(git log --pretty=format:%aE%n|sort -u|grep -v '^$$'); do \ - sanitized=$$(echo "$$i"|LC_ALL=C sed 's/\([^a-zA-Z0-9_@-]\)/\\\1/g'); \ - grep -iq "<$$sanitized>" $(srcdir)/AUTHORS \ - || { printf '%s\n' "$$i" >&2; fail=1; }; \ - done; \ - test $$fail = 1 \ - && echo '$(ME): committer(s) not listed in AUTHORS' >&2; \ - test $$fail = 0 - # regenerate HACKING as part of the syntax-check syntax-check: $(top_srcdir)/HACKING -- 1.7.11.4

On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look --- AUTHORS 2012-10-12 20:58:56.446742241 -0400 +++ newAUTHORS 2012-10-12 20:55:24.585231312 -0400 @@ -57,7 +57,6 @@ Patches have also been contributed by: Mark Johnson <johnson.nh@gmail.com> Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> Shuveb Hussain <shuveb@binarykarma.com> - Jim Paris <jim@jtan.com> Daniel Hokka Zakrisson <daniel@hozac.com> Mads Chr. Olesen <shiyee@shiyee.dk> Anton Protopopov <aspsk2@gmail.com> @@ -65,77 +64,79 @@ Patches have also been contributed by: Kaitlin Rupert <kaitlin@linux.vnet.ibm.com> Evgeniy Sokolov <evg@openvz.org> David Lively <dlively@virtualiron.com> - Charles Duffy <Charles_Duffy@messageone.com> - Nguyen Anh Quynh <aquynh@gmail.com> James Morris <jmorris@namei.org> - Chris Wright <chrisw@redhat.com> Ben Guthro <ben.guthro@gmail.com> Shigeki Sakamoto <fj0588di@aa.jp.fujitsu.com> - Gerd von Egidy <gerd@egidy.de> + Amit Shah <amit.shah@redhat.com> Itamar Heim <iheim@redhat.com> Markus Armbruster <armbru@redhat.com> - Ryota Ozaki <ozaki.ryota@gmail.com> - Daniel J Walsh <dwalsh@redhat.com> - Maximilian Wilhelm <max@rfc2324.org> - Pritesh Kothari <Pritesh.Kothari@Sun.COM> - Amit Shah <amit.shah@redhat.com> - Florian Vichot <florian.vichot@diateam.net> - Serge E. Hallyn <serue@us.ibm.com> - Soren Hansen <soren@linux2go.dk> Abel Míguez Rodríguez<amiguezr@pdi.ucm.es> - Doug Goldstein <cardoe@cardoe.com> Javier Fontan <jfontan@gmail.com> - Federico Simoncelli <fsimonce@redhat.com> - Amy Griffis <amy.griffis@hp.com> - Henrik Persson E <henrik.e.persson@ericsson.com> - Satoru SATOH <satoru.satoh@gmail.com> + Matthias Witte <witte@netzquadrat.de> + Dan Wendlandt <dan@nicira.com> + Dan Kenigsberg <danken@redhat.com> Paolo Bonzini <pbonzini@redhat.com> + Harshavardhana <harsha@gluster.com> + Garry Dolley <gdolley@arpnetworks.com> + Jun Koi <junkoi2004@gmail.com> + Pritesh Kothari <pritesh.kothari@sun.com> + Thomas Treutner <thomas@scripty.at> + Nguyen Anh Quynh <aquynh@gmail.com> + Jim Paris <jim@jtan.com> + Eduardo Otubo <otubo@linux.vnet.ibm.com> + Shahar Klein <shaharklein@yahoo.com> + Ryota Ozaki <ozaki.ryota@gmail.com> + Ron Yorston <rmy@tigress.co.uk> + Aron Griffis <amy.griffis@hp.com> + Bryan Kearney <bkearney@redhat.com> + Henrik Persson E <henrik.e.persson@ericsson.com> + Maximilian Wilhelm <max@rfc2324.org> + Amy Griffis <amy.griffis@hp.com> + Darryl L. Pierce <dpierce@redhat.com> + Charles Duffy <charles_duffy@messageone.com> Miloslav Trmač <mitr@redhat.com> + Florian Vichot <florian.vichot@diateam.net> + Yuji NISHIDA <nishidy@nict.go.jp> Jamie Strandboge <jamie@canonical.com> - Gerhard Stenzel <gerhard.stenzel@de.ibm.com> Matthew Booth <mbooth@redhat.com> + Gerhard Stenzel <gerhard.stenzel@de.ibm.com> + Jonas Eriksson <jonas.j.eriksson@ericsson.com> + Steve Yarmie <steve.yarmie@gmail.com> + Wolfgang Mauerer <wolfgang.mauerer@siemens.com> Diego Elio Pettenò <flameeyes@gmail.com> Adam Litke <agl@us.ibm.com> - Steve Yarmie <steve.yarmie@gmail.com> - Dan Kenigsberg <danken@redhat.com> - Yuji NISHIDA <nishidy@nict.go.jp> + Olivier Fourdan <ofourdan@redhat.com> + David Jorm <dfj@redhat.com> + Taizo ITO <taizo.ito@hde.co.jp> + Doug Goldstein <cardoe@cardoe.com> Dustin Xiong <x_k_123@hotmail.com> Rolf Eike Beer <eike@sf-mail.de> - Wolfgang Mauerer <wolfgang.mauerer@siemens.com> - Philipp Hahn <hahn@univention.de> + Soren Hansen <soren@linux2go.dk> Ed Swierk <eswierk@aristanetworks.com> - Paolo Smiraglia <paolo.smiraglia@gmail.com> Sharadha Prabhakar <sharadha.prabhakar@citrix.com> - Chris Wong <wongc-redhat@hoku.net> + Philipp Hahn <hahn@univention.de> + Paolo Smiraglia <paolo.smiraglia@gmail.com> + redshift <bozzolan@gmail.com> + Ryan Harper <ryanh@us.ibm.com> + Luiz Capitulino <lcapitulino@redhat.com> Daniel Berteaud <daniel@firewall-services.com> + Chris Wong <wongc-redhat@hoku.net> Dustin Kirkland <kirkland@canonical.com> - Luiz Capitulino <lcapitulino@redhat.com> - Ryan Harper <ryanh@us.ibm.com> Spencer Shimko <sshimko@tresys.com> Marco Bozzolan <bozzolan@gmail.com> - Alex Williamson <alex.williamson@redhat.com> - Ersek Laszlo <lacos@caesar.elte.hu> - Kenneth Nagin <NAGIN@il.ibm.com> + Satoru SATOH <satoru.satoh@gmail.com> Klaus Ethgen <Klaus@Ethgen.de> - Bryan Kearney <bkearney@redhat.com> - Darry L. Pierce <dpierce@redhat.com> - David Jorm <dfj@redhat.com> - Eduardo Otubo <otubo@linux.vnet.ibm.com> - Garry Dolley <gdolley@arpnetworks.com> - Harshavardhana <harsha@gluster.com> - Jonas Eriksson <jonas.j.eriksson@ericsson.com> - Jun Koi <junkoi2004@gmail.com> - Olivier Fourdan <ofourdan@redhat.com> - Ron Yorston <rmy@tigress.co.uk> - Shahar Klein <shaharklein@yahoo.com> - Taizo ITO <taizo.ito@hde.co.jp> - Thomas Treutner <thomas@scripty.at> + Kenneth Nagin <NAGIN@il.ibm.com> + Ersek Laszlo <lacos@caesar.elte.hu> + Alex Williamson <alex.williamson@redhat.com> + Chris Wright <chrisw@redhat.com> Jean-Baptiste Rouault <jean-baptiste.rouault@diateam.net> Марк Коренберг <socketpair@gmail.com> + Daniel J Walsh <dwalsh@redhat.com> Alan Pevec <apevec@redhat.com> Aurelien Rougemont <beorn@binaries.fr> Patrick Dignan <pat_dignan@dell.com> - Serge Hallyn <serge.hallyn@canonical.com> + Serge E. Hallyn <serge.hallyn@canonical.com> Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com> Lai Jiangshan <laijs@cn.fujitsu.com> Harsh Prateek Bora <harsh@linux.vnet.ibm.com> @@ -172,6 +173,7 @@ Patches have also been contributed by: Yufang Zhang <yuzhang@redhat.com> Supriya Kannery <supriyak@linux.vnet.ibm.com> Dirk Herrendoerfer <d.herrendoerfer@herrendoerfer.name> + Federico Simoncelli <fsimonce@redhat.com> Taisuke Yamada <tai@rakugaki.org> Heath Petersen <HeathPetersen@Kandre.com> Neil Wilson <neil@aldur.co.uk> @@ -193,7 +195,6 @@ Patches have also been contributed by: Steve Hodgson <shodgson@solarflare.com> Xu He Jie <xuhj@linux.vnet.ibm.com> Lei Li <lilei@linux.vnet.ibm.com> - Matthias Witte <witte@netzquadrat.de> Tang Chen <tangchen@cn.fujitsu.com> Dan Horák <dan@danny.cz> Sage Weil <sage@newdream.net> @@ -218,8 +219,6 @@ Patches have also been contributed by: Marcelo Cerri <mhcerri@linux.vnet.ibm.com> Hendrik Schwartke <hendrik@os-t.de> Ansis Atteka <aatteka@nicira.com> - Dan Wendlandt <dan@nicira.com> - Kyle Mestery <kmestery@cisco.com> Lincoln Myers <lincoln_myers@yahoo.com> Peter Robinson <pbrobinson@gmail.com> Benjamin Cama <benoar@dolka.fr> @@ -252,11 +251,13 @@ Patches have also been contributed by: Sebastian Wiedenroth <wiedi@frubar.net> Ata E Husain Bohra <ata.husain@hotmail.com> Ján Tomko <jtomko@redhat.com> + Gerd v. Egidy <gerd@egidy.de> Richa Marwaha <rmarwah@linux.vnet.ibm.com> Peter Feiner <peter@gridcentric.ca> Frido Roose <frido.roose@gmail.com> Asad Saeed <asad.saeed@acidseed.com> Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> + Kyle Mestery <kmestery@cisco.com> Thomas Woerner <twoerner@redhat.com> J.B. Joret <jb@linux.vnet.ibm.com> Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>

On Sat, Oct 13, 2012 at 11:03:42AM -0400, Cole Robinson wrote:
On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look
As you comment in the original patch, I think it's best to sort the output. In libguestfs we sort by author string (ie. by the first name that appears): git log --pretty="format:%an <%ae>" | sort -u | uniq -w 10 Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones libguestfs lets you edit virtual machines. Supports shell scripting, bindings from many languages. http://libguestfs.org

On Sat, Oct 13, 2012 at 1:41 PM, Richard W.M. Jones <rjones@redhat.com> wrote:
On Sat, Oct 13, 2012 at 11:03:42AM -0400, Cole Robinson wrote:
On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look
As you comment in the original patch, I think it's best to sort the output.
In libguestfs we sort by author string (ie. by the first name that appears):
git log --pretty="format:%an <%ae>" | sort -u | uniq -w 10
FWIW, -w is a GNU extension to uniq so it'll probably get you some unloving e-mails from Justin wrt Mac OS X support.

On 10/13/2012 09:03 AM, Cole Robinson wrote:
On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look
I ran sort on this diff, in en_US.UTF-8, and noticed that: 'Aron Griffis' was added, but with the same email as 'Amy Griffis' (missing a .mailmap entry for preferred name). 'redshift' was added, but with the same email as 'Marco Bozzolan' (another missing .mailmap entry) A couple of names were spelled differently: you fixed Darryl L. Pierce, and changed to Gerd v. Egidy. The duplicate entry 'Serge Hallyn' was consolidated by the 'Serge E. Hallyn' entry. Everything else was fine. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org

On 10/13/2012 05:04 PM, Eric Blake wrote:
On 10/13/2012 09:03 AM, Cole Robinson wrote:
On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look
I ran sort on this diff, in en_US.UTF-8, and noticed that:
'Aron Griffis' was added, but with the same email as 'Amy Griffis' (missing a .mailmap entry for preferred name).
'redshift' was added, but with the same email as 'Marco Bozzolan' (another missing .mailmap entry)
A couple of names were spelled differently: you fixed Darryl L. Pierce, and changed to Gerd v. Egidy.
The duplicate entry 'Serge Hallyn' was consolidated by the 'Serge E. Hallyn' entry.
For the last three, I standardized on the name that was already in AUTHORS. I'll fix the first 2. But as to Rich's comment, anyone object to sorting AUTHORS alphabetically? Will simplify this process at least, and if anyone cares about who committed when they can check git log. - Cole

On Sun, Oct 14, 2012 at 1:00 PM, Cole Robinson <crobinso@redhat.com> wrote:
On 10/13/2012 05:04 PM, Eric Blake wrote:
On 10/13/2012 09:03 AM, Cole Robinson wrote:
On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look
I ran sort on this diff, in en_US.UTF-8, and noticed that:
'Aron Griffis' was added, but with the same email as 'Amy Griffis' (missing a .mailmap entry for preferred name).
'redshift' was added, but with the same email as 'Marco Bozzolan' (another missing .mailmap entry)
A couple of names were spelled differently: you fixed Darryl L. Pierce, and changed to Gerd v. Egidy.
The duplicate entry 'Serge Hallyn' was consolidated by the 'Serge E. Hallyn' entry.
For the last three, I standardized on the name that was already in AUTHORS. I'll fix the first 2.
But as to Rich's comment, anyone object to sorting AUTHORS alphabetically? Will simplify this process at least, and if anyone cares about who committed when they can check git log.
- Cole
Seems reasonable. The who is more important than the when anyway. -- Doug Goldstein

On Sun, Oct 14, 2012 at 02:00:23PM -0400, Cole Robinson wrote:
On 10/13/2012 05:04 PM, Eric Blake wrote:
On 10/13/2012 09:03 AM, Cole Robinson wrote:
On 10/13/2012 11:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution.
Here's the AUTHORS diff it generates. I tried to make sure no one was dropped, but it could use another look
I ran sort on this diff, in en_US.UTF-8, and noticed that:
'Aron Griffis' was added, but with the same email as 'Amy Griffis' (missing a .mailmap entry for preferred name).
'redshift' was added, but with the same email as 'Marco Bozzolan' (another missing .mailmap entry)
A couple of names were spelled differently: you fixed Darryl L. Pierce, and changed to Gerd v. Egidy.
The duplicate entry 'Serge Hallyn' was consolidated by the 'Serge E. Hallyn' entry.
For the last three, I standardized on the name that was already in AUTHORS. I'll fix the first 2.
But as to Rich's comment, anyone object to sorting AUTHORS alphabetically? Will simplify this process at least, and if anyone cares about who committed when they can check git log.
Sorting is fine, as long as we keep the list of the primary maintainers separate & sorted independently of the list of patch contributors. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|

On 10/13/2012 09:01 AM, Cole Robinson wrote:
We add a helper python script build-aux/make-authors.py The .mailmap is expanded to give output as close to the original AUTHORS file as possible. Drop the syntax-check that validated AUTHORS is up to date.
AUTHORS.in tracks the maintainers, as well as some folks who were previously in AUTHORS but don't have a git commit with proper attribution. --- .gitignore | 1 + .mailmap | 13 +++ AUTHORS | 279 ---------------------------------------------- AUTHORS.in | 86 ++++++++++++++ Makefile.am | 12 +- bootstrap.conf | 3 +- build-aux/make-authors.py | 44 ++++++++ cfg.mk | 15 --- 8 files changed, 157 insertions(+), 296 deletions(-) delete mode 100644 AUTHORS create mode 100644 AUTHORS.in create mode 100644 build-aux/make-authors.py
Please squash in 'chmod +x build-aux/make-authors.py'.
If someone wants to suggest a perl or shell script replacement I'm all ears. Or we could just commit to sorting AUTHORS alphabetically and let sort + uniq do all the work.
I actually like the idea of sorting the list alphabetically, instead of trying to maintain it in commit order, although that may be harder to figure out how to include the list from AUTHORS.in of names that contributed prior to when we had a git log recording their commit. We've tried hard to make sure that someone can build the tarball without python installed, but already require python for creating the tarball, so for now, I have no problem keeping the conversion script in python (even if I'm not the best one to review it).
+++ b/Makefile.am @@ -28,6 +28,7 @@ EXTRA_DIST = \ cfg.mk \ examples/domain-events/events-python \ run.in \ + AUTHORS.in \ $(XML_EXAMPLES)
pkgconfigdir = $(libdir)/pkgconfig @@ -78,7 +79,7 @@ MAINTAINERCLEANFILES = .git-module-status # disable this check distuninstallcheck:
-dist-hook: gen-ChangeLog +dist-hook: gen-ChangeLog gen-AUTHORS
# Generate the ChangeLog file (with all entries since the switch to git) # and insert it into the directory we're about to use to create a tarball. @@ -91,3 +92,12 @@ gen-ChangeLog: rm -f $(distdir)/ChangeLog; \ mv $(distdir)/cl-t $(distdir)/ChangeLog; \ fi + +.PHONY: gen-AUTHORS +gen-AUTHORS: + if test -d .git; then \ + git log --pretty=format:"%aN@@@%aE" | \ + python $(top_srcdir)/build-aux/make-authors.py > \
Shouldn't this be $(PYTHON)?
+ $(distdir)/AUTHORS-tmp && \ + mv -f $(distdir)/AUTHORS-tmp $(distdir)/AUTHORS ; \ + fi diff --git a/bootstrap.conf b/bootstrap.conf index f8b7c4d..c40db3d 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -223,7 +223,8 @@ if `(${PYTHON_CONFIG-python-config} --version; PYTHON_CONFIG=true fi
-# Automake requires that ChangeLog exist. +# Automake requires that ChangeLog and AUTHORS exist. +touch AUTHORS || exit 1 touch ChangeLog || exit 1
Combine these: touch AUTHORS ChangeLog || exit 1 Overall, I like the idea. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
participants (5)
-
Cole Robinson
-
Daniel P. Berrange
-
Doug Goldstein
-
Eric Blake
-
Richard W.M. Jones