mirror of
https://github.com/python/cpython.git
synced 2026-01-26 12:55:08 +00:00
gh-143952: Fix asyncio tools to work with the new remote debugging API (#143954)
This commit is contained in:
parent
7ca9e7ad05
commit
63cc1257db
@ -27,10 +27,10 @@ class CycleFoundException(Exception):
|
||||
# ─── indexing helpers ───────────────────────────────────────────
|
||||
def _format_stack_entry(elem: str|FrameInfo) -> str:
|
||||
if not isinstance(elem, str):
|
||||
if elem.lineno == 0 and elem.filename == "":
|
||||
if elem.location.lineno == 0 and elem.filename == "":
|
||||
return f"{elem.funcname}"
|
||||
else:
|
||||
return f"{elem.funcname} {elem.filename}:{elem.lineno}"
|
||||
return f"{elem.funcname} {elem.filename}:{elem.location.lineno}"
|
||||
return elem
|
||||
|
||||
|
||||
|
||||
@ -4,7 +4,8 @@ from asyncio import tools
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
FrameInfo = namedtuple('FrameInfo', ['funcname', 'filename', 'lineno'])
|
||||
LocationInfo = namedtuple('LocationInfo', ['lineno', 'end_lineno', 'col_offset', 'end_col_offset'], defaults=[None]*4)
|
||||
FrameInfo = namedtuple('FrameInfo', ['funcname', 'filename', 'location'])
|
||||
CoroInfo = namedtuple('CoroInfo', ['call_stack', 'task_name'])
|
||||
TaskInfo = namedtuple('TaskInfo', ['task_id', 'task_name', 'coroutine_stack', 'awaited_by'])
|
||||
AwaitedInfo = namedtuple('AwaitedInfo', ['thread_id', 'awaited_by'])
|
||||
@ -33,33 +34,33 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiter3", "/path/to/app.py", 130),
|
||||
FrameInfo("awaiter2", "/path/to/app.py", 120),
|
||||
FrameInfo("awaiter", "/path/to/app.py", 110)
|
||||
FrameInfo("awaiter3", "/path/to/app.py", LocationInfo(130)),
|
||||
FrameInfo("awaiter2", "/path/to/app.py", LocationInfo(120)),
|
||||
FrameInfo("awaiter", "/path/to/app.py", LocationInfo(110))
|
||||
],
|
||||
task_name=4
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiterB3", "/path/to/app.py", 190),
|
||||
FrameInfo("awaiterB2", "/path/to/app.py", 180),
|
||||
FrameInfo("awaiterB", "/path/to/app.py", 170)
|
||||
FrameInfo("awaiterB3", "/path/to/app.py", LocationInfo(190)),
|
||||
FrameInfo("awaiterB2", "/path/to/app.py", LocationInfo(180)),
|
||||
FrameInfo("awaiterB", "/path/to/app.py", LocationInfo(170))
|
||||
],
|
||||
task_name=5
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiterB3", "/path/to/app.py", 190),
|
||||
FrameInfo("awaiterB2", "/path/to/app.py", 180),
|
||||
FrameInfo("awaiterB", "/path/to/app.py", 170)
|
||||
FrameInfo("awaiterB3", "/path/to/app.py", LocationInfo(190)),
|
||||
FrameInfo("awaiterB2", "/path/to/app.py", LocationInfo(180)),
|
||||
FrameInfo("awaiterB", "/path/to/app.py", LocationInfo(170))
|
||||
],
|
||||
task_name=6
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiter3", "/path/to/app.py", 130),
|
||||
FrameInfo("awaiter2", "/path/to/app.py", 120),
|
||||
FrameInfo("awaiter", "/path/to/app.py", 110)
|
||||
FrameInfo("awaiter3", "/path/to/app.py", LocationInfo(130)),
|
||||
FrameInfo("awaiter2", "/path/to/app.py", LocationInfo(120)),
|
||||
FrameInfo("awaiter", "/path/to/app.py", LocationInfo(110))
|
||||
],
|
||||
task_name=7
|
||||
)
|
||||
@ -72,9 +73,9 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("main", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("main", "", LocationInfo(0))
|
||||
],
|
||||
task_name=2
|
||||
)
|
||||
@ -87,9 +88,9 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("main", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("main", "", LocationInfo(0))
|
||||
],
|
||||
task_name=2
|
||||
)
|
||||
@ -102,10 +103,10 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=8
|
||||
)
|
||||
@ -118,10 +119,10 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=8
|
||||
)
|
||||
@ -134,10 +135,10 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=9
|
||||
)
|
||||
@ -150,10 +151,10 @@ TEST_INPUTS_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=9
|
||||
)
|
||||
@ -222,7 +223,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main2", "", 0)],
|
||||
call_stack=[FrameInfo("main2", "", LocationInfo(0))],
|
||||
task_name=5
|
||||
)
|
||||
]
|
||||
@ -233,7 +234,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main2", "", 0)],
|
||||
call_stack=[FrameInfo("main2", "", LocationInfo(0))],
|
||||
task_name=5
|
||||
)
|
||||
]
|
||||
@ -244,7 +245,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main2", "", 0)],
|
||||
call_stack=[FrameInfo("main2", "", LocationInfo(0))],
|
||||
task_name=5
|
||||
)
|
||||
]
|
||||
@ -266,7 +267,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -277,7 +278,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -288,7 +289,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -347,7 +348,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
)
|
||||
]
|
||||
@ -358,7 +359,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
)
|
||||
]
|
||||
@ -369,7 +370,7 @@ TEST_INPUTS_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
)
|
||||
]
|
||||
@ -415,11 +416,11 @@ TEST_INPUTS_CYCLES_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("awaiter2", "", 0)],
|
||||
call_stack=[FrameInfo("awaiter2", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -430,7 +431,7 @@ TEST_INPUTS_CYCLES_TREE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("awaiter", "", 0)],
|
||||
call_stack=[FrameInfo("awaiter", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -462,9 +463,9 @@ TEST_INPUTS_CYCLES_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_b", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_b", "", LocationInfo(0))
|
||||
],
|
||||
task_name=4
|
||||
)
|
||||
@ -477,17 +478,17 @@ TEST_INPUTS_CYCLES_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_c", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_c", "", LocationInfo(0))
|
||||
],
|
||||
task_name=5
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_a", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_a", "", LocationInfo(0))
|
||||
],
|
||||
task_name=3
|
||||
)
|
||||
@ -500,8 +501,8 @@ TEST_INPUTS_CYCLES_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0))
|
||||
],
|
||||
task_name=6
|
||||
)
|
||||
@ -514,9 +515,9 @@ TEST_INPUTS_CYCLES_TREE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_b", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_b", "", LocationInfo(0))
|
||||
],
|
||||
task_name=4
|
||||
)
|
||||
@ -553,33 +554,33 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiter3", "", 0),
|
||||
FrameInfo("awaiter2", "", 0),
|
||||
FrameInfo("awaiter", "", 0)
|
||||
FrameInfo("awaiter3", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter2", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter", "", LocationInfo(0))
|
||||
],
|
||||
task_name=4
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiter1_3", "", 0),
|
||||
FrameInfo("awaiter1_2", "", 0),
|
||||
FrameInfo("awaiter1", "", 0)
|
||||
FrameInfo("awaiter1_3", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter1_2", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter1", "", LocationInfo(0))
|
||||
],
|
||||
task_name=5
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiter1_3", "", 0),
|
||||
FrameInfo("awaiter1_2", "", 0),
|
||||
FrameInfo("awaiter1", "", 0)
|
||||
FrameInfo("awaiter1_3", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter1_2", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter1", "", LocationInfo(0))
|
||||
],
|
||||
task_name=6
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("awaiter3", "", 0),
|
||||
FrameInfo("awaiter2", "", 0),
|
||||
FrameInfo("awaiter", "", 0)
|
||||
FrameInfo("awaiter3", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter2", "", LocationInfo(0)),
|
||||
FrameInfo("awaiter", "", LocationInfo(0))
|
||||
],
|
||||
task_name=7
|
||||
)
|
||||
@ -592,9 +593,9 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("main", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("main", "", LocationInfo(0))
|
||||
],
|
||||
task_name=2
|
||||
)
|
||||
@ -607,9 +608,9 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("main", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("main", "", LocationInfo(0))
|
||||
],
|
||||
task_name=2
|
||||
)
|
||||
@ -622,10 +623,10 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=8
|
||||
)
|
||||
@ -638,10 +639,10 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=8
|
||||
)
|
||||
@ -654,10 +655,10 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=9
|
||||
)
|
||||
@ -670,10 +671,10 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("_aexit", "", 0),
|
||||
FrameInfo("__aexit__", "", 0),
|
||||
FrameInfo("blocho_caller", "", 0),
|
||||
FrameInfo("bloch", "", 0)
|
||||
FrameInfo("_aexit", "", LocationInfo(0)),
|
||||
FrameInfo("__aexit__", "", LocationInfo(0)),
|
||||
FrameInfo("blocho_caller", "", LocationInfo(0)),
|
||||
FrameInfo("bloch", "", LocationInfo(0))
|
||||
],
|
||||
task_name=9
|
||||
)
|
||||
@ -797,7 +798,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main2", "", 0)],
|
||||
call_stack=[FrameInfo("main2", "", LocationInfo(0))],
|
||||
task_name=5
|
||||
)
|
||||
]
|
||||
@ -808,7 +809,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main2", "", 0)],
|
||||
call_stack=[FrameInfo("main2", "", LocationInfo(0))],
|
||||
task_name=5
|
||||
)
|
||||
]
|
||||
@ -819,7 +820,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main2", "", 0)],
|
||||
call_stack=[FrameInfo("main2", "", LocationInfo(0))],
|
||||
task_name=5
|
||||
)
|
||||
]
|
||||
@ -841,7 +842,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -852,7 +853,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -863,7 +864,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -916,7 +917,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
)
|
||||
]
|
||||
@ -927,7 +928,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
)
|
||||
]
|
||||
@ -938,7 +939,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
)
|
||||
]
|
||||
@ -979,11 +980,11 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("awaiter2", "", 0)],
|
||||
call_stack=[FrameInfo("awaiter2", "", LocationInfo(0))],
|
||||
task_name=4
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -994,7 +995,7 @@ TEST_INPUTS_TABLE = [
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("awaiter", "", 0)],
|
||||
call_stack=[FrameInfo("awaiter", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -1033,9 +1034,9 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_b", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_b", "", LocationInfo(0))
|
||||
],
|
||||
task_name=4
|
||||
)
|
||||
@ -1048,17 +1049,17 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_c", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_c", "", LocationInfo(0))
|
||||
],
|
||||
task_name=5
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_a", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_a", "", LocationInfo(0))
|
||||
],
|
||||
task_name=3
|
||||
)
|
||||
@ -1071,8 +1072,8 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0))
|
||||
],
|
||||
task_name=6
|
||||
)
|
||||
@ -1085,9 +1086,9 @@ TEST_INPUTS_TABLE = [
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("nested", "", 0),
|
||||
FrameInfo("task_b", "", 0)
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("nested", "", LocationInfo(0)),
|
||||
FrameInfo("task_b", "", LocationInfo(0))
|
||||
],
|
||||
task_name=4
|
||||
)
|
||||
@ -1290,7 +1291,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -1301,7 +1302,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1331,7 +1332,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1342,7 +1343,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -1379,7 +1380,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1390,7 +1391,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("main", "", 0)],
|
||||
call_stack=[FrameInfo("main", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -1417,11 +1418,11 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("c1", "", 0),
|
||||
FrameInfo("c2", "", 0),
|
||||
FrameInfo("c3", "", 0),
|
||||
FrameInfo("c4", "", 0),
|
||||
FrameInfo("c5", "", 0)
|
||||
FrameInfo("c1", "", LocationInfo(0)),
|
||||
FrameInfo("c2", "", LocationInfo(0)),
|
||||
FrameInfo("c3", "", LocationInfo(0)),
|
||||
FrameInfo("c4", "", LocationInfo(0)),
|
||||
FrameInfo("c5", "", LocationInfo(0))
|
||||
],
|
||||
task_name=11
|
||||
)
|
||||
@ -1461,7 +1462,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("call1", "", 0)],
|
||||
call_stack=[FrameInfo("call1", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1472,7 +1473,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("call2", "", 0)],
|
||||
call_stack=[FrameInfo("call2", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -1483,11 +1484,11 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("call3", "", 0)],
|
||||
call_stack=[FrameInfo("call3", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("call4", "", 0)],
|
||||
call_stack=[FrameInfo("call4", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1511,7 +1512,7 @@ class TestAsyncioToolsBasic(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("foo", "", 0)],
|
||||
call_stack=[FrameInfo("foo", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1555,7 +1556,7 @@ class TestAsyncioToolsEdgeCases(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("loopback", "", 0)],
|
||||
call_stack=[FrameInfo("loopback", "", LocationInfo(0))],
|
||||
task_name=1
|
||||
)
|
||||
]
|
||||
@ -1579,7 +1580,7 @@ class TestAsyncioToolsEdgeCases(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("coro", "", 0)],
|
||||
call_stack=[FrameInfo("coro", "", LocationInfo(0))],
|
||||
task_name=999
|
||||
)
|
||||
]
|
||||
@ -1603,11 +1604,11 @@ class TestAsyncioToolsEdgeCases(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("frameA", "", 0)],
|
||||
call_stack=[FrameInfo("frameA", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
),
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("frameA", "", 0)],
|
||||
call_stack=[FrameInfo("frameA", "", LocationInfo(0))],
|
||||
task_name=3
|
||||
)
|
||||
]
|
||||
@ -1651,7 +1652,7 @@ class TestAsyncioToolsEdgeCases(unittest.TestCase):
|
||||
coroutine_stack=[],
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[FrameInfo("f1", "", 0)],
|
||||
call_stack=[FrameInfo("f1", "", LocationInfo(0))],
|
||||
task_name=2
|
||||
)
|
||||
]
|
||||
@ -1682,8 +1683,8 @@ class TestAsyncioToolsEdgeCases(unittest.TestCase):
|
||||
awaited_by=[
|
||||
CoroInfo(
|
||||
call_stack=[
|
||||
FrameInfo("f1", "", 0),
|
||||
FrameInfo("f2", "", 0)
|
||||
FrameInfo("f1", "", LocationInfo(0)),
|
||||
FrameInfo("f2", "", LocationInfo(0))
|
||||
],
|
||||
task_name=2
|
||||
)
|
||||
|
||||
@ -0,0 +1,2 @@
|
||||
Fixed :mod:`asyncio` debugging tools to work with new remote debugging API.
|
||||
Patch by Bartosz Sławecki.
|
||||
Loading…
x
Reference in New Issue
Block a user