[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] pylint: fix errors and warnings from qemu-tests test 297
From: |
Kevin Wolf |
Subject: |
Re: [PATCH 1/2] pylint: fix errors and warnings from qemu-tests test 297 |
Date: |
Thu, 7 Oct 2021 18:25:36 +0200 |
Am 07.10.2021 um 12:34 hat Emanuele Giuseppe Esposito geschrieben:
>
> > > The error is "C0330: Wrong hanging indentation"
> > > so it is not about dicts. I guess we can disable the error, but the
> > > problem
> > > is that we will disable it for the whole file, which doesn't seem right.
> >
> > Actually, I would disable it globally in pylintrc because building
> > dictionaries for JSON is something that we do a lot.
> >
> > But then I'm surprised that this is the only instance that actually
> > fails. I wonder what the difference is.
> >
> > For example, 129 doesn't seem to be skipped and has this code:
>
>
> >
> > result = self.vm.qmp('blockdev-add', **{
> > 'node-name': 'overlay',
> > 'driver': iotests.imgfmt,
> > 'file': {
> > 'driver': 'file',
> > 'filename': self.overlay_img
> > }
> > })
> >
> > Yet you don't report a pylint error for this file.
>
> Well, unless I am misunderstanding something... 129 *is* the file I am
> reporting. And that is exactly the function where pylint complains.
Indeed, my bad. I got confused there.
And the other files that do something similar are all in SKIP_FILES in
297. So it looks like we don't have another case to copy.
> >
> > Oooh... I think I do see a difference: The final line is indented by one
> > space more in the case that fails for you. It should be vertically
> > aligned with the "'" in the first line, but it is actually aligned with
> > the "b" of "blockdev-add"
> >
> > Does removing one space of indentation in the last line fix the report?
>
> It's not only the final line, it's from "**{" till the ending ")".
> 'node-name' is under "ock" of 'blockdev-add'. It is clearly bad indented,
> regardless of the new style and pylint new rules.
>
> Pylint itself suggests to move it 4 spaces more than "result =", ie 21
> spaces before.
>
> Still, applying your suggestion to all the lines and removing 1 space from
> all lines still does not make pylint happy, as it asks to remove 20 spaces.
>
> To simplify things, this is the error I get:
>
> === pylint ===
> +************* Module 129
> +129:91:0: C0330: Wrong hanging indentation (remove 21 spaces).
> + 'node-name': 'overlay',
> + | ^ (bad-continuation)
> +129:92:0: C0330: Wrong hanging indentation (remove 21 spaces).
> + 'driver': iotests.imgfmt,
> + | ^ (bad-continuation)
> +129:93:0: C0330: Wrong hanging indentation (remove 21 spaces).
> + 'file': {
> + | ^ (bad-continuation)
> +129:97:0: C0330: Wrong hanging indentation.
> + })
> + | | ^ (bad-continuation)
>
> So unless you want to disable it overall, one way of fixing 129 is to follow
> what pylint suggests, and do like I wrote in the previous email:
>
> Either:
> result = self.vm.qmp('blockdev-add', **{
> 'node-name': 'overlay', <-- 21 spaces less
> 'driver': iotests.imgfmt, <-- 21 spaces less
> 'file': { <-- 21 spaces less
> 'driver': 'file', <-- 21 spaces less
> 'filename': self.overlay_img <-- 21 spaces less
> } <-- 21 spaces less
> }) <-- 21 spaces less
Yes, this looks reasonble enough.
Kevin
- [PATCH 2/2] qemu-iotests: fix image-fleecing pylint errors, (continued)
[PATCH 1/2] pylint: fix errors and warnings from qemu-tests test 297, Emanuele Giuseppe Esposito, 2021/10/06