[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: |
Emanuele Giuseppe Esposito |
Subject: |
Re: [PATCH 1/2] pylint: fix errors and warnings from qemu-tests test 297 |
Date: |
Thu, 7 Oct 2021 12:34:14 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 |
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.
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
or (difference is in the last line only):
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
Emanuele
[PATCH 2/2] qemu-iotests: fix image-fleecing pylint errors, Emanuele Giuseppe Esposito, 2021/10/06