##// END OF EJS Templates
Fix unintentional skipping of module level doctests...
Fix unintentional skipping of module level doctests Importing `skip_doctest` decorator unintentionally marks for skipping a module level doctest. It happens because doctests discovery only checks whether a variable with name `skip_doctest` is presented without checking the type. I have renamed the 'magic' variable name to `__skip_doctest__` to resolve the name clash, and also made the check actually depend on the variable content. The module level doctest in `core/debugger.py` was previously unintentionally skipped and now is disabled because it contains syntax/name errors.

File last commit:

r26686:4f685f1e
r26873:17153999
Show More
traceback-improvements.rst
39 lines | 1.1 KiB | text/x-rst | RstLexer
/ docs / source / whatsnew / pr / traceback-improvements.rst

Traceback improvements

Previously, error tracebacks for errors happening in code cells were showing a hash, the one used for compiling the Python AST:

In [1]: def foo():
...:     return 3 / 0
...:

In [2]: foo()
---------------------------------------------------------------------------
ZeroDivisionError                         Traceback (most recent call last)
<ipython-input-2-c19b6d9633cf> in <module>
----> 1 foo()

<ipython-input-1-1595a74c32d5> in foo()
    1 def foo():
----> 2     return 3 / 0
    3

ZeroDivisionError: division by zero

The error traceback is now correctly formatted, showing the cell number in which the error happened:

In [1]: def foo():
...:     return 3 / 0
...:

In [2]: foo()
---------------------------------------------------------------------------
ZeroDivisionError                         Traceback (most recent call last)
In [2], in <module>
----> 1 foo()

In [1], in foo()
    1 def foo():
----> 2     return 3 / 0

ZeroDivisionError: division by zero