From nobody Thu May 2 18:54:33 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+52886+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52886+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1578306945; cv=none; d=zohomail.com; s=zohoarc; b=GA7niDNAw6KQ5dZ/umA7tVmiMcZ7xYiP2J4Wm6ri7QVLO4LtIMdvdf7nWTVQG82zx+1l6EGigMkJ4rBDp9rg+PZ+rFATJOex2Zga6b1zzSZEWBktAx9B/XU+SDUATov3mbEkc25IYvlqCi69DAUccLqh1Jw1rrPNuml+wqQVRCA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1578306945; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=yRv2aiyUpwnMfv3xchPAeEWTzCXB2S2vaN2YQwbyczA=; b=AzKq0WYjLrGhVZVqpWd+MaRv0h6CPIhxjdv+KguCqZvKvkFKkCY48edmL5ArEQlbCdKWOrrIbn1L9EAbWmV7C2K+SiHAo6Ir2jaeKv+twnEHn3dz0fQZPOj0NF1mBTeUO7f5mk9SHLlLIT6k4WgXtqTfsjQ36v23sjmXR3f/BTI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52886+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 157830694548678.14380753326316; Mon, 6 Jan 2020 02:35:45 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id AwYIYY1788612xcLHg3M2CKd; Mon, 06 Jan 2020 02:35:44 -0800 X-Received: from us-smtp-1.mimecast.com (us-smtp-1.mimecast.com [205.139.110.120]) by mx.groups.io with SMTP id smtpd.web09.2046.1578306941879987166 for ; Mon, 06 Jan 2020 02:35:42 -0800 X-Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-228-BFAzwaiqNemlCrUy0F2zQw-1; Mon, 06 Jan 2020 05:35:39 -0500 X-Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id BABA1DB60; Mon, 6 Jan 2020 10:35:38 +0000 (UTC) X-Received: from x1w.redhat.com (ovpn-204-53.brq.redhat.com [10.40.204.53]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 78D2D5D9E1; Mon, 6 Jan 2020 10:35:36 +0000 (UTC) From: =?UTF-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= To: devel@edk2.groups.io Cc: Michael D Kinney , Laszlo Ersek , Philippe Mathieu-Daude , Liming Gao , Jordan Justen Subject: [edk2-devel] [PATCH v2 1/4] BaseTools/PatchCheck.py: Extract email check code to EmailAddressCheck Date: Mon, 6 Jan 2020 11:35:25 +0100 Message-Id: <20200106103528.5438-2-philmd@redhat.com> In-Reply-To: <20200106103528.5438-1-philmd@redhat.com> References: <20200106103528.5438-1-philmd@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-MC-Unique: BFAzwaiqNemlCrUy0F2zQw-1 X-Mimecast-Spam-Score: 0 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,philmd@redhat.com X-Gm-Message-State: m1V1kbDtUL8IazatCOT3je3cx1787277AA= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1578306944; bh=zIacw745kfJyZ7xM5GI9ZpEJ5ZQ7ijCEjW75DDCcsJ8=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=LfgMl7/dB3Hs0dQZUh9hr+LhGp8sXqQTj8GGYLv/wJ9fXYFvmNhwsK66mqpkxANzaAo 9OgeyukSCdsBntWepN/107SXx1wrCzsf0YQCs/3cmD2TvzscQkhjlcLxThaFkGrM1exav SUAzCksAYzmDA3wRQ9pnCAbI411TM4dbAbQ= X-ZohoMail-DKIM: pass (identity @groups.io) As we are going to reuse this code out of the CommitMessageCheck class, extract it in a new class: EmailAddressCheck. Cc: Liming Gao Cc: Jordan Justen Signed-off-by: Philippe Mathieu-Daude Reviewed-by: Bob Feng --- BaseTools/Scripts/PatchCheck.py | 82 +++++++++++++++++++++------------ 1 file changed, 53 insertions(+), 29 deletions(-) diff --git a/BaseTools/Scripts/PatchCheck.py b/BaseTools/Scripts/PatchCheck= .py index 2a4e6f603e79..0e654345fcc8 100755 --- a/BaseTools/Scripts/PatchCheck.py +++ b/BaseTools/Scripts/PatchCheck.py @@ -22,6 +22,58 @@ class Verbose: SILENT, ONELINE, NORMAL =3D range(3) level =3D NORMAL =20 +class EmailAddressCheck: + """Checks an email address.""" + + def __init__(self, email): + self.ok =3D True + + if email is None: + self.error('Email address is missing!') + return + + self.check_email_address(email) + + def error(self, *err): + if self.ok and Verbose.level > Verbose.ONELINE: + print('The email address is not valid:') + self.ok =3D False + if Verbose.level < Verbose.NORMAL: + return + count =3D 0 + for line in err: + prefix =3D (' *', ' ')[count > 0] + print(prefix, line) + count +=3D 1 + + email_re1 =3D re.compile(r'(?:\s*)(.*?)(\s*)<(.+)>\s*$', + re.MULTILINE|re.IGNORECASE) + + def check_email_address(self, email): + email =3D email.strip() + mo =3D self.email_re1.match(email) + if mo is None: + self.error("Email format is invalid: " + email.strip()) + return + + name =3D mo.group(1).strip() + if name =3D=3D '': + self.error("Name is not provided with email address: " + + email) + else: + quoted =3D len(name) > 2 and name[0] =3D=3D '"' and name[-1] = =3D=3D '"' + if name.find(',') >=3D 0 and not quoted: + self.error('Add quotes (") around name with a comma: ' + + name) + + if mo.group(2) =3D=3D '': + self.error("There should be a space between the name and " + + "email address: " + email) + + if mo.group(3).find(' ') >=3D 0: + self.error("The email address cannot contain a space: " + + mo.group(3)) + class CommitMessageCheck: """Checks the contents of a git commit message.""" =20 @@ -121,38 +173,10 @@ class CommitMessageCheck: if s[2] !=3D ' ': self.error("There should be a space after '" + sig + ":'") =20 - self.check_email_address(s[3]) + EmailAddressCheck(s[3]) =20 return sigs =20 - email_re1 =3D re.compile(r'(?:\s*)(.*?)(\s*)<(.+)>\s*$', - re.MULTILINE|re.IGNORECASE) - - def check_email_address(self, email): - email =3D email.strip() - mo =3D self.email_re1.match(email) - if mo is None: - self.error("Email format is invalid: " + email.strip()) - return - - name =3D mo.group(1).strip() - if name =3D=3D '': - self.error("Name is not provided with email address: " + - email) - else: - quoted =3D len(name) > 2 and name[0] =3D=3D '"' and name[-1] = =3D=3D '"' - if name.find(',') >=3D 0 and not quoted: - self.error('Add quotes (") around name with a comma: ' + - name) - - if mo.group(2) =3D=3D '': - self.error("There should be a space between the name and " + - "email address: " + email) - - if mo.group(3).find(' ') >=3D 0: - self.error("The email address cannot contain a space: " + - mo.group(3)) - def check_signed_off_by(self): sob=3D'Signed-off-by' if self.msg.find(sob) < 0: --=20 2.21.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52886): https://edk2.groups.io/g/devel/message/52886 Mute This Topic: https://groups.io/mt/69462074/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 2 18:54:33 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+52887+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52887+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1578306948; cv=none; d=zohomail.com; s=zohoarc; b=nHmGnj4ev+8wEnlLYKHdV6CdokTOeGObjdNRfi1sW6OdEHgvIpcNl3AWvLmxpaxHz/y/QJL81GkmpXosw65LWQqICwTwxifhzkZ7tRb/lzioq6jvpmT/SUAhng6jIck4qIAdC6ugI+JqYJdbr17Hhn67iXjdX4lQJeyqUo/Ri3M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1578306948; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=ll6APJErhLldiedaZ4hvFlVBN3IAorVnr4ym3HVIYsU=; b=nHmUm9nx4kFHnq1+yBE/MVOsT7aD14q00S6m+dbayryKseTO6pKNzQhfNX6XCS2sDBG9/MfR2owalu5KiuY/4ieJ9B7LrPVZIDmGs/Ctazc7EzkyqzwSUKo6wF27EJ/SY22hGQT8Yx/lhoy/0FW3Dbe3Wu06lRXX7teqY34y+RI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52887+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1578306948359932.3030112639914; Mon, 6 Jan 2020 02:35:48 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id 5J6VYY1788612x2NaMUosnS9; Mon, 06 Jan 2020 02:35:47 -0800 X-Received: from us-smtp-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.61]) by mx.groups.io with SMTP id smtpd.web10.1987.1578306947225055899 for ; Mon, 06 Jan 2020 02:35:47 -0800 X-Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-390-eYx6kxApM6OqdIdhrt0bUQ-1; Mon, 06 Jan 2020 05:35:43 -0500 X-Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4B5C61005502; Mon, 6 Jan 2020 10:35:42 +0000 (UTC) X-Received: from x1w.redhat.com (ovpn-204-53.brq.redhat.com [10.40.204.53]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 31F0E5D9D6; Mon, 6 Jan 2020 10:35:38 +0000 (UTC) From: =?UTF-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= To: devel@edk2.groups.io Cc: Michael D Kinney , Laszlo Ersek , Philippe Mathieu-Daude , Liming Gao , Jordan Justen Subject: [edk2-devel] [PATCH v2 2/4] BaseTools/PatchCheck.py: Let EmailAddressCheck describe email checked Date: Mon, 6 Jan 2020 11:35:26 +0100 Message-Id: <20200106103528.5438-3-philmd@redhat.com> In-Reply-To: <20200106103528.5438-1-philmd@redhat.com> References: <20200106103528.5438-1-philmd@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-MC-Unique: eYx6kxApM6OqdIdhrt0bUQ-1 X-Mimecast-Spam-Score: 0 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,philmd@redhat.com X-Gm-Message-State: esm7SH0vXikWYxFA9TdxS3Wux1787277AA= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1578306947; bh=Youn3VXpi+IrqP7YMF2Jina1zFowUoP2/oRCT31xmNU=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=epQQ/95ny7UIdKE1c2bIziwZjpvHfSHlClikekGjNXlHbamOPSnjBYwMhUSwSuRETFm q4CxbVjI65b1KFXUQ7v98Vm2RNToW2HPhyGYiBepRUjeh0AkRPOYy6PZnNy/vMe8xD4Va ubpru9sl18igpIerxF5+h0LB2x5YdwdavOI= X-ZohoMail-DKIM: pass (identity @groups.io) We are checking different emails from the signature list. We are going to check more. To be able to differency, add a description field, so the error reported is clearer. Cc: Liming Gao Cc: Jordan Justen Signed-off-by: Philippe Mathieu-Daude Reviewed-by: Bob Feng --- BaseTools/Scripts/PatchCheck.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/BaseTools/Scripts/PatchCheck.py b/BaseTools/Scripts/PatchCheck= .py index 0e654345fcc8..a0ff5ec0038a 100755 --- a/BaseTools/Scripts/PatchCheck.py +++ b/BaseTools/Scripts/PatchCheck.py @@ -25,18 +25,22 @@ class Verbose: class EmailAddressCheck: """Checks an email address.""" =20 - def __init__(self, email): + def __init__(self, email, description): self.ok =3D True =20 if email is None: self.error('Email address is missing!') return + if description is None: + self.error('Email description is missing!') + return =20 + self.description =3D "'" + description + "'" self.check_email_address(email) =20 def error(self, *err): if self.ok and Verbose.level > Verbose.ONELINE: - print('The email address is not valid:') + print('The ' + self.description + ' email address is not valid= :') self.ok =3D False if Verbose.level < Verbose.NORMAL: return @@ -173,7 +177,7 @@ class CommitMessageCheck: if s[2] !=3D ' ': self.error("There should be a space after '" + sig + ":'") =20 - EmailAddressCheck(s[3]) + EmailAddressCheck(s[3], sig) =20 return sigs =20 --=20 2.21.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52887): https://edk2.groups.io/g/devel/message/52887 Mute This Topic: https://groups.io/mt/69462075/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 2 18:54:33 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+52888+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52888+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1578306948; cv=none; d=zohomail.com; s=zohoarc; b=NbVGS2E8gk9NbbnNhMKpIVkCOKNxcuwIAMEWaUJjsgwQJD1N/oTDiFXffUtTqh9IMsdljnDu1q9DjdPRu/0/xFcTCokPtKGns8UzmgScYDGBiLyb8y/D5KzoremM/y1J2wMBXAwEn3EsqYiO6aK8Lzy0TTpT6sLfobfyN6pMIMs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1578306948; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=SuvORUq+lwRMcchXJnDEq5I6N/Mez4eVfiYa8g6d6VY=; b=FyvXmQwRWLaDJ3gYHJKHCbKDQ3XZSHQdzPb/gfybwDADXTm2jcKicHYEL0J/ryoNq21QWTxf+C5Vo04JhEtNgCYRZN63VJknkZ3ZY0SE/902wB88ZL2IjSzEOften2CPumHHXqAa+NuY5MwKflLdRvLwnWxzQuZf66E7AYHiNEY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52888+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1578306948898883.4244199861782; Mon, 6 Jan 2020 02:35:48 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id GJFLYY1788612x071jpraGcJ; Mon, 06 Jan 2020 02:35:48 -0800 X-Received: from us-smtp-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.61]) by mx.groups.io with SMTP id smtpd.web12.2050.1578306947814702369 for ; Mon, 06 Jan 2020 02:35:48 -0800 X-Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-156-fTgOwv0pPXeeVTFofx-Hmw-1; Mon, 06 Jan 2020 05:35:45 -0500 X-Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8863B107ACC7; Mon, 6 Jan 2020 10:35:44 +0000 (UTC) X-Received: from x1w.redhat.com (ovpn-204-53.brq.redhat.com [10.40.204.53]) by smtp.corp.redhat.com (Postfix) with ESMTPS id ACC985D9E1; Mon, 6 Jan 2020 10:35:42 +0000 (UTC) From: =?UTF-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= To: devel@edk2.groups.io Cc: Michael D Kinney , Laszlo Ersek , Philippe Mathieu-Daude , Liming Gao , Jordan Justen Subject: [edk2-devel] [PATCH v2 3/4] BaseTools/PatchCheck.py: Check the patch author email address Date: Mon, 6 Jan 2020 11:35:27 +0100 Message-Id: <20200106103528.5438-4-philmd@redhat.com> In-Reply-To: <20200106103528.5438-1-philmd@redhat.com> References: <20200106103528.5438-1-philmd@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-MC-Unique: fTgOwv0pPXeeVTFofx-Hmw-1 X-Mimecast-Spam-Score: 0 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,philmd@redhat.com X-Gm-Message-State: lvjfPFZYsDCQTIYTji5skg4hx1787277AA= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1578306948; bh=XT3klPzu1Fv4JNPrlCCFNzli90vW5mhbt1jV8dvGdKY=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=tgJUG/hEwMv9CEPXP3eJ7wq9MeK6jlvHCzsqTIls5ipl1cUW5uLcIlDLX7vSRF+LGup Sun+xFaBaKR+uXsXr6Mhwguw97u1PYFGQRHrwqaAT2GiTvJEIteawhiXT9PbkqsFH2CuF HRW/cRvpINyILKlkXmFj8geFXrLbtoojfK4= X-ZohoMail-DKIM: pass (identity @groups.io) To avoid patches committed with incorrect email address, use the EmailAddressCheck class on the author email too. Example: $ python BaseTools/Scripts/PatchCheck.py 1a04951309f Checking git commit: 1a04951309f The 'Author' email address is not valid: * The email address cannot contain a space: /o=3DIntel/ou=3DExternal \ (FYDIBOHF25SPDLT)/cn=3DRecipients/cn=3Dfe425ca7e5f4401abed22b904fe5d964 Cc: Liming Gao Cc: Jordan Justen Signed-off-by: Philippe Mathieu-Daude Reviewed-by: Bob Feng --- BaseTools/Scripts/PatchCheck.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/BaseTools/Scripts/PatchCheck.py b/BaseTools/Scripts/PatchCheck= .py index a0ff5ec0038a..f0e661bfd6e3 100755 --- a/BaseTools/Scripts/PatchCheck.py +++ b/BaseTools/Scripts/PatchCheck.py @@ -450,6 +450,9 @@ class CheckOnePatch: self.patch =3D patch self.find_patch_pieces() =20 + email_check =3D EmailAddressCheck(self.author_email, 'Author') + email_ok =3D email_check.ok + msg_check =3D CommitMessageCheck(self.commit_subject, self.commit_= msg) msg_ok =3D msg_check.ok =20 @@ -458,7 +461,7 @@ class CheckOnePatch: diff_check =3D GitDiffCheck(self.diff) diff_ok =3D diff_check.ok =20 - self.ok =3D msg_ok and diff_ok + self.ok =3D email_ok and msg_ok and diff_ok =20 if Verbose.level =3D=3D Verbose.ONELINE: if self.ok: @@ -536,6 +539,8 @@ class CheckOnePatch: self.commit_subject =3D self.commit_subject.replace('\n', '') self.commit_subject =3D self.subject_prefix_re.sub('', self.commit= _subject, 1) =20 + self.author_email =3D pmail['from'] + class CheckGitCommits: """Reads patches from git based on the specified git revision range. =20 --=20 2.21.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52888): https://edk2.groups.io/g/devel/message/52888 Mute This Topic: https://groups.io/mt/69462076/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 2 18:54:33 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+52889+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52889+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1578306951; cv=none; d=zohomail.com; s=zohoarc; b=PFIFbJsKcKMJtrDT8YIYkk8GECML3MWCc3w0Vwqz+ehKmeeLchkP4WiTAmekWHBOtu/9IIuow/PVsfMOVkUScPuI+clnzF4u5mY3PZRSQ8LSwFUwNbJcjEz9gWRy+2PlsUf5fkZ4CofP8De4oY7zHVPuxNxkonXn+JCT/BU53zU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1578306951; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=WdqTugBozZRbkCvDvNWXDrAJZI0wDaNsXtPblhBdCFY=; b=KVE0XYkkXBPdpwp+6JmKYFaMAQXKOs22ZPe6tJiL+uzugBV16/ajjReR95RDpc5S+VbydgOE7jQn7G2W91ynRVBTp10ae1m0kVQj8HeHSVLZ57Nix+BW6z7NaUuN0nCURLxw2ggsOX6R2PMTjNvaHpOT9YBstGaPzlEle/NhJPI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52889+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1578306951863182.40288200681834; Mon, 6 Jan 2020 02:35:51 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id T7ECYY1788612xrKb35caAei; Mon, 06 Jan 2020 02:35:51 -0800 X-Received: from us-smtp-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.61]) by mx.groups.io with SMTP id smtpd.web11.2068.1578306950637382217 for ; Mon, 06 Jan 2020 02:35:50 -0800 X-Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-162-aqGmy-_NNxefC0DAH9ubVw-1; Mon, 06 Jan 2020 05:35:48 -0500 X-Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8B419107ACE3; Mon, 6 Jan 2020 10:35:47 +0000 (UTC) X-Received: from x1w.redhat.com (ovpn-204-53.brq.redhat.com [10.40.204.53]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 13F805D9E1; Mon, 6 Jan 2020 10:35:44 +0000 (UTC) From: =?UTF-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= To: devel@edk2.groups.io Cc: Michael D Kinney , Laszlo Ersek , Philippe Mathieu-Daude , Liming Gao , Jordan Justen Subject: [edk2-devel] [PATCH v2 4/4] BaseTools/PatchCheck.py: Check the committer email address Date: Mon, 6 Jan 2020 11:35:28 +0100 Message-Id: <20200106103528.5438-5-philmd@redhat.com> In-Reply-To: <20200106103528.5438-1-philmd@redhat.com> References: <20200106103528.5438-1-philmd@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-MC-Unique: aqGmy-_NNxefC0DAH9ubVw-1 X-Mimecast-Spam-Score: 0 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,philmd@redhat.com X-Gm-Message-State: uFRViWqMyfqnrpHbR7eIt7Bqx1787277AA= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1578306951; bh=vlkFNRyudc0Y6JaXoc8+UyADaLuNjsoyNTYnzjOrfZo=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=lpe6MenqccwtwHPkYZADPYEj6VKEBL9JnnkA/7ZjKct7rYgJzi9ta+Ypun+3ZBqqifX e/gauB7FeYErgNg8uOJJeRfpFLGet7ODFIghn4rVnu0e29XyiEaUpYRgOEky29iVEzmAo glvdI/O3vFtJ8Dq7kp5XnJYQtlkGV0YzjS4= X-ZohoMail-DKIM: pass (identity @groups.io) To avoid patches committed with incorrect email address, use the EmailAddressCheck class on the committer email too. Cc: Liming Gao Cc: Jordan Justen Signed-off-by: Philippe Mathieu-Daude Reviewed-by: Bob Feng --- v2: Do not use "" because we use subprocess.Popen (Jordan Justen) --- BaseTools/Scripts/PatchCheck.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/BaseTools/Scripts/PatchCheck.py b/BaseTools/Scripts/PatchCheck= .py index f0e661bfd6e3..c5f2f89e4d4c 100755 --- a/BaseTools/Scripts/PatchCheck.py +++ b/BaseTools/Scripts/PatchCheck.py @@ -560,6 +560,8 @@ class CheckGitCommits: else: blank_line =3D True print('Checking git commit:', commit) + email =3D self.read_committer_email_address_from_git(commit) + self.ok &=3D EmailAddressCheck(email, 'Committer').ok patch =3D self.read_patch_from_git(commit) self.ok &=3D CheckOnePatch(commit, patch).ok if not commits: @@ -578,6 +580,10 @@ class CheckGitCommits: # Run git to get the commit patch return self.run_git('show', '--pretty=3Demail', '--no-textconv', c= ommit) =20 + def read_committer_email_address_from_git(self, commit): + # Run git to get the committer email + return self.run_git('show', '--pretty=3D%cn <%ce>', '--no-patch', = commit) + def run_git(self, *args): cmd =3D [ 'git' ] cmd +=3D args --=20 2.21.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52889): https://edk2.groups.io/g/devel/message/52889 Mute This Topic: https://groups.io/mt/69462077/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-