| [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 | 
 |  | 
 | # Allow longer methods than the default. | 
 | # [invalid-name] | 
 | method-rgx=[a-z_][a-z0-9_]{2,35}$ | 
 |  | 
 | # 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=_.* |