| 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,12 @@
|
| 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(input_api.FilterSourceFile):
|
| if (f.LocalPath().find('base/') != -1 and
|
| f.LocalPath().find('base/test/') == -1):
|
| contents = input_api.ReadFile(f)
|
| @@ -50,24 +36,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 +90,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))
|
|
|