-
-
Notifications
You must be signed in to change notification settings - Fork 30.2k
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
gh-125884: Support breakpoint on functions with annotations #125892
gh-125884: Support breakpoint on functions with annotations #125892
Conversation
@@ -363,6 +363,42 @@ def test_pdb_breakpoint_commands(): | |||
4 | |||
""" | |||
|
|||
def test_pdb_breakpoint_on_annotated_function_def(): |
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.
Are there tests for functions with decorators?
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.
Not really. What's the expected behavior? We can't resolve the decorator in pdb, we will only add the breakpoint inside the decorated function.
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.
Well, that's not true.. It depends on whether the function is in the name space. If it's already in the namespace, we will set the breakpoint in the decorator.
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.
I don't know what the expected behaviour would be. Still interesting what the behaviour is.
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.
So if it's not compiled, we will be searching based on source code, and we will break inside the function. If it is compiled, then the name in the name space will point to a decorated function, and the code object would be the return value of the decorator, so probably a wrapper.
Co-authored-by: Irit Katriel <[email protected]>
Thanks @gaogaotiantian for the PR 🌮🎉.. I'm working now to backport this PR to: 3.12, 3.13. |
Sorry, @gaogaotiantian, I could not cleanly backport this to
|
Sorry, @gaogaotiantian, I could not cleanly backport this to
|
…ons (pythonGH-125892) (cherry picked from commit 8f2c0f7) Co-authored-by: Tian Gao <[email protected]>
GH-125902 is a backport of this pull request to the 3.13 branch. |
GH-125903 is a backport of this pull request to the 3.12 branch. |
#125903) * [3.12] gh-125884: Support breakpoint on functions with annotations (GH-125892) (cherry picked from commit 8f2c0f7) Co-authored-by: Tian Gao <[email protected]>
close #125885 as well.
Two things are fixed: