Skip to content

ababino/reverse_tb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reverse_tb

reverse_tb is a jupyter notebook magic that reverses the order of the traceback, making it easier to see the most relevant information at the top of the cell output.

Install

pip install reverse_tb

How to use

from reverse_tb.core import reverse_tb
def foo():
    return bar()

def bar():
    return baz()

def baz():
    try:
        qux()
    except KeyError as e:
        raise Exception
    return qux()

def qux():
    d = {}
    return d['key']
foo()
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
Cell In[2], line 9, in baz()
      8 try:
----> 9     qux()
     10 except KeyError as e:

Cell In[2], line 16, in qux()
     15 d = {}
---> 16 return d['key']

KeyError: 'key'

During handling of the above exception, another exception occurred:

Exception                                 Traceback (most recent call last)
Cell In[3], line 1
----> 1 foo()

Cell In[2], line 2, in foo()
      1 def foo():
----> 2     return bar()

Cell In[2], line 5, in bar()
      4 def bar():
----> 5     return baz()

Cell In[2], line 11, in baz()
      9     qux()
     10 except KeyError as e:
---> 11     raise Exception
     12 return qux()

Exception: 
%%reverse_tb
foo()
---------------------------------------------------------------------------
KeyError                                  Traceback (last call first)
KeyError: 'key'
Cell In[2], line 16, in qux()
     15 d = {}
---> 16 return d['key']
        d = {}

Cell In[2], line 9, in baz()
      8 try:
----> 9     qux()
     10 except KeyError as e:


During handling of the above exception, another exception occurred:

Exception                                 Traceback (last call first)
Exception: 
Cell In[2], line 11, in baz()
      9     qux()
     10 except KeyError as e:
---> 11     raise Exception
     12 return qux()

Cell In[2], line 5, in bar()
      4 def bar():
----> 5     return baz()

Cell In[2], line 2, in foo()
      1 def foo():
----> 2     return bar()

Cell In[4], line 1
----> 1 foo()
from reverse_tb.on import *
foo()
---------------------------------------------------------------------------
KeyError                                  Traceback (last call first)
KeyError: 'key'
Cell In[2], line 16, in qux()
     15 d = {}
---> 16 return d['key']
        d = {}

Cell In[2], line 9, in baz()
      8 try:
----> 9     qux()
     10 except KeyError as e:


During handling of the above exception, another exception occurred:

Exception                                 Traceback (last call first)
Exception: 
Cell In[2], line 11, in baz()
      9     qux()
     10 except KeyError as e:
---> 11     raise Exception
     12 return qux()

Cell In[2], line 5, in bar()
      4 def bar():
----> 5     return baz()

Cell In[2], line 2, in foo()
      1 def foo():
----> 2     return bar()

Cell In[4], line 1
----> 1 foo()
reverse_tb_off()
foo()
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
Cell In[2], line 9, in baz()
      8 try:
----> 9     qux()
     10 except KeyError as e:

Cell In[2], line 16, in qux()
     15 d = {}
---> 16 return d['key']

KeyError: 'key'

During handling of the above exception, another exception occurred:

Exception                                 Traceback (most recent call last)
Cell In[3], line 1
----> 1 foo()

Cell In[2], line 2, in foo()
      1 def foo():
----> 2     return bar()

Cell In[2], line 5, in bar()
      4 def bar():
----> 5     return baz()

Cell In[2], line 11, in baz()
      9     qux()
     10 except KeyError as e:
---> 11     raise Exception
     12 return qux()

Exception: 

About

reverse_tb is a jupyter notebook magic that reverses the order of the traceback, making it easier to see the most relevant information at the top of the cell output.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published