Skip to content

Subinterpreters can load modules without subinterpreter support #104621

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_xxsubinterpretersimportcreate, run_string>>>s="import readline; print(readline)">>>interp=create()
>>>run_string(interp, s)
Traceback (mostrecentcalllast):
File"<stdin>", line1, in<module>_xxsubinterpreters.RunFailedError:<class'ImportError'>: modulereadlinedoesnotsupportloadinginsubinterpreters>>>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