[libvirt] [PATCH v3 05/22] build-aux: rewrite whitespace checker in Python
Peter Krempa
pkrempa at redhat.com
Fri Sep 27 10:19:55 UTC 2019
On Fri, Sep 27, 2019 at 10:33:45 +0100, Daniel Berrange wrote:
> On Thu, Sep 26, 2019 at 06:08:14PM +0200, Ján Tomko wrote:
> > On Tue, Sep 24, 2019 at 03:58:46PM +0100, Daniel P. Berrangé wrote:
> > > As part of an goal to eliminate Perl from libvirt build tools,
> > > rewrite the check-spacing.pl tool in Python.
> > >
> > > This was a straight conversion, manually going line-by-line to
> > > change the syntax from Perl to Python. Thus the overall structure
> > > of the file and approach is the same.
> > >
> > > Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
> > > ---
[...]
> > I have played with clang-format to try to match our style, the main
> > problems seem to be:
> > * pre-processor directives are indented by the same offset as code
> > (I see that cppi is specifically intended to add just one space)
>
> That's an interesting approach. I wouldn't object to such indentation
> style myself.
>
> > * function calls sometimes leave an empty opening parenthesis
>
> > * always rewrapping function arguments might create unnecessary churn
> > * parameters wrapping might not be smart enough, e.g. we like to do
> > virReportError(VIR_ERR_CODE, "%s",
> > _("string"));
> > in a lot of places.
>
> Yeah these last two points are the ones I struggled with too when I
> looked at clang-format 6 months back.
>
> The churn does worry me as it would make cherry-picking patches a
> big pain for downstreams.
>
> In the long term I think we'd win by having an explicit code formatting
> tool that everyone is expected to comply with, even if it isn't quite the
> same style that we currently use.
I was also suggesting that we could use it at least in cases where the
churn has already happened recently, e.g. when splitting parts of code
into separate files.
I have at least two series I've done recently and I have some new code
which will be in separate files.
More information about the libvir-list
mailing list