| Index: PRESUBMIT.py
|
| diff --git a/PRESUBMIT.py b/PRESUBMIT.py
|
| index dc8cb77c0c002e829c005b65920efb07802d01ea..81bb257b9284481a4c91c9a731133cf693352337 100644
|
| --- a/PRESUBMIT.py
|
| +++ b/PRESUBMIT.py
|
| @@ -46,6 +46,31 @@ def _CheckChangeHasEol(input_api, output_api, source_file_filter=None):
|
| return []
|
|
|
|
|
| +def _PythonChecks(input_api, output_api):
|
| + """Run checks on any modified Python files."""
|
| + pylint_disabled_warnings = (
|
| + 'F0401', # Unable to import.
|
| + 'E0611', # No name in module.
|
| + 'W0232', # Class has no __init__ method.
|
| + 'E1002', # Use of super on an old style class.
|
| + 'W0403', # Relative import used.
|
| + 'R0201', # Method could be a function.
|
| + 'E1003', # Using class name in super.
|
| + 'W0613', # Unused argument.
|
| + )
|
| + # Run Pylint on only the modified python files. Unfortunately it still runs
|
| + # Pylint on the whole file instead of just the modified lines.
|
| + affected_python_files = []
|
| + for affected_file in input_api.AffectedSourceFiles(None):
|
| + affected_file_path = affected_file.LocalPath()
|
| + if affected_file_path.endswith('.py'):
|
| + affected_python_files.append(affected_file_path)
|
| + return input_api.canned_checks.RunPylint(
|
| + input_api, output_api,
|
| + disabled_warnings=pylint_disabled_warnings,
|
| + white_list=affected_python_files)
|
| +
|
| +
|
| def _CommonChecks(input_api, output_api):
|
| """Presubmit checks common to upload and commit."""
|
| results = []
|
| @@ -58,6 +83,7 @@ def _CommonChecks(input_api, output_api):
|
| results.extend(
|
| _CheckChangeHasEol(
|
| input_api, output_api, source_file_filter=sources))
|
| + results.extend(_PythonChecks(input_api, output_api))
|
| return results
|
|
|
|
|
| @@ -189,7 +215,7 @@ def _CheckLGTMsForPublicAPI(input_api, output_api):
|
| 'lgtm' in message['text'].lower()):
|
| # Found an lgtm in a message from an owner.
|
| lgtm_from_owner = True
|
| - break;
|
| + break
|
|
|
| if not lgtm_from_owner:
|
| results.append(
|
|
|