[issue44729] sys.setprofile bug
Hasan
report at bugs.python.org
Fri Jul 23 19:31:28 EDT 2021
New submission from Hasan <aliyevH at hotmail.com>:
1. If we try to import modules except os or sys, we will get such events.
2. If we access frame.f_locals.items() and frame.f_code.replace() inside tracefunc, function execution shows events and stops, but if access other frame.f_locals.* it begins to call and look all files in python directory
import sys
def tracefunc(frame, event, arg):
if event == "call":
print('frame.f_locals.items: ->', frame.f_locals.items())
return tracefunc
sys.setprofile(tracefunc)
def test_sum(x: int, y: int):
return x + y
test_sum(10, 20)
import asyncio
-------------
event: -> call
frame.f_locals.items: -> dict_items([('x', 10), ('y', 20)])
event: -> return
event: -> call
frame.f_locals.items: -> dict_items([('name', 'asyncio'), ('import_', <built-in function __import__>)])
event: -> call
frame.f_locals.items: -> dict_items([('self', <_frozen_importlib._ModuleLockManager object at 0x10ae2a3f0>), ('name', 'asyncio')])
event: -> return
event: -> call
frame.f_locals.items: -> dict_items([('self', <_frozen_importlib._ModuleLockManager object at 0x10ae2a3f0>)])
event: -> call
frame.f_locals.items: -> dict_items([('name', 'asyncio')])
event: -> c_call
event: -> c_return
event: -> call
frame.f_locals.items: -> Traceback (most recent call last):
File "/Users/hasanaliyev/Documents/programming/github/test/debugger/notwork.py", line 38, in <module>
import asyncio
^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1024, in _find_and_load
File "<frozen importlib._bootstrap>", line 170, in __enter__
File "<frozen importlib._bootstrap>", line 196, in _get_module_lock
File "<frozen importlib._bootstrap>", line 71, in __init__
File "/Users/hasanaliyev/Documents/programming/github/test/debugger/notwork.py", line 24, in tracefunc
print('frame.f_locals.items: ->', frame.f_locals.items())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 139, in __repr__
AttributeError: '_ModuleLock' object has no attribute 'name'
----------
components: Library (Lib)
messages: 398102
nosy: AliyevH
priority: normal
severity: normal
status: open
title: sys.setprofile bug
versions: Python 3.11
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue44729>
_______________________________________
More information about the Python-bugs-list
mailing list