Skip to content

Commit

Permalink
Enable presubmit pylint in build/android.
Browse files Browse the repository at this point in the history
BUG=168518

Review URL: https://codereview.chromium.org/132463007

git-svn-id: http://src.chromium.org/svn/trunk/src/build@249793 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
  • Loading branch information
jbudorick@chromium.org committed Feb 7, 2014
1 parent b9068d3 commit 3d8bcfb
Show file tree
Hide file tree
Showing 92 changed files with 402 additions and 357 deletions.
5 changes: 4 additions & 1 deletion android/PRESUBMIT.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,13 @@ def J(*dirs):
"""Returns a path relative to presubmit directory."""
return input_api.os_path.join(input_api.PresubmitLocalPath(), *dirs)

# F0401 is issued when pylint can't import a module, but it doesn't seem to
# work correctly on our scripts.
output.extend(input_api.canned_checks.RunPylint(
input_api,
output_api,
white_list=[r'PRESUBMIT\.py$', r'buildbot/.*\.py$'],
white_list=[r'.*\.py$'],
black_list=[r'pylib/android_commands\.py$'],
extra_paths_list=[
J(), J('..', '..', 'third_party', 'android_testrunner'),
J('buildbot')]))
Expand Down
4 changes: 2 additions & 2 deletions android/adb_logcat_monitor.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,12 +108,12 @@ def main(base_dir, adb_cmd='adb'):

# Set up the alarm for calling 'adb devices'. This is to ensure
# our script doesn't get stuck waiting for a process response
def TimeoutHandler(_, unused_frame):
def TimeoutHandler(_, _):
raise TimeoutException()
signal.signal(signal.SIGALRM, TimeoutHandler)

# Handle SIGTERMs to ensure clean shutdown
def SigtermHandler(_, unused_frame):
def SigtermHandler(_, _):
raise SigtermError()
signal.signal(signal.SIGTERM, SigtermHandler)

Expand Down
1 change: 1 addition & 0 deletions android/adb_logcat_printer.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
will attempt to terminate the contained PID by sending a SIGINT and
monitoring for the deletion of the aforementioned file.
"""
# pylint: disable=W0702

import cStringIO
import logging
Expand Down
7 changes: 3 additions & 4 deletions android/adb_profile_chrome.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@


def _GetTraceTimestamp():
return time.strftime('%Y-%m-%d-%H%M%S', time.localtime())
return time.strftime('%Y-%m-%d-%H%M%S', time.localtime())


def _PackageTraceAsHtml(trace_file_name, html_file_name):
Expand All @@ -78,7 +78,6 @@ def _PackageTraceAsHtml(trace_file_name, html_file_name):
generate = __import__('generate', {}, {})
parse_deps = __import__('parse_deps', {}, {})

basename = os.path.splitext(trace_file_name)[0]
load_sequence = parse_deps.calc_load_sequence(
['tracing/standalone_timeline_view.js'], [src_dir])

Expand Down Expand Up @@ -175,7 +174,7 @@ def __str__(self):
def GetCategories(adb):
return adb.RunShellCommand('atrace --list_categories')

def StartTracing(self, interval):
def StartTracing(self, _):
self._thread = threading.Thread(target=self._CollectData)
self._thread.start()

Expand Down Expand Up @@ -400,7 +399,7 @@ def main():
action='store_true')
parser.add_option('-z', '--compress', help='Compress the resulting trace '
'with gzip. ', action='store_true')
options, args = parser.parse_args()
options, _ = parser.parse_args()

if options.verbose:
logging.getLogger().setLevel(logging.DEBUG)
Expand Down
15 changes: 7 additions & 8 deletions android/asan_symbolize.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,18 +53,17 @@ def _TranslateLibPath(library, asan_libs):
return symbol.TranslateLibPath(library)


def _Symbolize(input):
def _Symbolize(asan_input):
asan_libs = _FindASanLibraries()
libraries = collections.defaultdict(list)
asan_lines = []
for asan_log_line in [a.rstrip() for a in input]:
for asan_log_line in [a.rstrip() for a in asan_input]:
m = _ParseAsanLogLine(asan_log_line)
if m:
libraries[m['library']].append(m)
asan_lines.append({'raw_log': asan_log_line, 'parsed': m})

all_symbols = collections.defaultdict(dict)
original_symbols_dir = symbol.SYMBOLS_DIR
for library, items in libraries.iteritems():
libname = _TranslateLibPath(library, asan_libs)
lib_relative_addrs = set([i['rel_address'] for i in items])
Expand All @@ -82,7 +81,7 @@ def _Symbolize(input):
if (m['library'] in all_symbols and
m['rel_address'] in all_symbols[m['library']]['symbols']):
s = all_symbols[m['library']]['symbols'][m['rel_address']][0]
print '%s%s %s %s' %(m['prefix'], m['pos'], s[0], s[1])
print '%s%s %s %s' % (m['prefix'], m['pos'], s[0], s[1])
else:
print asan_log_line['raw_log']

Expand All @@ -92,12 +91,12 @@ def main():
parser.add_option('-l', '--logcat',
help='File containing adb logcat output with ASan stacks. '
'Use stdin if not specified.')
options, args = parser.parse_args()
options, _ = parser.parse_args()
if options.logcat:
input = file(options.logcat, 'r')
asan_input = file(options.logcat, 'r')
else:
input = sys.stdin
_Symbolize(input.readlines())
asan_input = sys.stdin
_Symbolize(asan_input.readlines())


if __name__ == "__main__":
Expand Down
3 changes: 1 addition & 2 deletions android/avd.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
import logging
import optparse
import os
import subprocess
import sys

from pylib import constants
Expand Down Expand Up @@ -45,7 +44,7 @@ def main(argv):
# Check if KVM is enabled for x86 AVD's and check for x86 system images.
# TODO(andrewhayden) Since we can fix all of these with install_emulator_deps
# why don't we just run it?
if options.abi =='x86':
if options.abi == 'x86':
if not install_emulator_deps.CheckKVM():
logging.critical('ERROR: KVM must be enabled in BIOS, and installed. '
'Enable KVM in BIOS and run install_emulator_deps.py')
Expand Down
3 changes: 1 addition & 2 deletions android/bb_run_sharded_steps.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
"""

import optparse
import os
import sys

from pylib import cmd_helper
Expand All @@ -27,7 +26,7 @@ def main(argv):
parser.add_option('-p', '--print_results',
help='Only prints the results for the previously '
'executed step, do not run it again.')
options, urls = parser.parse_args(argv)
options, _ = parser.parse_args(argv)
if options.print_results:
return cmd_helper.RunCmd(['build/android/test_runner.py', 'perf',
'--print-step', options.print_results])
Expand Down
5 changes: 2 additions & 3 deletions android/findbugs_diff.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,14 @@
"""

import optparse
import os
import sys

from pylib import constants
from pylib.utils import findbugs


def main(argv):
def main():
parser = findbugs.GetCommonParser()

options, _ = parser.parse_args()
Expand All @@ -47,4 +46,4 @@ def main(argv):


if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
7 changes: 3 additions & 4 deletions android/generate_emma_html.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import optparse
import os
import sys
import traceback

from pylib import cmd_helper
from pylib import constants
Expand All @@ -36,7 +35,7 @@ def _GetFilesWithExt(root_dir, ext):
return files


def main(argv):
def main():
option_parser = optparse.OptionParser()
option_parser.add_option('--output', help='HTML output filename.')
option_parser.add_option('--coverage-dir', default=None,
Expand All @@ -48,7 +47,7 @@ def main(argv):
option_parser.add_option('--cleanup', action='store_true',
help=('If set, removes coverage files generated at '
'runtime.'))
options, args = option_parser.parse_args()
options, _ = option_parser.parse_args()

if not (options.coverage_dir and options.metadata_dir and options.output):
option_parser.error('One or more mandatory options are missing.')
Expand Down Expand Up @@ -88,4 +87,4 @@ def main(argv):


if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
2 changes: 1 addition & 1 deletion android/gyp/ant.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import sys
import traceback

from util import build_utils
from util import build_utils # pylint: disable=F0401


def main(argv):
Expand Down
9 changes: 6 additions & 3 deletions android/gyp/apk_install.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,13 @@
import optparse
import os
import re
import subprocess
import sys

# pylint: disable=F0401
from util import build_device
from util import build_utils
from util import md5_check
# pylint: enable=F0401

BUILD_ANDROID_DIR = os.path.join(os.path.dirname(__file__), '..')
sys.path.append(BUILD_ANDROID_DIR)
Expand All @@ -27,9 +28,11 @@
def GetNewMetadata(device, apk_package):
"""Gets the metadata on the device for the apk_package apk."""
output = device.RunShellCommand('ls -l /data/app/')
# pylint: disable=C0301
# Matches lines like:
# -rw-r--r-- system system 7376582 2013-04-19 16:34 org.chromium.chrome.testshell.apk
# -rw-r--r-- system system 7376582 2013-04-19 16:34 org.chromium.chrome.testshell-1.apk
# pylint: enable=C0301
apk_matcher = lambda s: re.match('.*%s(-[0-9]*)?.apk$' % apk_package, s)
matches = filter(apk_matcher, output)
return matches[0] if matches else None
Expand All @@ -53,7 +56,7 @@ def RecordInstallMetadata(device, apk_package, metadata_path):
outfile.write(metadata)


def main(argv):
def main():
parser = optparse.OptionParser()
parser.add_option('--apk-path',
help='Path to .apk to install.')
Expand Down Expand Up @@ -101,4 +104,4 @@ def Install():


if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
8 changes: 4 additions & 4 deletions android/gyp/create_device_library_links.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@
those native libraries.
"""

import json
import optparse
import os
import sys

# pylint: disable=F0401
from util import build_device
from util import build_utils
from util import md5_check
# pylint: enable=F0401

BUILD_ANDROID_DIR = os.path.join(os.path.dirname(__file__), '..')
sys.path.append(BUILD_ANDROID_DIR)
Expand Down Expand Up @@ -80,7 +80,7 @@ def TriggerSymlinkScript(options):
RunShellCommand(device, trigger_cmd)


def main(argv):
def main():
parser = optparse.OptionParser()
parser.add_option('--apk', help='Path to the apk.')
parser.add_option('--script-host-path',
Expand Down Expand Up @@ -111,4 +111,4 @@ def main(argv):


if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
8 changes: 4 additions & 4 deletions android/gyp/create_native_libraries_header.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@
import os
import sys

from util import build_utils
from util import build_utils # pylint: disable=F0401


def main(argv):
def main():
parser = optparse.OptionParser()

parser.add_option('--native-library-list',
Expand All @@ -44,7 +44,7 @@ def main(argv):
# "content_shell_content_view" }' from a list of the form ["libbase.so",
# libnet.so", "libcontent_shell_content_view.so"]
libraries = ['"' + lib[3:-3] + '"' for lib in libraries]
array = '= { ' + ', '.join(libraries) + '}';
array = '= { ' + ', '.join(libraries) + '}'

with open(options.native_library_list, 'w') as header:
header.write(array)
Expand All @@ -53,4 +53,4 @@ def main(argv):
header.write('= "%s"' % options.version_name)

if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
6 changes: 4 additions & 2 deletions android/gyp/create_standalone_apk.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,10 @@
import sys
import tempfile

# pylint: disable=F0401
from util import build_utils
from util import md5_check
# pylint: enable=F0401

def CreateStandaloneApk(options):
def DoZip():
Expand All @@ -36,7 +38,7 @@ def DoZip():
input_paths=input_paths)


def main(argv):
def main():
parser = optparse.OptionParser()
parser.add_option('--libraries-top-dir',
help='Top directory that contains libraries '
Expand All @@ -57,4 +59,4 @@ def main(argv):


if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
6 changes: 4 additions & 2 deletions android/gyp/dex.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,10 @@
import os
import sys

# pylint: disable=F0401
from util import build_utils
from util import md5_check
# pylint: enable=F0401


def DoDex(options, paths):
Expand All @@ -30,7 +32,7 @@ def DoDex(options, paths):
build_utils.Touch(options.dex_path)


def main(argv):
def main():
parser = optparse.OptionParser()
parser.add_option('--android-sdk-tools',
help='Android sdk build tools directory.')
Expand Down Expand Up @@ -62,4 +64,4 @@ def main(argv):


if __name__ == '__main__':
sys.exit(main(sys.argv))
sys.exit(main())
Loading

0 comments on commit 3d8bcfb

Please sign in to comment.