[PATCH] patman: add warning for invalid tag

Simon Glass sjg at chromium.org
Wed Jul 21 16:19:26 CEST 2021


Hi Patrick,

On Wed, 21 Jul 2021 at 03:45, Patrick Delaunay
<patrick.delaunay at foss.st.com> wrote:
>
> Add a error in patman tool when the commit message contents an invalid
> tag "Serie-.*" instead of "Series-.*".
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
> ---
> I create this patch to avoid my frequent mistake:
> using "Serie-" tag instead of "Series-" as it is done in [1].
>
> RE_INV_TAG can be extended to other frequent errors.
>
> Any "Serie-" tag is refused with the patch, for example:
>
> ValueError: Line 28: Invalid tag =
>    'Serie-cc: Marek Behún <marek.behun at nic.cz>'
>
> [1] http://patchwork.ozlabs.org/project/uboot/patch/20210720203353.1.I550b95f6d12d59aeef5b744d837dbb360037d39e@changeid/
>
>
>  tools/patman/patchstream.py | 9 +++++++++
>  1 file changed, 9 insertions(+)

This is a great idea! But please do add a test.

>
> diff --git a/tools/patman/patchstream.py b/tools/patman/patchstream.py
> index a44cd861af..b960292427 100644
> --- a/tools/patman/patchstream.py
> +++ b/tools/patman/patchstream.py
> @@ -59,6 +59,9 @@ RE_DIFF = re.compile(r'^>.*diff --git a/(.*) b/(.*)$')
>  # Detect a context line, like '> @@ -153,8 +153,13 @@ CheckPatch
>  RE_LINE = re.compile(r'>.*@@ \-(\d+),\d+ \+(\d+),\d+ @@ *(.*)')
>
> +# Detect line with invalid TAG
> +RE_INV_TAG = re.compile('^Serie-([a-z-]*): *(.*)')
> +
>  # States we can be in - can we use range() and still have comments?
>  STATE_MSG_HEADER = 0        # Still in the message header
>  STATE_PATCH_SUBJECT = 1     # In patch subject (first line of log for a commit)
> @@ -318,6 +321,7 @@ class PatchStream:
>          leading_whitespace_match = RE_LEADING_WHITESPACE.match(line)
>          diff_match = RE_DIFF.match(line)
>          line_match = RE_LINE.match(line)
> +        invalid_match = RE_INV_TAG.match(line)
>          tag_match = None
>          if self.state == STATE_PATCH_HEADER:
>              tag_match = RE_TAG.match(line)
> @@ -471,6 +475,11 @@ class PatchStream:
>                  self._add_warn('Line %d: Ignoring Commit-%s' %
>                                 (self.linenum, name))
>
> +        # Detect invalid tags
> +        elif invalid_match:
> +            raise ValueError("Line %d: Invalid tag = '%s'" %
> +                (self.linenum, line))
> +
>          # Detect the start of a new commit
>          elif commit_match:
>              self._close_commit()
> --
> 2.25.1
>

Regards,
Simon


More information about the U-Boot mailing list