It would be convenient if instead of: hdlr = logging.StreamHandler() hglr.setLevel(logging.DEBUG) root.addHandler(hdlr) it would be possible to write: root.addHandler(logging.StreamHandler().setLevel(logging.DEBUG))
List is a standard type and it have None returned for a reson. Logging is a library with its own semantic and high level object. Here you don't need to return None to explicitly say that the object was modified in place.
Well, there is argparse, but it doesn't support method chaining. Whatever, it is just a proposal. If consistency inside stdlib covers calling conventions for bundled user-level libs - I am fine with that.
I agree with Georg. Besides, as far as possible, the API should be consistent across versions of Python, unless something is needed to take advantage of added features. With your proposal, users could write library code which then would not work in older Python versions - and that's not something we want to encourage.