Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork33.7k
Closed
Description
Commit24d8b88 ("gh-103763: Implement PEP 695 (#103764)") changed how nested class decorators are traced.
Example file nightly-20230518.py:
defdecorator(arg):def_dec(c):returncreturn_dec@decorator(6)@decorator(len([8]),)classMyObject(object):X=13a=14
Tracing with 3.12.0a7:
% python3.12 -m trace --trace nightly-20230518.py --- modulename: nightly-20230518, funcname: <module>nightly-20230518.py(1): def decorator(arg):nightly-20230518.py(6): @decorator(6) --- modulename: nightly-20230518, funcname: decoratornightly-20230518.py(2): def _dec(c):nightly-20230518.py(4): return _decnightly-20230518.py(7): @decorator(nightly-20230518.py(8): len([8]),nightly-20230518.py(7): @decorator( --- modulename: nightly-20230518, funcname: decoratornightly-20230518.py(2): def _dec(c):nightly-20230518.py(4): return _decnightly-20230518.py(10): class MyObject( <*****nightly-20230518.py(11): objectnightly-20230518.py(10): class MyObject( --- modulename: nightly-20230518, funcname: MyObjectnightly-20230518.py(6): @decorator(6)nightly-20230518.py(13): X = 13nightly-20230518.py(7): @decorator( --- modulename: nightly-20230518, funcname: _decnightly-20230518.py(3): return cnightly-20230518.py(6): @decorator(6) --- modulename: nightly-20230518, funcname: _decnightly-20230518.py(3): return cnightly-20230518.py(10): class MyObject(nightly-20230518.py(14): a = 14% python3.12 -c "import sys; print(sys.version)"3.12.0a7 (main, Apr 5 2023, 05:51:58) [Clang 14.0.3 (clang-1403.0.22.14.1)]Running with newer code:
% /usr/local/cpython/bin/python3 -m trace --trace nightly-20230518.py --- modulename: nightly-20230518, funcname: <module>nightly-20230518.py(1): def decorator(arg):nightly-20230518.py(6): @decorator(6) --- modulename: nightly-20230518, funcname: decoratornightly-20230518.py(2): def _dec(c):nightly-20230518.py(4): return _decnightly-20230518.py(7): @decorator(nightly-20230518.py(8): len([8]),nightly-20230518.py(7): @decorator( --- modulename: nightly-20230518, funcname: decoratornightly-20230518.py(2): def _dec(c):nightly-20230518.py(4): return _decnightly-20230518.py(6): @decorator(6) <*****nightly-20230518.py(11): objectnightly-20230518.py(10): class MyObject( --- modulename: nightly-20230518, funcname: MyObjectnightly-20230518.py(6): @decorator(6)nightly-20230518.py(13): X = 13nightly-20230518.py(7): @decorator( --- modulename: nightly-20230518, funcname: _decnightly-20230518.py(3): return cnightly-20230518.py(6): @decorator(6) --- modulename: nightly-20230518, funcname: _decnightly-20230518.py(3): return cnightly-20230518.py(10): class MyObject(nightly-20230518.py(14): a = 14% /usr/local/cpython/bin/python3 -c "import sys; print(sys.version)"3.12.0a7+ (tags/v3.12.0a7-548-g24d8b88420:24d8b88420, May 20 2023, 06:39:38) [Clang 14.0.3 (clang-1403.0.22.14.1)]The different lines are marked with<*****.