diff options
author | Tobias Burnus <tobias@codesourcery.com> | 2023-09-07 12:35:02 +0200 |
---|---|---|
committer | Tobias Burnus <tobias@codesourcery.com> | 2023-09-07 12:39:39 +0200 |
commit | ff20bce9f5879878f352f1fcd6ade023a2067598 (patch) | |
tree | e5be16d15c1a8f9922f1bd11797b864cd8e61feb /contrib/gcc-changelog | |
parent | 1aee5d2ace9ea8f35baf5b18e36caf44fe018ea3 (diff) | |
download | gcc-ff20bce9f5879878f352f1fcd6ade023a2067598.zip gcc-ff20bce9f5879878f352f1fcd6ade023a2067598.tar.gz gcc-ff20bce9f5879878f352f1fcd6ade023a2067598.tar.bz2 |
contrib/gcc-changelog: Check whether revert-commit exists
contrib/ChangeLog:
* gcc-changelog/git_commit.py (GitCommit.__init__):
Handle commit_to_info_hook = None; otherwise, if None,
regard it as error.
(to_changelog_entries): Handle commit_to_info_hook = None;
if info is None, create a warning for it.
* gcc-changelog/git_email.py (GitEmail.__init__):
call super() with commit_to_info_hook=None instead
of a lamda function.
Diffstat (limited to 'contrib/gcc-changelog')
-rwxr-xr-x | contrib/gcc-changelog/git_commit.py | 20 | ||||
-rwxr-xr-x | contrib/gcc-changelog/git_email.py | 3 |
2 files changed, 16 insertions, 7 deletions
diff --git a/contrib/gcc-changelog/git_commit.py b/contrib/gcc-changelog/git_commit.py index 4f31310..9110317 100755 --- a/contrib/gcc-changelog/git_commit.py +++ b/contrib/gcc-changelog/git_commit.py @@ -329,11 +329,15 @@ class GitCommit: self.revert_commit = m.group('hash') break if self.revert_commit: + # The following happens for get_email.py: + if not self.commit_to_info_hook: + self.warnings.append(f"Invoked script can not obtain info about " + f"reverted commits such as '{self.revert_commit}'") + return self.info = self.commit_to_info_hook(self.revert_commit) - - # The following happens for get_email.py: - if not self.info: - return + if not self.info: + self.errors.append(Error('Cannot find to-be-reverted commit', self.revert_commit)) + return self.check_commit_email() @@ -796,12 +800,18 @@ class GitCommit: orig_date = self.original_info.date current_timestamp = orig_date.strftime(DATE_FORMAT) elif self.cherry_pick_commit: - info = self.commit_to_info_hook(self.cherry_pick_commit) + info = (self.commit_to_info_hook + and self.commit_to_info_hook(self.cherry_pick_commit)) # it can happen that it is a cherry-pick for a different # repository if info: timestamp = info.date.strftime(DATE_FORMAT) else: + if self.commit_to_info_hook: + self.warnings.append(f"Cherry-picked commit not found: '{self.cherry_pick_commit}'") + else: + self.warnings.append(f"Invoked script can not obtain info about " + f"cherry-picked commits such as '{self.revert_commit}'") timestamp = current_timestamp elif not timestamp or use_commit_ts: timestamp = current_timestamp diff --git a/contrib/gcc-changelog/git_email.py b/contrib/gcc-changelog/git_email.py index 49f41f2..93808df 100755 --- a/contrib/gcc-changelog/git_email.py +++ b/contrib/gcc-changelog/git_email.py @@ -89,8 +89,7 @@ class GitEmail(GitCommit): t = 'M' modified_files.append((target if t != 'D' else source, t)) git_info = GitInfo(None, date, author, message, modified_files) - super().__init__(git_info, - commit_to_info_hook=lambda x: None) + super().__init__(git_info, commit_to_info_hook=None) def show_help(): |