From: W. Trevor King Date: Sun, 16 May 2010 11:26:00 +0000 (-0400) Subject: Use ALIASES and AUTHOR_HACKS handling in update_copyright.update_authors. X-Git-Tag: v0.2~18^2~8 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=cb2971029ec237e61b51d65f035234052f8460fb;p=update-copyright.git Use ALIASES and AUTHOR_HACKS handling in update_copyright.update_authors. The previously generated AUTHORS file was the raw list of VCS commiters. --- diff --git a/update_copyright.py b/update_copyright.py index b96ded0..4909712 100755 --- a/update_copyright.py +++ b/update_copyright.py @@ -1,6 +1,22 @@ #!/usr/bin/python # -# Copyright +# Copyright (C) 2010 W. Trevor King +# +# This file is part of Hooke. +# +# Hooke 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 3 of the License, or (at your option) any later version. +# +# Hooke 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 Hooke. If not, see +# . """Automatically update copyright boilerplate. @@ -162,10 +178,13 @@ def authors(filename, author_hacks=AUTHOR_HACKS): ret.extend(author_hacks[splitpath(filename)]) return ret -def authors_list(): +def authors_list(author_hacks=AUTHOR_HACKS): output,error = mercurial_cmd('log', '--follow', '--template', '{author}\n') - return list(set(output.splitlines())) + ret = list(set(output.splitlines())) + for path,authors in author_hacks.items(): + ret.extend(authors) + return ret def is_versioned(filename): output,error = mercurial_cmd('log', '--follow', @@ -416,9 +435,11 @@ def _set_contents(filename, contents, original_contents=None, dry_run=False, # Update commands def update_authors(authors_fn=authors_list, dry_run=False, verbose=0): + authors = authors_fn() + authors = _replace_aliases(authors, with_email=True, aliases=ALIASES) new_contents = '%s was written by:\n%s\n' % ( PROJECT_INFO['project'], - '\n'.join(authors_fn()) + '\n'.join(authors) ) _set_contents('AUTHORS', new_contents, dry_run=dry_run, verbose=verbose)