|
@@ -22,6 +22,25 @@ GCLIENT_PATH = os.path.join(
|
|
|
os.path.dirname(os.path.abspath(__file__)), 'gclient.py')
|
|
|
|
|
|
|
|
|
+# Commit subject that will be considered a roll. In the format generated by the
|
|
|
+# git log used, so it's "<year>-<month>-<day> <author> <subject>"
|
|
|
+_ROLL_SUBJECT = re.compile(
|
|
|
+ # Date
|
|
|
+ r'^\d\d\d\d-\d\d-\d\d '
|
|
|
+ # Author
|
|
|
+ r'[^ ]+ '
|
|
|
+ # Subject
|
|
|
+ r'('
|
|
|
+ # Generated by
|
|
|
+ # https://skia.googlesource.com/buildbot/+/master/autoroll/go/repo_manager/deps_repo_manager.go
|
|
|
+ r'Roll [^ ]+ [a-f0-9]+\.\.[a-f0-9]+ \(\d+ commits\)'
|
|
|
+ r'|'
|
|
|
+ # Generated by
|
|
|
+ # https://chromium.googlesource.com/infra/infra/+/master/recipes/recipe_modules/recipe_autoroller/api.py
|
|
|
+ r'Roll recipe dependencies \(trivial\)\.'
|
|
|
+ r')$')
|
|
|
+
|
|
|
+
|
|
|
class Error(Exception):
|
|
|
pass
|
|
|
|
|
@@ -90,10 +109,7 @@ def generate_commit_message(
|
|
|
cwd=full_dir).rstrip()
|
|
|
logs = re.sub(r'(?m)^(\d\d\d\d-\d\d-\d\d [^@]+)@[^ ]+( .*)$', r'\1\2', logs)
|
|
|
lines = logs.splitlines()
|
|
|
- cleaned_lines = [
|
|
|
- l for l in lines
|
|
|
- if not l.endswith('Roll recipe dependencies (trivial).')
|
|
|
- ]
|
|
|
+ cleaned_lines = [l for l in lines if not _ROLL_SUBJECT.match(l)]
|
|
|
logs = '\n'.join(cleaned_lines) + '\n'
|
|
|
|
|
|
nb_commits = len(lines)
|