diff options
Diffstat (limited to 'RepSys/log.py')
-rw-r--r-- | RepSys/log.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/RepSys/log.py b/RepSys/log.py index 2eadbe2..ca1d107 100644 --- a/RepSys/log.py +++ b/RepSys/log.py @@ -45,7 +45,7 @@ $line #end for #for $author in $rel.authors - #if $author.revisions and not $author.revisions[0].lines + #if not $author.visible #continue #end if ##alternatively, one could use: @@ -176,6 +176,7 @@ class _Author: name = None email = None revisions = None + visible = False def group_releases_by_author(releases): @@ -196,13 +197,14 @@ def group_releases_by_author(releases): author.name = revs[0].author_name author.email = revs[0].author_email author.revisions = revs + # #41117: mark those authors without visible messages + author.visible = bool(sum(len(rev.lines) for rev in revs)) revlatest = author.revisions[0] # keep the latest revision even for completely invisible # authors (below) if latest is None or revlatest.revision > latest.revision: latest = revlatest - count = sum(len(rev.lines) for rev in author.revisions) - if count == 0: + if not author.visible: # only sort those visible authors, invisible ones are used # only in "latest" continue @@ -302,11 +304,11 @@ def make_release(author=None, revision=None, date=None, lines=None, rel.visible = False for entry in entries: lines = filter_log_lines(entry.lines) - if lines: - rel.visible = True revision = _Revision() revision.revision = entry.revision revision.lines = format_lines(lines) + if revision.lines: + rel.visible = True revision.date = parse_raw_date(entry.date) revision.raw_date = entry.date revision.author = entry.author |