-
-
Notifications
You must be signed in to change notification settings - Fork 31.9k
bpo-43950: Print columns in tracebacks (PEP 657) #26958
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
d69a6a4
to
6d4302d
Compare
@ammaraskar Ground control to major tom, commencing countdown engines on Rebase time! |
6d4302d
to
1fd558c
Compare
Yeah, I will do that. Could you address first @isidentical feedback? |
73bcea3
to
9a31711
Compare
e0b1f4b
to
58e2f7f
Compare
@ammaraskar Can you open the prs for the follow-ups? |
#27023 for the config change, working on the traceback.py refactor + a bpo issue. |
https://bugs.python.org/issue44569 for the traceback.py change, PR for it coming soon. |
@@ -309,7 +321,7 @@ def walk_stack(f): | |||
current stack is used. Usually used with StackSummary.extract. | |||
""" | |||
if f is None: | |||
f = sys._getframe().f_back.f_back | |||
f = sys._getframe().f_back.f_back.f_back.f_back |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this doesn't seem correct -
Python 3.11.0 | packaged by conda-forge | (main, Oct 25 2022, 06:18:27) [GCC 10.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import traceback
>>> traceback.walk_stack(None)
<generator object walk_stack at 0x7f308f4c4700>
>>> list(traceback.walk_stack(None))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/graingert/anaconda3/envs/dask-distributed-311/lib/python3.11/traceback.py", line 332, in walk_stack
f = sys._getframe().f_back.f_back.f_back.f_back
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'f_back'
>>>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, don't comment on merged pull requests because they are not monitored and you risk no one looking at your comment. Always open a new issue :)
This pull request implements the relevant bits in traceback printing to utilize the new
co_positions
andPyCode_Addr2...
APIs to print carets for column locations.All the internal structures, and data representation are subjected to change in future PRs as we add optimizations.
https://bugs.python.org/issue43950