Chromium Code Reviews| Index: PRESUBMIT.py |
| =================================================================== |
| --- PRESUBMIT.py (revision 79280) |
| +++ PRESUBMIT.py (working copy) |
| @@ -8,8 +8,6 @@ |
| for more details about the presubmit API built into gcl. |
| """ |
| -import time |
| - |
| _EXCLUDED_PATHS = ( |
| r"^breakpad[\\\/].*", |
| r"^net/tools/spdyshark/[\\\/].*", |
| @@ -18,24 +16,13 @@ |
| r".*MakeFile$", |
| ) |
| -_TEXT_FILES = ( |
| - r".*\.txt", |
| - r".*\.json", |
| -) |
| -_LICENSE_HEADER = ( |
| - r".*? Copyright \(c\) %s The Chromium Authors\. All rights reserved\.\n" |
| - r".*? Use of this source code is governed by a BSD-style license that can " |
| - "be\n" |
| - r".*? found in the LICENSE file\." |
| - "\n" |
| -) % time.strftime("%Y") |
| - |
| -def _CheckNoInterfacesInBase(input_api, output_api, source_file_filter): |
| +def _CheckNoInterfacesInBase(input_api, output_api): |
| """Checks to make sure no files in libbase.a have |@interface|.""" |
| pattern = input_api.re.compile(r'@interface') |
| files = [] |
| - for f in input_api.AffectedSourceFiles(source_file_filter): |
| + for f in input_api.AffectedSourceFiles( |
| + lambda x: input_api.FilterSourceFile(x)): |
|
M-A Ruel
2011/03/24 17:18:58
for f in input_api.AffectedSourceFiles(input_api.F
bradn
2011/03/24 17:30:23
Done.
|
| if (f.LocalPath().find('base/') != -1 and |
| f.LocalPath().find('base/test/') == -1): |
| contents = input_api.ReadFile(f) |
| @@ -50,24 +37,14 @@ |
| files) ] |
| return [] |
| -def _CheckSingletonInHeaders(input_api, output_api, source_file_filter): |
| - """Checks to make sure no header files have |Singleton<|.""" |
| - pattern = input_api.re.compile(r'Singleton<') |
| - files = [] |
| - for f in input_api.AffectedSourceFiles(source_file_filter): |
| - if (f.LocalPath().endswith('.h') or f.LocalPath().endswith('.hxx') or |
| - f.LocalPath().endswith('.hpp') or f.LocalPath().endswith('.inl')): |
| - contents = input_api.ReadFile(f) |
| - if pattern.search(contents): |
| - files.append(f) |
| - if len(files): |
| - return [ output_api.PresubmitError( |
| - 'Found Singleton<T> in the following header files.\n' + |
| - 'Please move them to an appropriate source file so that the ' + |
| - 'template gets instantiated in a single compilation unit.', |
| - files) ] |
| - return [] |
| +def _CommonChecks(input_api, output_api): |
| + """Checks common to both upload and commit.""" |
| + results = [] |
| + results.extend(input_api.canned_checks.PanProjectChecks( |
| + input_api, output_api, excluded_paths=_EXCLUDED_PATHS)) |
| + results.extend(_CheckNoInterfacesInBase(input_api, output_api)) |
| + return results |
| def _CheckSubversionConfig(input_api, output_api): |
| @@ -114,66 +91,6 @@ |
| return [] |
| -def _CheckConstNSObject(input_api, output_api, source_file_filter): |
| - """Checks to make sure no objective-c files have |const NSSomeClass*|.""" |
| - pattern = input_api.re.compile(r'const\s+NS\w*\s*\*') |
| - files = [] |
| - for f in input_api.AffectedSourceFiles(source_file_filter): |
| - if f.LocalPath().endswith('.h') or f.LocalPath().endswith('.mm'): |
| - contents = input_api.ReadFile(f) |
| - if pattern.search(contents): |
| - files.append(f) |
| - |
| - if len(files): |
| - if input_api.is_committing: |
| - res_type = output_api.PresubmitPromptWarning |
| - else: |
| - res_type = output_api.PresubmitNotifyResult |
| - return [ res_type('|const NSClass*| is wrong, see ' + |
| - 'http://dev.chromium.org/developers/clang-mac', |
| - files) ] |
| - return [] |
| - |
| - |
| -def _CommonChecks(input_api, output_api): |
| - results = [] |
| - # What does this code do? |
| - # It loads the default black list (e.g. third_party, experimental, etc) and |
| - # add our black list (breakpad, skia and v8 are still not following |
| - # google style and are not really living this repository). |
| - # See presubmit_support.py InputApi.FilterSourceFile for the (simple) usage. |
| - black_list = input_api.DEFAULT_BLACK_LIST + _EXCLUDED_PATHS |
| - white_list = input_api.DEFAULT_WHITE_LIST + _TEXT_FILES |
| - sources = lambda x: input_api.FilterSourceFile(x, black_list=black_list) |
| - text_files = lambda x: input_api.FilterSourceFile(x, black_list=black_list, |
| - white_list=white_list) |
| - |
| - # TODO(dpranke): enable upload as well |
| - if input_api.is_committing: |
| - results.extend(input_api.canned_checks.CheckOwners( |
| - input_api, output_api, source_file_filter=sources)) |
| - |
| - results.extend(input_api.canned_checks.CheckLongLines( |
| - input_api, output_api, source_file_filter=sources)) |
| - results.extend(input_api.canned_checks.CheckChangeHasNoTabs( |
| - input_api, output_api, source_file_filter=sources)) |
| - results.extend(input_api.canned_checks.CheckChangeHasNoStrayWhitespace( |
| - input_api, output_api, source_file_filter=sources)) |
| - results.extend(input_api.canned_checks.CheckChangeSvnEolStyle( |
| - input_api, output_api, source_file_filter=text_files)) |
| - results.extend(input_api.canned_checks.CheckSvnForCommonMimeTypes( |
| - input_api, output_api)) |
| - results.extend(input_api.canned_checks.CheckLicense( |
| - input_api, output_api, _LICENSE_HEADER, source_file_filter=sources)) |
| - results.extend(_CheckConstNSObject( |
| - input_api, output_api, source_file_filter=sources)) |
| - results.extend(_CheckSingletonInHeaders( |
| - input_api, output_api, source_file_filter=sources)) |
| - results.extend(_CheckNoInterfacesInBase( |
| - input_api, output_api, source_file_filter=sources)) |
| - return results |
| - |
| - |
| def CheckChangeOnUpload(input_api, output_api): |
| results = [] |
| results.extend(_CommonChecks(input_api, output_api)) |