From 02d03dfab1fc0b41c5afed862d9f659e733283d6 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Tue, 16 Aug 2016 10:58:14 +1000 Subject: Issue #26823: fix traceback abbreviation docs - be clear builtin traceback display was also updated - show example output in What's New - fix versionadded markup --- Doc/library/traceback.rst | 5 ++--- Doc/whatsnew/3.6.rst | 26 +++++++++++++++++++++++--- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/Doc/library/traceback.rst b/Doc/library/traceback.rst index 5336294..066ee96 100644 --- a/Doc/library/traceback.rst +++ b/Doc/library/traceback.rst @@ -302,9 +302,8 @@ capture data for later printing in a lightweight fashion. repetitions are shown, followed by a summary line stating the exact number of further repetitions. - .. versionchanged:: 3.6 - - Long sequences of repeated frames are now abbreviated. + .. versionchanged:: 3.6 + Long sequences of repeated frames are now abbreviated. :class:`FrameSummary` Objects diff --git a/Doc/whatsnew/3.6.rst b/Doc/whatsnew/3.6.rst index 9050abc..49e8ed8 100644 --- a/Doc/whatsnew/3.6.rst +++ b/Doc/whatsnew/3.6.rst @@ -207,7 +207,12 @@ Example of fatal error on buffer overflow using Other Language Changes ====================== -* None yet. +Some smaller changes made to the core Python language are: + +* Long sequences of repeated traceback lines are now abbreviated as + ``"[Previous line repeated {count} more times]"`` (see + :ref:`py36-traceback` for an example). + (Contributed by Emanuel Barry in :issue:`26823`.) New Modules @@ -438,11 +443,26 @@ not work in future versions of Tcl. (Contributed by Serhiy Storchaka in :issue:`22115`). +.. _py36-traceback: + traceback --------- -The :meth:`~traceback.StackSummary.format` method now abbreviates long sequences -of repeated lines as ``"[Previous line repeated {count} more times]"``. +Both the traceback module and the interpreter's builtin exception display now +abbreviate long sequences of repeated lines in tracebacks as shown in the +following example:: + + >>> def f(): f() + ... + >>> f() + Traceback (most recent call last): + File "", line 1, in + File "", line 1, in f + File "", line 1, in f + File "", line 1, in f + [Previous line repeated 995 more times] + RecursionError: maximum recursion depth exceeded + (Contributed by Emanuel Barry in :issue:`26823`.) -- cgit v0.12