From 84bbf510a19f1cf353933498d4720478b4ae40e4 Mon Sep 17 00:00:00 2001 From: "dtu@chromium.org" Date: Mon, 25 Jan 2016 23:54:28 +0000 Subject: [PATCH] Add extensions parameter to Pylint presubmit check. This allows Pylint to analyze code that relies on C extensions (like numpy). https://bitbucket.org/logilab/pylint/issues/58#comment-14920640 BUG= Review URL: https://codereview.chromium.org/1639493003 git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@298392 0039d316-1c4b-4281-b951-d872f2087c98 --- presubmit_canned_checks.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/presubmit_canned_checks.py b/presubmit_canned_checks.py index 96bd094c2..6ce81680f 100644 --- a/presubmit_canned_checks.py +++ b/presubmit_canned_checks.py @@ -694,7 +694,8 @@ def _FetchAllFiles(input_api, white_list, black_list): def GetPylint(input_api, output_api, white_list=None, black_list=None, - disabled_warnings=None, extra_paths_list=None, pylintrc=None): + disabled_warnings=None, extra_paths_list=None, extensions=None, + pylintrc=None): """Run pylint on python files. The default white_list enforces looking only at *.py files. @@ -729,11 +730,16 @@ def GetPylint(input_api, output_api, white_list=None, black_list=None, input_api.logging.info('Skipping pylint: no matching changes.') return [] + extra_args = [] + + if extensions: + extra_args.append('--extension-pkg-whitelist=' + ','.join(extensions)) + if pylintrc is not None: pylintrc = input_api.os_path.join(input_api.PresubmitLocalPath(), pylintrc) else: pylintrc = input_api.os_path.join(_HERE, 'pylintrc') - extra_args = ['--rcfile=%s' % pylintrc] + extra_args.append('--rcfile=%s' % pylintrc) if disabled_warnings: extra_args.extend(['-d', ','.join(disabled_warnings)])