Commit c54fb35
committed
Collect the iterable's attribute paths with a scope-aware visitor
Addresses the two review points.
Walking node.iter with ast.walk ignored lexical scope, which the name
side of the check does not: B020NameFinder skips names bound by a
comprehension or a lambda. So in
for obj.value in [obj.value for obj in objects]:
the comprehension-local obj.value was matched against the loop target
and the loop was reported. B020AttributeFinder now collects the paths,
inheriting those exclusions, and drops paths rooted in a lambda
argument the same way the base class drops the argument names.
The eval file's 'Should emit' header is refreshed. It was stale by more
than the new line: line 32 was missing from it as well.1 parent ccf030f commit c54fb35
2 files changed
Lines changed: 45 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
975 | 975 | | |
976 | 976 | | |
977 | 977 | | |
978 | | - | |
| 978 | + | |
979 | 979 | | |
980 | 980 | | |
981 | 981 | | |
| |||
984 | 984 | | |
985 | 985 | | |
986 | 986 | | |
987 | | - | |
988 | | - | |
989 | | - | |
990 | | - | |
991 | | - | |
| 987 | + | |
992 | 988 | | |
993 | 989 | | |
994 | 990 | | |
| |||
2272 | 2268 | | |
2273 | 2269 | | |
2274 | 2270 | | |
| 2271 | + | |
| 2272 | + | |
| 2273 | + | |
| 2274 | + | |
| 2275 | + | |
| 2276 | + | |
| 2277 | + | |
| 2278 | + | |
| 2279 | + | |
| 2280 | + | |
| 2281 | + | |
| 2282 | + | |
| 2283 | + | |
| 2284 | + | |
| 2285 | + | |
| 2286 | + | |
| 2287 | + | |
| 2288 | + | |
| 2289 | + | |
| 2290 | + | |
| 2291 | + | |
| 2292 | + | |
| 2293 | + | |
| 2294 | + | |
| 2295 | + | |
2275 | 2296 | | |
2276 | 2297 | | |
2277 | 2298 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
0 commit comments