One that I didn't see mentioned: why do I have to import a separate module and call a weirdly named function to get a stack trace? Why isn't it just a method on Exception? Not a major issue but it just feels wrong, along the same lines as __init__ and "if __name__=='__main__'".
At some level it makes sense probably... It's not a very common operation, so don't load it unless needed. It looks like an arbitrary choice, rather than good/bad design.