[email protected] | 0227bae | 2014-08-07 07:28:11 | [diff] [blame] | 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 |
| 3 | # found in the LICENSE file. |
| 4 | |
jamesr | a03ae49 | 2014-10-03 04:26:48 | [diff] [blame] | 5 | """Presubmit script for mojo |
[email protected] | 0227bae | 2014-08-07 07:28:11 | [diff] [blame] | 6 | |
| 7 | See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| 8 | for more details about the presubmit API built into depot_tools. |
| 9 | """ |
| 10 | |
| 11 | import os.path |
| 12 | |
| 13 | def CheckChangeOnUpload(input_api, output_api): |
| 14 | # Additional python module paths (we're in src/mojo/); not everyone needs |
| 15 | # them, but it's easiest to add them to everyone's path. |
| 16 | # For ply and jinja2: |
| 17 | third_party_path = os.path.join( |
| 18 | input_api.PresubmitLocalPath(), "..", "third_party") |
| 19 | # For the bindings generator: |
| 20 | mojo_public_bindings_pylib_path = os.path.join( |
| 21 | input_api.PresubmitLocalPath(), "public", "tools", "bindings", "pylib") |
qsr | 4286876 | 2014-10-10 16:38:11 | [diff] [blame] | 22 | # For the python bindings: |
| 23 | mojo_python_bindings_path = os.path.join( |
| 24 | input_api.PresubmitLocalPath(), "public", "python") |
[email protected] | 0227bae | 2014-08-07 07:28:11 | [diff] [blame] | 25 | # TODO(vtl): Don't lint these files until the (many) problems are fixed |
| 26 | # (possibly by deleting/rewriting some files). |
| 27 | temporary_black_list = input_api.DEFAULT_BLACK_LIST + \ |
| 28 | (r".*\bpublic[\\\/]tools[\\\/]bindings[\\\/]pylib[\\\/]mojom[\\\/]" |
| 29 | r"generate[\\\/].+\.py$", |
| 30 | r".*\bpublic[\\\/]tools[\\\/]bindings[\\\/]generators[\\\/].+\.py$", |
| 31 | r".*\bspy[\\\/]ui[\\\/].+\.py$", |
| 32 | r".*\btools[\\\/]pylib[\\\/]transitive_hash\.py$", |
| 33 | r".*\btools[\\\/]test_runner\.py$") |
| 34 | |
| 35 | results = [] |
qsr | 4286876 | 2014-10-10 16:38:11 | [diff] [blame] | 36 | pylint_extra_paths = [ |
| 37 | third_party_path, |
| 38 | mojo_public_bindings_pylib_path, |
| 39 | mojo_python_bindings_path, |
qsr | 4286876 | 2014-10-10 16:38:11 | [diff] [blame] | 40 | ] |
[email protected] | 0227bae | 2014-08-07 07:28:11 | [diff] [blame] | 41 | results += input_api.canned_checks.RunPylint( |
| 42 | input_api, output_api, extra_paths_list=pylint_extra_paths, |
| 43 | black_list=temporary_black_list) |
| 44 | return results |