This is to prevent users having to think about escaping the default value for
``logging-format-style`` in the generated config file. Also our config parsing
utilities don't quite support escaped values when it comes to ``choices`` detection,
so this would have needed various hacks around that.
Close#2614
logging-format-style accepts one of '%' or '{', (defaults to '%'). When '{' is selected, logging
checker assumes str.format() style format strings for calls to the logging.
pylint was unable to count the required number of args for the format string when the
format string was using the `{` format. The new feature indirectly fixes that by allowing
the proper interpretation of that format string.
When pylint encounters unused imports in scopes (e.g. functions),
it used to emit `unused-variable`. This is somewhat confusing, as those
names are not necessarily variables, so instead let's emit the more
obvious `unused-import`.
Close#2421
Currently the function `checkers.utils.is_subclass_of()` is raising a
`NoneType object has no attribute name` exception when only one of the
arguments (nodes) is `None`.
This change fix that updating the function to make sure all params are
an instance of `astroid.ClassDef` before the proper check