From cb2971029ec237e61b51d65f035234052f8460fb Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Sun, 16 May 2010 07:26:00 -0400 Subject: [PATCH] Use ALIASES and AUTHOR_HACKS handling in update_copyright.update_authors. The previously generated AUTHORS file was the raw list of VCS commiters. --- update_copyright.py | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) 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) -- 2.26.2