| OLD | NEW |
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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 """Top-level presubmit script for Blink. | 5 """Top-level presubmit script for Blink. |
| 6 | 6 |
| 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts | 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| 8 for more details about the presubmit API built into gcl. | 8 for more details about the presubmit API built into gcl. |
| 9 """ | 9 """ |
| 10 | 10 |
| (...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 226 "Source", "devtools", "scripts", "compile_frontend.py") | 226 "Source", "devtools", "scripts", "compile_frontend.py") |
| 227 out, _ = input_api.subprocess.Popen( | 227 out, _ = input_api.subprocess.Popen( |
| 228 [input_api.python_executable, lint_path], | 228 [input_api.python_executable, lint_path], |
| 229 stdout=input_api.subprocess.PIPE, | 229 stdout=input_api.subprocess.PIPE, |
| 230 stderr=input_api.subprocess.STDOUT).communicate() | 230 stderr=input_api.subprocess.STDOUT).communicate() |
| 231 if "WARNING" in out or "ERROR" in out: | 231 if "WARNING" in out or "ERROR" in out: |
| 232 return [output_api.PresubmitError(out)] | 232 return [output_api.PresubmitError(out)] |
| 233 return [] | 233 return [] |
| 234 | 234 |
| 235 | 235 |
| 236 def _CheckForPrintfDebugging(input_api, output_api): |
| 237 """Generally speaking, we'd prefer not to land patches that printf |
| 238 debug output.""" |
| 239 os_macro_re = input_api.re.compile(r'^\s*printf\(') |
| 240 errors = input_api.canned_checks._FindNewViolationsOfRule( |
| 241 lambda _, x: not os_macro_re.search(x), |
| 242 input_api, None) |
| 243 errors = [' * %s' % violation for violation in errors] |
| 244 if errors: |
| 245 return [output_api.PresubmitPromptOrNotify( |
| 246 'printf debugging is best debugging! That said, it might ' |
| 247 'be a good idea to drop the following occurances from ' |
| 248 'your patch before uploading:\n%s' % '\n'.join(errors))] |
| 249 return [] |
| 250 |
| 251 |
| 236 def CheckChangeOnUpload(input_api, output_api): | 252 def CheckChangeOnUpload(input_api, output_api): |
| 237 results = [] | 253 results = [] |
| 238 results.extend(_CommonChecks(input_api, output_api)) | 254 results.extend(_CommonChecks(input_api, output_api)) |
| 239 results.extend(_CheckStyle(input_api, output_api)) | 255 results.extend(_CheckStyle(input_api, output_api)) |
| 256 results.extend(_CheckForPrintfDebugging(input_api, output_api)) |
| 240 results.extend(_CompileDevtoolsFrontend(input_api, output_api)) | 257 results.extend(_CompileDevtoolsFrontend(input_api, output_api)) |
| 241 return results | 258 return results |
| 242 | 259 |
| 243 | 260 |
| 244 def CheckChangeOnCommit(input_api, output_api): | 261 def CheckChangeOnCommit(input_api, output_api): |
| 245 results = [] | 262 results = [] |
| 246 results.extend(_CommonChecks(input_api, output_api)) | 263 results.extend(_CommonChecks(input_api, output_api)) |
| 247 results.extend(input_api.canned_checks.CheckTreeIsOpen( | 264 results.extend(input_api.canned_checks.CheckTreeIsOpen( |
| 248 input_api, output_api, | 265 input_api, output_api, |
| 249 json_url='http://blink-status.appspot.com/current?format=json')) | 266 json_url='http://blink-status.appspot.com/current?format=json')) |
| 250 results.extend(input_api.canned_checks.CheckChangeHasDescription( | 267 results.extend(input_api.canned_checks.CheckChangeHasDescription( |
| 251 input_api, output_api)) | 268 input_api, output_api)) |
| 252 results.extend(_CheckSubversionConfig(input_api, output_api)) | 269 results.extend(_CheckSubversionConfig(input_api, output_api)) |
| 253 return results | 270 return results |
| 254 | 271 |
| 255 def GetPreferredTrySlaves(project, change): | 272 def GetPreferredTrySlaves(project, change): |
| 256 return ['linux_blink_rel', 'mac_blink_rel', 'win_blink_rel'] | 273 return ['linux_blink_rel', 'mac_blink_rel', 'win_blink_rel'] |
| OLD | NEW |