Skip to content

Subinterpreters can load modules without subinterpreter support #104621

@brandtbucher

Description

@brandtbucher

The first time a subinterpreter attempts to import a module without proper subinterpreter support, an ImportError is raised (which is correct). However, subsequent imports of the same module succeed!

Using readline as an example, since it's currently single-phase init:

>>> from _xxsubinterpreters import create, run_string >>> s = "import readline; print(readline)" >>> interp = create() >>> run_string(interp, s) Traceback (most recent call last): File "<stdin>", line 1, in <module> _xxsubinterpreters.RunFailedError: <class 'ImportError'>: module readline does not support loading in subinterpreters >>> run_string(interp, s) <module 'readline'>

Linked PRs

Metadata

Metadata

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions