Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: android_webview/tools/copyright_scanner.py

Issue 877583003: [Android WebView] Fix outstanding license check issues on the release bot (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | android_webview/tools/copyright_scanner_unittest.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Utilities for scanning source files to determine code authorship. 5 """Utilities for scanning source files to determine code authorship.
6 """ 6 """
7 7
8 import itertools 8 import itertools
9 9
10 def ForwardSlashesToOsPathSeps(input_api, path): 10 def ForwardSlashesToOsPathSeps(input_api, path):
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 path_join('tools', 'histograms'), 68 path_join('tools', 'histograms'),
69 # Swarming tools, doesn't exist in the snapshot 69 # Swarming tools, doesn't exist in the snapshot
70 path_join('tools', 'swarming_client'), 70 path_join('tools', 'swarming_client'),
71 # ARM sysroot, doesn't exist in the snapshot 71 # ARM sysroot, doesn't exist in the snapshot
72 path_join('chrome', 'installer', 'linux', 'debian_wheezy_arm-sysroot'), 72 path_join('chrome', 'installer', 'linux', 'debian_wheezy_arm-sysroot'),
73 # Old location (TODO(sbc): Remove this once it no longer exists on any bots) 73 # Old location (TODO(sbc): Remove this once it no longer exists on any bots)
74 path_join('arm-sysroot'), 74 path_join('arm-sysroot'),
75 # Data is not part of open source chromium, but are included on some bots. 75 # Data is not part of open source chromium, but are included on some bots.
76 path_join('data'), 76 path_join('data'),
77 # This is not part of open source chromium, but are included on some bots. 77 # This is not part of open source chromium, but are included on some bots.
78 path_join('skia', 'tools', 'clusterfuzz-data') 78 path_join('skia', 'tools', 'clusterfuzz-data'),
79 # Not shipped, only relates to Chrome for Android, but not to WebView
80 path_join('clank'),
79 ] 81 ]
80 excluded_dirs_list.extend(EXTRA_EXCLUDED_DIRS) 82 excluded_dirs_list.extend(EXTRA_EXCLUDED_DIRS)
81 83
82 # Surround the directory names with OS path separators. 84 # Surround the directory names with OS path separators.
83 dirs_blacklist = [path_join('.', d, '')[1:] for d in excluded_dirs_list if d] 85 dirs_blacklist = [path_join('.', d, '')[1:] for d in excluded_dirs_list if d]
84 def IsBlacklistedDir(d): 86 def IsBlacklistedDir(d):
85 for item in dirs_blacklist: 87 for item in dirs_blacklist:
86 if item in d: 88 if item in d:
87 return True 89 return True
88 return False 90 return False
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
304 input_api: InputAPI of presubmit scripts. 306 input_api: InputAPI of presubmit scripts.
305 whitelisted_files: Whitelisted files list. 307 whitelisted_files: Whitelisted files list.
306 offending_files: Files that contain 3rd party code. 308 offending_files: Files that contain 3rd party code.
307 Returns: 309 Returns:
308 A triplet of "unknown", "missing", and "stale" file lists. 310 A triplet of "unknown", "missing", and "stale" file lists.
309 "Unknown" are files that contain 3rd party code but not whitelisted. 311 "Unknown" are files that contain 3rd party code but not whitelisted.
310 "Missing" are files that are whitelisted but doesn't really exist. 312 "Missing" are files that are whitelisted but doesn't really exist.
311 "Stale" are files that are whitelisted unnecessarily. 313 "Stale" are files that are whitelisted unnecessarily.
312 """ 314 """
313 unknown = set(offending_files) - set(whitelisted_files) 315 unknown = set(offending_files) - set(whitelisted_files)
314 missing = [f for f in whitelisted_files if not input_api.os_path.isfile(f)] 316 missing = [f for f in whitelisted_files if not input_api.os_path.isfile(
317 input_api.os_path.join(input_api.change.RepositoryRoot(), f))]
315 stale = set(whitelisted_files) - set(offending_files) - set(missing) 318 stale = set(whitelisted_files) - set(offending_files) - set(missing)
316 return (list(unknown), missing, list(stale)) 319 return (list(unknown), missing, list(stale))
317 320
318 321
319 def _GetDeletedContents(affected_file): 322 def _GetDeletedContents(affected_file):
320 """Returns a list of all deleted lines. 323 """Returns a list of all deleted lines.
321 AffectedFile class from presubmit_support is lacking this functionality. 324 AffectedFile class from presubmit_support is lacking this functionality.
322 """ 325 """
323 deleted_lines = [] 326 deleted_lines = []
324 for line in affected_file.GenerateScmDiff().splitlines(): 327 for line in affected_file.GenerateScmDiff().splitlines():
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
381 'The following files are whitelisted in %s, ' \ 384 'The following files are whitelisted in %s, ' \
382 'but do not exist or not files:' % _GetWhitelistFileName(input_api), 385 'but do not exist or not files:' % _GetWhitelistFileName(input_api),
383 sorted(missing_files))) 386 sorted(missing_files)))
384 if stale_files: 387 if stale_files:
385 results.append(output_api.PresubmitPromptWarning( 388 results.append(output_api.PresubmitPromptWarning(
386 'The following files are whitelisted unnecessarily. You must ' \ 389 'The following files are whitelisted unnecessarily. You must ' \
387 'remove the following files from the whitelist file ' \ 390 'remove the following files from the whitelist file ' \
388 '%s:' % _GetWhitelistFileName(input_api), 391 '%s:' % _GetWhitelistFileName(input_api),
389 sorted(stale_files))) 392 sorted(stale_files)))
390 return results 393 return results
OLDNEW
« no previous file with comments | « no previous file | android_webview/tools/copyright_scanner_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698