A fancy plugin to boost up your logging with loguru
logoru-mypy should be compatible with mypy>=0.770.
Currently there is no limit as far as the compatibility can go. If you are interested to see
how far loguru_mypy goes you can visit CI/CD action and check its
matrix.
Simply execute:
pip install loguru-mypyAnd later on modify your mypy.ini configuration file with
[mypy]
plugins = loguru_mypyThat is all, your code is now ready to be linted.
loguru-mypy is obviously a mypy plugin that allows to avoid
some of those little runtime trickeries :).
Here is a short attempt to list some of those:
logger.opt(lazy=True) in facts returns a logger that we call lazy. Lazy loggers accept only
typing.Callable[[], t.Any] in place of positional or named arguments. Passing a callable that
accepts even a single argument thus results in runtime error. loguru-mypy detects that fact
and lets you know before your runtime reaches that portion of a code.