EPISODE · Mar 24, 2025 · 1H 44M
Episode 20: Remote Code Execution By Design
from core.py · host Pablo Galindo and Łukasz Langa
In this episode, Pablo's avoiding the topic of garbage collection by talking about his latest PEP, which allows unprecedented interaction with a running Python process. We also resolve the bet about reference counting semantics, mention some notable changes in Python since the last episode, and discuss syntax highlighting in PyREPL and why it's bad, actually.## Timestamps(00:00:00) INTRO(00:02:16) PART 1: PABLO'S LATEST PEP(00:04:34) gdb is IMPOSSIBLE(00:12:49) Make the process run code for you(00:14:14) This already works on PyPy(00:15:13) How does it work?(00:25:38) Why a file?(00:31:15) What if you don't trust Pablo?(00:32:57) sys.remote_exec()(00:36:09) Less obvious use cases(00:46:56) PART 2: BETS(00:55:44) PART 3: PR OF THE WEEK(00:55:50) Łukasz: syntax highlighting in PyREPL(01:10:14) Pablo's PR: allow the parser to activate future imports on the fly(01:20:11) PART 4: WHAT'S GOING ON IN CPYTHON(01:20:22) Free threading(01:23:30) Performance(01:34:41) PEP 765 implemented(01:36:08) concurrent.futures.Executor.map(buffersize=)(01:36:57) io.Reader and io.Writer(01:38:40) Pabluco's linecache fetching interactive source code(01:41:25) ast.unparse() roundtrip with semicolons(01:41:59) OUTRO
What this episode covers
In this episode, Pablo's avoiding the topic of garbage collection by talking about his latest PEP, which allows unprecedented interaction with a running Python process. We also resolve the bet about reference counting semantics, mention some notable changes in Python since the last episode, and discuss syntax highlighting in PyREPL and why it's bad, actually.## Timestamps(00:00:00) INTRO(00:02:16) PART 1: PABLO'S LATEST PEP(00:04:34) gdb is IMPOSSIBLE(00:12:49) Make the process run code for you(00:14:14) This already works on PyPy(00:15:13) How does it work?(00:25:38) Why a file?(00:31:15) What if you don't trust Pablo?(00:32:57) sys.remote_exec()(00:36:09) Less obvious use cases(00:46:56) PART 2: BETS(00:55:44) PART 3: PR OF THE WEEK(00:55:50) Łukasz: syntax highlighting in PyREPL(01:10:14) Pablo's PR: allow the parser to activate future imports on the fly(01:20:11) PART 4: WHAT'S GOING ON IN CPYTHON(01:20:22) Free threading(01:23:30) Performance(01:34:41) PEP 765 implemented(01:36:08) concurrent.futures.Executor.map(buffersize=)(01:36:57) io.Reader and io.Writer(01:38:40) Pabluco's linecache fetching interactive source code(01:41:25) ast.unparse() roundtrip with semicolons(01:41:59) OUTRO
NOW PLAYING
Episode 20: Remote Code Execution By Design
No transcript for this episode yet
Similar Episodes
Jun 5, 2026 ·12m
May 29, 2026 ·14m
May 27, 2026 ·14m
May 25, 2026 ·15m