facebook/tornado — pull request #569 by MartinMartimeo (2012-07-21 19:59:50+00:00)
Title: Adding super(...).__init__ in web.py

When using multiple class extending, all super classes need to execute super(..).__init__.py as well, otherwise not all __init__ methods will be executed.

Example:
from tornado import web

class A(object):
def __init__(self, *args, **kwargs):
super(A, self).__init__(*args, **kwargs)

class B(object):
def __init__(self, *args, **kwargs):
super(B, self).__init__(*args, **kwargs)

class BaseHandler(web.RequestHandler, A, B):
def __init__(self, *args, **kwargs):
super(BaseHandler, self).__init__(*args, **kwargs)

without calling super(...).__init__() in RequestHandler, neither A.__init__ nor B.__init__ will be executed.