diff options
| author | Jenkins <jenkins@review.openstack.org> | 2016-03-03 21:48:43 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2016-03-03 21:48:44 +0000 |
| commit | f3048ff8aba952170a37babd3cbe66c7ad211b24 (patch) | |
| tree | 5a90596fc5f8ee41678cc1f7e86611b9903d8251 | |
| parent | 67c71ff5511639373856bff13b206aef4955e17e (diff) | |
| parent | 4e154f0018e30e8c8982a05e25369cbc27134425 (diff) | |
| download | kolla-f3048ff8aba952170a37babd3cbe66c7ad211b24.tar.gz kolla-f3048ff8aba952170a37babd3cbe66c7ad211b24.zip | |
Merge "Introduce the hacking module to kolla"
| -rw-r--r-- | kolla/hacking/__init__.py | 0 | ||||
| -rw-r--r-- | kolla/hacking/checks.py | 26 | ||||
| -rw-r--r-- | tox.ini | 3 |
3 files changed, 29 insertions, 0 deletions
diff --git a/kolla/hacking/__init__.py b/kolla/hacking/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/kolla/hacking/__init__.py diff --git a/kolla/hacking/checks.py b/kolla/hacking/checks.py new file mode 100644 index 000000000..5a86fe571 --- /dev/null +++ b/kolla/hacking/checks.py @@ -0,0 +1,26 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import re + + +mutable_default_args = re.compile(r"^\s*def .+\((.+=\{\}|.+=\[\])") + + +def no_mutable_default_args(logical_line): + msg = "N301: Method's default argument shouldn't be mutable!" + if mutable_default_args.match(logical_line): + yield (0, msg) + + +def factory(register): + register(no_mutable_default_args) @@ -180,3 +180,6 @@ commands= [flake8] show-source = True exclude=.eggs,.git,.tox,doc + +[hacking] +local-check-factory = kolla.hacking.checks.factory |
