Fix signature of `Logger.debug()`

Authored by sicherha on Nov 6 2022, 6:21 PM.



The default argument level=1 must not come before any positional
arguments; it must be accepted as a keyword argument.
As signified by the pylint comments, the signature previously did not
conform to the specification given in

This commit fixes a longstanding problem with crashes occurring in
certain scenarios when the debug level is set to 9. One such crash could
be observed from within SQLAlchemy, which calls debug() in the
following way:
pool.logger.debug("Created new connection %r", connection)
That call caused pykolab's Logger.debug() method to interpret its
second argument as a numeric level, which resulted in a TypeError
because it was actually an sqlite3.Connection.

By accepting level as a keyword argument, all arguments are now
interpreted in the correct order.

Diff Detail

rP pykolab
Lint OK
No Unit Test Coverage
Build Status
Buildable 40502
Build 16418: arc lint + arc unit

Event Timeline

sicherha requested review of this revision.Nov 6 2022, 6:21 PM
sicherha created this revision.
sicherha accepted this revision.Dec 28 2022, 9:36 PM
This revision is now accepted and ready to land.Dec 28 2022, 9:36 PM
This revision was automatically updated to reflect the committed changes.