| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you 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. |
| |
| output-format: text |
| |
| strictness: medium |
| test-warnings: true |
| doc-warnings: false |
| max-line-length: 120 |
| |
| ignore-paths: |
| - .github |
| - 3rdparty |
| - benchmark |
| - cd |
| - ci |
| - cmake |
| - config |
| - contrib |
| - cpp-package |
| - docker |
| - docs |
| - example |
| - include |
| - licences |
| - plugin |
| - src |
| - tools |
| - build |
| # - python # enabled |
| # - tests # enabled |
| |
| |
| pylint: |
| disable: |
| - consider-using-enumerate |
| - consider-using-with |
| - unspecified-encoding |
| - consider-using-f-string |
| - simplifiable-if-expression |
| - undefined-variable |
| - deprecated-method |
| - unused-import |
| - wrong-import-position |
| - bare-except |
| - import-outside-toplevel |
| - protected-access |
| - no-value-for-parameter |
| - unused-private-member |
| - import-error |
| - unused-wildcard-import |
| - arguments-differ |
| - logging-format-interpolation |
| - unused-variable |
| - logging-too-many-args |
| - pointless-string-statement |
| - useless-suppression |
| - trailing-newlines |
| - use-maxsplit-arg |
| - redefined-builtin |
| - singleton-comparison |
| - misplaced-comparison-constant |
| - unsubscriptable-object |
| - too-many-locals |
| - too-many-statements |
| - invalid-sequence-index |
| - chained-comparison |
| - pointless-statement |
| - unbalanced-tuple-unpacking |
| - no-else-return |
| - super-with-arguments |
| - use-list-literal |
| - logging-not-lazy |
| - unreachable |
| - too-many-arguments |
| - multiple-imports |
| - bad-indentation |
| - invalid-envvar-default |
| - unused-argument |
| - line-too-long |
| - no-self-use |
| - attribute-defined-outside-init |
| - bad-option-value |
| - global-statement |
| - fixme |
| - no-member |
| - no-name-in-module |
| - superfluous-parens |
| - useless-super-delegation |
| - len-as-condition |
| - invalid-unary-operand-type |
| - consider-using-dict-comprehension |
| - consider-using-set-comprehension |
| - try-except-raise |
| - useless-object-inheritance |
| - c-extension-no-member |
| - deprecated-lambda |
| - too-few-public-methods |
| - too-many-branches |
| - too-many-instance-attributes |
| - too-many-public-methods |
| - too-many-lines |
| - duplicate-code |
| - cyclic-import |
| - cell-var-from-loop |
| - raise-missing-from |
| - unnecessary-comprehension |
| - unidiomatic-typecheck |
| - consider-using-in |
| - unsupported-assignment-operation |
| - unnecessary-pass |
| - reimported |
| - unexpected-keyword-arg |
| - arguments-renamed |
| - consider-using-dict-items |
| - consider-iterating-dictionary |
| - undefined-loop-variable |
| - no-else-continue |
| - too-many-nested-blocks |
| - comparison-with-itself |
| - unnecessary-lambda |
| - too-many-function-args |
| - use-dict-literal |
| - redefined-argument-from-local |
| - function-redefined |
| - bad-staticmethod-argument |
| - consider-using-generator |
| - abstract-method |
| - relative-beyond-top-level |
| - use-a-generator |
| - no-else-break |
| - using-constant-test |
| - use-symbolic-message-instead |
| - bad-inline-option |
| - invalid-name |
| - consider-using-min-builtin |
| - consider-using-max-builtin |
| - trailing-comma-tuple |
| - inconsistent-return-statements |
| - global-variable-not-assigned |
| - literal-comparison |
| - expression-not-assigned |
| - used-before-assignment |
| - disallowed-name |
| - not-callable |
| - implicit-str-concat |
| - self-assigning-variable |
| - dangerous-default-value |
| - eval-used |
| - consider-using-from-import |
| - redundant-u-string-prefix |
| enable: |
| - indexing-exception |
| - old-raise-syntax |
| - undefined-variable |
| |
| options: |
| # Good variable names which should always be accepted, separated by a comma |
| good-names: i,j,_,a,b,op,x,y,wd,lr,kv,k,v,s,p,h,c,m,n,X,t,g,f |
| # Bad variable names which should always be refused, separated by a comma |
| #bad-names: |
| # Colon-delimited sets of names that determine each other's naming style when |
| # the name regexes allow several styles. |
| #name-group: |
| # Include a hint for the correct naming format with invalid-name |
| include-naming-hint: no |
| # List of decorators that produce properties, such as abc.abstractproperty. Add |
| # to this list to register other decorators that produce valid properties. |
| property-classes: abc.abstractproperty |
| # Regular expression matching correct module names |
| module-rgx: (([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ |
| # Naming hint for module names |
| module-name-hint: (([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ |
| # Regular expression matching correct constant names |
| const-rgx: (([A-Z_][A-Z0-9_]*)|(__.*__))$ |
| # Naming hint for constant names |
| const-name-hint: (([A-Z_][A-Z0-9_]*)|(__.*__))$ |
| # Regular expression matching correct inline iteration names |
| inlinevar-rgx: "[A-Za-z_][A-Za-z0-9_]*$" |
| # Naming hint for inline iteration names |
| inlinevar-name-hint: "[A-Za-z_][A-Za-z0-9_]*$" |
| # Regular expression matching correct method names |
| method-rgx: "[a-z_][a-z0-9_]{2,30}$" |
| # Naming hint for method names |
| method-name-hint: "[a-z_][a-z0-9_]{2,30}$" |
| # Regular expression matching correct class attribute names |
| class-attribute-rgx: ([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$ |
| # Naming hint for class attribute names |
| class-attribute-name-hint: ([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$ |
| # Regular expression matching correct argument names |
| argument-rgx: "[a-z_][a-z0-9_]{2,30}$" |
| # Naming hint for argument names |
| argument-name-hint: "[a-z_][a-z0-9_]{2,30}$" |
| # Regular expression matching correct attribute names |
| attr-rgx: "[a-z_][a-z0-9_]{2,30}$" |
| # Naming hint for attribute names |
| attr-name-hint: "[a-z_][a-z0-9_]{2,30}$" |
| # Regular expression matching correct variable names |
| variable-rgx: "[a-z_][a-z0-9_]{2,30}$" |
| # Naming hint for variable names |
| variable-name-hint: "[a-z_][a-z0-9_]{2,30}$" |
| # Regular expression matching correct function names |
| function-rgx: "[a-z_][a-z0-9_]{2,30}$" |
| # Naming hint for function names |
| function-name-hint: "[a-z_][a-z0-9_]{2,30}$" |
| # Regular expression matching correct class names |
| class-rgx: "[A-Za-z_][a-zA-Z0-9]+$" |
| # Naming hint for class names |
| class-name-hint: "[A-Z_][a-zA-Z0-9]+$" |
| # Regular expression which should only match function or class names that do |
| # not require a docstring. |
| no-docstring-rgx: ^_ |
| # Minimum line length for functions/classes that require docstrings, shorter |
| # ones are exempt. |
| docstring-min-length: 10 |
| |
| mccabe: |
| disable: |
| - MC0001 # A statement is too complex |
| |
| pep8: |
| disable: |
| # Descriptions and examples for each of the rules in Flake8 https://www.flake8rules.com/ |
| - E305 # Expected 2 blank lines after end of function or class |
| - E306 # Expected 1 blank line before a nested definition |
| - E501 # Line too long (139 > 120 characters) |
| - E117 # Over-indented |
| - E722 # Do not use bare except, specify exception instead |
| - E741 # Do not use variables named 'I', 'O', or 'l' |
| - E712 # Comparison to true should be 'if cond is true:' or 'if cond:' |
| - W605 # Invalid escape sequence 'x' |
| - E704 # Multiple statements on one line (def) |
| - F811 # Redefinition of unused name from line N |
| - F632 # Use ==/!= to compare str, bytes, and int literals |
| - F821 # Undefined name name |
| - F524 # .format(...) missing argument |
| - E116 # Unexpected indentation (comment) |
| - E114 # Indentation is not a multiple of four (comment) |
| - N807 # Function name should not start and end with ‘__’ |
| - E129 # Visually indented line with same indent as next logical line |
| - E131 # Continuation line unaligned for hanging indent |
| - E713 # Test for membership should be 'not in' |
| - E115 # Expected an indented block (comment) |
| - E714 # Test for object identity should be 'is not' |
| - E711 # Comparison to none should be 'if cond is none:' |
| - E101 # Indentation contains mixed spaces and tabs |
| - E721 # Do not compare types, use 'isinstance()' |
| |
| pyflakes: |
| disable: |
| # Descriptions and examples for each of the rules in Flake8 https://www.flake8rules.com/ |
| - F401 # Module imported but unused |
| - F405 # Name may be undefined, or defined from star imports: module |
| - F841 # Local variable name is assigned to but never used |
| - E713 # Test for membership should be 'not in' |
| - E114 # Indentation is not a multiple of four (comment) |
| - E116 # Unexpected indentation (comment) |
| - E711 # Comparison to none should be 'if cond is none:' |
| - E115 # Expected an indented block (comment) |
| - N807 # Function name should not start and end with ‘__’ |
| - E101 # Indentation contains mixed spaces and tabs |
| - F811 # Redefinition of unused name from line N |
| - F632 # Use ==/!= to compare str, bytes, and int literals |
| - F821 # undefined name name |
| - F524 # .format(...) missing argument |