mirror of https://github.com/acidanthera/audk.git
BaseTools/Scripts/PatchCheck.py: Check for Change-id
Code review tools like gerrit might use a 'Change-id' tag to track the evolution of patches. This tag should be removed before submitting a patch to the mailing-list. It has been observed that contributors sometimes forget to remove this tag. Add a check in PatchCheck.py to automate this. Also add a '--ignore-change-id' command line parameter to ignore the above check. Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com> Acked-by: Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by: Yuwei Chen <yuwei.chen@intel.com> Reviewed-by: Rebecca Cran <rebecca@bsdio.com>
This commit is contained in:
parent
141dcaed6c
commit
056b4bf74b
BaseTools/Scripts
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 2015 - 2021, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2015 - 2021, Intel Corporation. All rights reserved.<BR>
|
||||||
# Copyright (C) 2020, Red Hat, Inc.<BR>
|
# Copyright (C) 2020, Red Hat, Inc.<BR>
|
||||||
# Copyright (c) 2020, ARM Ltd. All rights reserved.<BR>
|
# Copyright (c) 2020 - 2023, Arm Limited. All rights reserved.<BR>
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
#
|
#
|
||||||
|
@ -26,6 +26,9 @@ class Verbose:
|
||||||
SILENT, ONELINE, NORMAL = range(3)
|
SILENT, ONELINE, NORMAL = range(3)
|
||||||
level = NORMAL
|
level = NORMAL
|
||||||
|
|
||||||
|
class PatchCheckConf:
|
||||||
|
ignore_change_id = False
|
||||||
|
|
||||||
class EmailAddressCheck:
|
class EmailAddressCheck:
|
||||||
"""Checks an email address."""
|
"""Checks an email address."""
|
||||||
|
|
||||||
|
@ -111,6 +114,8 @@ class CommitMessageCheck:
|
||||||
self.check_signed_off_by()
|
self.check_signed_off_by()
|
||||||
self.check_misc_signatures()
|
self.check_misc_signatures()
|
||||||
self.check_overall_format()
|
self.check_overall_format()
|
||||||
|
if not PatchCheckConf.ignore_change_id:
|
||||||
|
self.check_change_id_format()
|
||||||
self.report_message_result()
|
self.report_message_result()
|
||||||
|
|
||||||
url = 'https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format'
|
url = 'https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format'
|
||||||
|
@ -307,6 +312,12 @@ class CommitMessageCheck:
|
||||||
break
|
break
|
||||||
last_sig_line = line.strip()
|
last_sig_line = line.strip()
|
||||||
|
|
||||||
|
def check_change_id_format(self):
|
||||||
|
cid='Change-Id:'
|
||||||
|
if self.msg.find(cid) != -1:
|
||||||
|
self.error('\"%s\" found in commit message:' % cid)
|
||||||
|
return
|
||||||
|
|
||||||
(START, PRE_PATCH, PATCH) = range(3)
|
(START, PRE_PATCH, PATCH) = range(3)
|
||||||
|
|
||||||
class GitDiffCheck:
|
class GitDiffCheck:
|
||||||
|
@ -780,11 +791,16 @@ class PatchCheckApp:
|
||||||
group.add_argument("--silent",
|
group.add_argument("--silent",
|
||||||
action="store_true",
|
action="store_true",
|
||||||
help="Print nothing")
|
help="Print nothing")
|
||||||
|
group.add_argument("--ignore-change-id",
|
||||||
|
action="store_true",
|
||||||
|
help="Ignore the presence of 'Change-Id:' tags in commit message")
|
||||||
self.args = parser.parse_args()
|
self.args = parser.parse_args()
|
||||||
if self.args.oneline:
|
if self.args.oneline:
|
||||||
Verbose.level = Verbose.ONELINE
|
Verbose.level = Verbose.ONELINE
|
||||||
if self.args.silent:
|
if self.args.silent:
|
||||||
Verbose.level = Verbose.SILENT
|
Verbose.level = Verbose.SILENT
|
||||||
|
if self.args.ignore_change_id:
|
||||||
|
PatchCheckConf.ignore_change_id = True
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
sys.exit(PatchCheckApp().retval)
|
sys.exit(PatchCheckApp().retval)
|
||||||
|
|
Loading…
Reference in New Issue