Skip to content

Extension isolation and subinterpreters support #226

@VestniK

Description

@VestniK

We are integrating Python as an embedded interpreter in a C++ application to provide a plugin interface for end users. Our codebase is transitioning to a multi-threaded architecture, where each independent unit of work utilizes its own subinterpreter with a separate GIL. This functionality became available in Python 3.12.

We have modified the bundled version of python-rapidjson to ensure compatibility with our setup. The modified version can be found here: https://github.com/yandex/yatool/blob/main/devtools/ymake/contrib/python-rapidjson/rapidjson.cpp

I want to refactor and upstream the subinterpreters compatibility changes in several PRs, ensuring clean and maintainable code.

Are you interested in this feature?

Note: I'm aware that some projects consider subinterpreters to be not fully mature for production use. Therefore, I would like to assess the community’s interest before proceeding with the development.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions