From: "Michael Kubacki" <mikuback@linux.microsoft.com>
To: devel@edk2.groups.io, ardb@kernel.org
Cc: Leif Lindholm <quic_llindhol@quicinc.com>,
"Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] [RFC PATCH] ArmPkg: Enable AuditMode for Uncrustify CI checks
Date: Fri, 2 Jun 2023 11:18:26 -0400 [thread overview]
Message-ID: <c700b5bb-6ae9-295c-b2c0-290cf7eaaddd@linux.microsoft.com> (raw)
In-Reply-To: <20230602085136.3552790-1-ardb@kernel.org>
Hi Ard,
Are there particular areas that could be improved to make it more usable
for you? I'm trying to find actionable improvements that can be made, if
any.
I know it's not perfect but developers can run it with a single keyboard
shortcut and it's been useful internally for eliminating style minutia
from distracting design and correctness conversation in code reviews.
> - finding out from the web UI what exactly Uncrustify objected to is not
> straight-forward.
>
This should not be necessary. It can be run locally to produce the same
result as in CI.
IDE-specific, but a lot of people use VS Code with the Uncrustify
extension
(https://marketplace.visualstudio.com/items?itemName=zachflower.uncrustify)
and that allows Uncrustify to be run against the open source file by
simply pressing the "code formatter" command.
I usually write the code stage or commit it and then run this command on
the file. The code is formatted and it gives a normal local diff of
exactly what Uncrustify changed.
On 6/2/2023 4:51 AM, Ard Biesheuvel wrote:
> Uncrustify checks are too rigid, making them counter-productive:
>
> - it leads to code that is arguably harder to parse visually (e.g.,
> the changes to ArmPkg/Include/Chipset/AArch64Mmu.h in commit
> 429309e0c6b74792)
Looking at commit 7f198321eec0f520373, I see positive changes like in
ArmCrashDumpDxe.c spacing in the ASSERT calls and treatment of
multi-line parameter formatting in the mCpu->RegisterInterruptHandler()
call are consistent.
That carries on for a number of C calls with inconsistent spacing before
opening parentheses and calls such as those to the DEBUG macro which I
find easier to read separating each parameter on a dedicated line.
In AArch64Mmu.h, I agree that preserving the (mostly) global column as
opposed to block-specific columns would be easier to vertically scan. Is
that the main issue in the file?
> - it forces indentation-only changes to code in the vicinity of actual
> changes, making the code history more bloated than necessary (see
> commit 7f198321eec0f520373 for an example)
> - finding out from the web UI what exactly Uncrustify objected to is not
> straight-forward.
>
> So let's enable AuditMode for ArmPkg, so that interested parties can see
> the uncrustify recommendations if desired, but without preventing the
> changes from being merged. This leaves it at the discretion of the
> ArmPkg maintainers to decide which level of conformance is required.
>
> Cc: Leif Lindholm <quic_llindhol@quicinc.com>
> Cc: "Kinney, Michael D" <michael.d.kinney@intel.com>
> Cc: Michael Kubacki <mikuback@linux.microsoft.com>
> Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
> ---
> ArmPkg/ArmPkg.ci.yaml | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/ArmPkg/ArmPkg.ci.yaml b/ArmPkg/ArmPkg.ci.yaml
> index 24db7425051388cf..d3124816118944cb 100644
> --- a/ArmPkg/ArmPkg.ci.yaml
> +++ b/ArmPkg/ArmPkg.ci.yaml
> @@ -239,5 +239,10 @@
> ],
>
> "AdditionalIncludePaths": [] # Additional paths to spell check
>
> # (wildcards supported)
>
> + },
>
> +
>
> + # options defined in .pytool/Plugin/UncrustifyCheck
>
> + "UncrustifyCheck": {
>
> + "AuditOnly": True
>
> }
>
> }
>
next prev parent reply other threads:[~2023-06-02 15:18 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-02 8:51 [RFC PATCH] ArmPkg: Enable AuditMode for Uncrustify CI checks Ard Biesheuvel
2023-06-02 9:34 ` Leif Lindholm
2023-06-02 15:18 ` Michael Kubacki [this message]
[not found] ` <1764E0991FEF04DA.11185@groups.io>
2023-06-02 15:22 ` [edk2-devel] " Michael Kubacki
2023-06-02 15:26 ` Michael Kubacki
2023-06-02 15:50 ` Ard Biesheuvel
2023-06-02 16:52 ` Michael Kubacki
2023-06-21 10:41 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c700b5bb-6ae9-295c-b2c0-290cf7eaaddd@linux.microsoft.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox