{"record":{"id":"a851aeed333ae598","repo":"PyO3/pyo3","slug":"unsupported-python-interpreter","errorCode":null,"errorMessage":"unsupported Python interpreter","messagePattern":"unsupported Python interpreter","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pyo3-build-config/src/impl_.rs","lineNumber":1494,"sourceCode":"    PyPy,\n    GraalPy,\n    RustPython,\n}\n\nimpl PythonImplementation {\n    fn is_pypy(self) -> bool {\n        self == PythonImplementation::PyPy\n    }\n\n    fn from_soabi(soabi: &str) -> Result<Self> {\n        if soabi.starts_with(\"pypy\") {\n            Ok(PythonImplementation::PyPy)\n        } else if soabi.starts_with(\"cpython\") {\n            Ok(PythonImplementation::CPython)\n        } else if soabi.starts_with(\"graalpy\") {\n            Ok(PythonImplementation::GraalPy)\n        } else {\n            bail!(\"unsupported Python interpreter\");\n        }\n    }\n}\n\nimpl Display for PythonImplementation {\n    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {\n        match self {\n            PythonImplementation::CPython => write!(f, \"CPython\"),\n            PythonImplementation::PyPy => write!(f, \"PyPy\"),\n            PythonImplementation::GraalPy => write!(f, \"GraalVM\"),\n            PythonImplementation::RustPython => write!(f, \"RustPython\"),\n        }\n    }\n}\n\nimpl FromStr for PythonImplementation {\n    type Err = Error;\n    fn from_str(s: &str) -> Result<Self> {","sourceCodeStart":1476,"sourceCodeEnd":1512,"githubUrl":"https://github.com/PyO3/pyo3/blob/ac9b6899d348be4d54614d060dea53a645a12e36/pyo3-build-config/src/impl_.rs#L1476-L1512","documentation":"Sentinel error from PythonImplementation::from_soabi: the SOABI string read from sysconfigdata did not start with any recognized prefix (cpython/pypy/graalpy), so the interpreter implementation could not be identified. The faulty input is the SOABI value itself — empty, mangled, or from an unsupported runtime.","triggerScenarios":"Thrown at pyo3-build-config/src/impl_.rs:1494 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the SOABI entry in the _sysconfigdata file for corruption or truncation","Use a CPython, PyPy, or GraalPy target whose SOABI starts with a known prefix","Set PYO3_CROSS_PYTHON_IMPLEMENTATION explicitly so the build does not have to infer it from SOABI"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"ac9b6899d348be4d54614d060dea53a645a12e36","analyzedAt":"2026-09-05T09:20:35.319Z","contentChangedAt":"2026-09-05T09:20:35.319Z","schemaVersion":2},"datasetVersion":"2026-09-12T12:17:11.808Z"}