| [MASTER] | |
| init-hook='import sys; sys.path.append("scripts")' | |
| [BASIC] | |
| # We're ok with short funtion argument names. | |
| # [invalid-name] | |
| argument-rgx=[a-z_][a-z0-9_]*$ | |
| # Allow filter and map. | |
| # [bad-builtin] | |
| bad-functions=input | |
| # We prefer docstrings, but we don't require them on all functions. | |
| # Require them only on long functions (for some value of long). | |
| # [missing-docstring] | |
| docstring-min-length=10 | |
| # No upper limit on method names. Pylint <2.1.0 has an upper limit of 30. | |
| # [invalid-name] | |
| method-rgx=[a-z_][a-z0-9_]{2,}$ | |
| # Allow module names containing a dash (but no underscore or uppercase letter). | |
| # They are whole programs, not meant to be included by another module. | |
| # [invalid-name] | |
| module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+)|[a-z][-0-9a-z]+)$ | |
| # Some functions don't need docstrings. | |
| # [missing-docstring] | |
| no-docstring-rgx=(run_)?main$ | |
| # We're ok with short local or global variable names. | |
| # [invalid-name] | |
| variable-rgx=[a-z_][a-z0-9_]*$ | |
| [DESIGN] | |
| # Allow more than the default 7 attributes. | |
| # [too-many-instance-attributes] | |
| max-attributes=15 | |
| [FORMAT] | |
| # Allow longer modules than the default recommended maximum. | |
| # [too-many-lines] | |
| max-module-lines=2000 | |
| [MESSAGES CONTROL] | |
| # * locally-disabled, locally-enabled: If we disable or enable a message | |
| # locally, it's by design. There's no need to clutter the Pylint output | |
| # with this information. | |
| # * logging-format-interpolation: Pylint warns about things like | |
| # ``log.info('...'.format(...))``. It insists on ``log.info('...', ...)``. | |
| # This is of minor utility (mainly a performance gain when there are | |
| # many messages that use formatting and are below the log level). | |
| # Some versions of Pylint (including 1.8, which is the version on | |
| # Ubuntu 18.04) only recognize old-style format strings using '%', | |
| # and complain about something like ``log.info('{}', foo)`` with | |
| # logging-too-many-args (Pylint supports new-style formatting if | |
| # declared globally with logging_format_style under [LOGGING] but | |
| # this requires Pylint >=2.2). | |
| # * no-else-return: Allow the perfectly reasonable idiom | |
| # if condition1: | |
| # return value1 | |
| # else: | |
| # return value2 | |
| # * unnecessary-pass: If we take the trouble of adding a line with "pass", | |
| # it's because we think the code is clearer that way. | |
| disable=locally-disabled,locally-enabled,logging-format-interpolation,no-else-return,unnecessary-pass | |
| [REPORTS] | |
| # Don't diplay statistics. Just the facts. | |
| reports=no | |
| [VARIABLES] | |
| # Allow unused variables if their name starts with an underscore. | |
| # [unused-argument] | |
| dummy-variables-rgx=_.* |