mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 08:18:15 +03:00
0058294764
We've only got one kind of pyflakes failure left in our codebase, so it's time to switch over to a blacklist-based checking scheme. I've left in the filtering of two undefined names for now out of paranoia, but those can probably go too.
40 lines
890 B
Python
Executable File
40 lines
890 B
Python
Executable File
#!/usr/bin/env python
|
|
|
|
# Filter output by pyflakes to control which warnings we check
|
|
|
|
from __future__ import absolute_import, print_function
|
|
|
|
import re
|
|
import sys
|
|
|
|
lines = []
|
|
for line in sys.stdin:
|
|
# We blacklist tests that are too noisy for us
|
|
pats = [
|
|
r"undefined name '(WindowsError|memoryview)'",
|
|
r"redefinition of unused '[^']+' from line",
|
|
]
|
|
|
|
keep = True
|
|
for pat in pats:
|
|
if re.search(pat, line):
|
|
keep = False
|
|
break # pattern matches
|
|
if keep:
|
|
fn = line.split(':', 1)[0]
|
|
f = open(fn)
|
|
data = f.read()
|
|
f.close()
|
|
if 'no-' 'check-code' in data:
|
|
continue
|
|
lines.append(line)
|
|
|
|
for line in lines:
|
|
sys.stdout.write(line)
|
|
print()
|
|
|
|
# self test of "undefined name" detection for other than 'memoryview'
|
|
if False:
|
|
print(memoryview)
|
|
print(undefinedname)
|