[MASTER]

# Use multiple processes to speed up Pylint.
jobs=1


[MESSAGES CONTROL]

# Enable the message, report, category or checker with the given id(s)
enable=all

# Disable the message, report, category or checker with the given id(s).
disable=
# many conventions are incompatible with the coding style
        invalid-name,misplaced-comparison-constant,missing-docstring,
        bad-whitespace,bad-continuation,
# I strongly disagree with this one.
        no-else-return,
# disable info when we disable checkers in-file
        I,
# mixin members of vcsn_cxx are not detected
        maybe-no-member,no-init,no-member,
# correct uses that are considered warnings
        star-args,unnecessary-lambda,
# API too deep for pylint
        too-many-ancestors,
# known false-negative of pylint
        redefined-variable-type,
# various structures that are considered invalid
        function-redefined,too-few-public-methods,too-many-public-methods,
        redefined-builtin,no-self-use,pointless-statement,wildcard-import,
        no-method-argument,fixme,cyclic-import,duplicate-code,
        redefined-outer-name,too-many-branches,
        too-many-nested-blocks,multiple-imports,too-many-statements,
        unused-wildcard-import,
# This is a nuisance in the order we pass arguments.
        keyword-arg-before-vararg

[REPORTS]

# Set the output format. Available formats are text, parseable, colorized, msvs
# (visual studio) and html.
output-format=text

# Tells whether to display a full report or only the messages
reports=no

# Template used to display messages. This is a python new-style format string
# used to format the message information. See doc for all details
msg-template={category:10s} {msg_id}:{line:4d}  {msg} ({symbol})


[TYPECHECK]

# Tells whether missing members accessed in mixin class should be ignored. A
# mixin class is detected if its name ends with "mixin" (case insensitive).
ignore-mixin-members=yes

# List of module names for which member attributes should not be checked
# (useful for modules/projects where namespaces are manipulated during runtime
# and thus existing member attributes cannot be deduced by static analysis. It
# supports qualified module names, as well as Unix pattern matching.
ignored-modules=vcsn_cxx,gdb,IPython,ipywidgets


[VARIABLES]

# Tells whether we should check for unused import in __init__ files.
init-import=no

# A regular expression matching the name of dummy variables (i.e. expectedly
# not used).
dummy-variables-rgx=_$|dummy

# List of additional names supposed to be defined in builtins. Remember that
# you should avoid to define new builtins when possible.
additional-builtins=
# built in IPython
                    get_ipython


[FORMAT]

# Maximum number of characters on a single line.
max-line-length=100


[CLASSES]

# List of method names used to declare (i.e. assign) instance attributes.
defining-attr-methods=__init__,__new__,setUp


[EXCEPTIONS]

# Exceptions that will emit a warning when being caught. Defaults to
# "Exception"
overgeneral-exceptions=Exception
