Skip to content

bug in RichTraceback constructor #122

Closed
@sqlalchemy-bot

Description

@sqlalchemy-bot

Migrated issue, originally created by Anonymous

Hi.

The RichTraceback class constructor accepts an optional traceback parameter.

However when passing a not null object, an exception is raised:

<...>
File "<...>/mako/exceptions.py", line 156, in _init
    return (type, value, new_trcback)
variable 'type' referenced before assignment

The bug is in the _init method:

def _init(self, trcback):
    """format a traceback from sys.exc_info() into 7-item tuples,
       containing the regular four traceback tuple items, plus the
       original template filename, the line number adjusted relative to
       the template source, and code line from that line number of the
       template."""
    import mako.template
    mods = {}
    if not trcback:
        (type, value, trcback) = sys.exc_info()

type and value variables are only assigned if trcback is None.

The main problem with RichTraceback, however, is that it is not possible to specify a custom exc_info to use when rendering the traceback.

Thanks Manlio Perillo

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions