aboutsummaryrefslogtreecommitdiffstats
path: root/RepSys
diff options
context:
space:
mode:
authorBogdano Arendartchuk <bogdano@mandriva.org>2007-11-08 16:30:08 +0000
committerBogdano Arendartchuk <bogdano@mandriva.org>2007-11-08 16:30:08 +0000
commit0b923f7cebcdb0f9435c0961a08c537fad7608e0 (patch)
treeeb3e2ce99d37cd130fcb3eb9b735e571f0f3cf50 /RepSys
parente5ac8131f63ee32d79c2d4e8232cd8d047add24c (diff)
downloadmgarepo-0b923f7cebcdb0f9435c0961a08c537fad7608e0.tar
mgarepo-0b923f7cebcdb0f9435c0961a08c537fad7608e0.tar.gz
mgarepo-0b923f7cebcdb0f9435c0961a08c537fad7608e0.tar.bz2
mgarepo-0b923f7cebcdb0f9435c0961a08c537fad7608e0.tar.xz
mgarepo-0b923f7cebcdb0f9435c0961a08c537fad7608e0.zip
Added the complement to SILENT: CLOG
When using CLOG, only those lines beginning with this token will be shown. It only works when enabled in repsys.conf.
Diffstat (limited to 'RepSys')
-rw-r--r--RepSys/log.py26
1 files changed, 19 insertions, 7 deletions
diff --git a/RepSys/log.py b/RepSys/log.py
index 009e4e0..10026c3 100644
--- a/RepSys/log.py
+++ b/RepSys/log.py
@@ -246,13 +246,25 @@ def parse_raw_date(rawdate):
return time.strftime("%a %b %d %Y", rawdate)
def filter_log_lines(lines):
- # lines in commit messages containing SILENT at any position will be
- # skipped; commits with their log messages beggining with SILENT in the
- # first positionj of the first line will have all lines ignored.
- ignstr = config.get("log", "ignore-string", "SILENT")
- if len(lines) and lines[0].startswith(ignstr):
- return []
- filtered = [line for line in lines if ignstr not in line]
+ # Lines in commit messages beginning with CLOG will be the only shown
+ # in the changelog. These lines will have the CLOG token and blanks
+ # stripped from the beginning.
+ onlylines = None
+ clogstr = config.get("log", "unignore-string")
+ if clogstr:
+ clogre = re.compile(r"(^%s[^ \t]?[ \t])" % clogstr)
+ onlylines = [clogre.sub("", line)
+ for line in lines if line.startswith(clogstr)]
+ if onlylines:
+ filtered = onlylines
+ else:
+ # Lines in commit messages containing SILENT at any position will be
+ # skipped; commits with their log messages beggining with SILENT in the
+ # first positionj of the first line will have all lines ignored.
+ ignstr = config.get("log", "ignore-string", "SILENT")
+ if len(lines) and lines[0].startswith(ignstr):
+ return []
+ filtered = [line for line in lines if ignstr not in line]
return filtered