{"record":{"id":"5d56e23c49ab3ac8","repo":"PyO3/pyo3","slug":"unknown-interpreter","errorCode":null,"errorMessage":"unknown interpreter: {}","messagePattern":"unknown interpreter: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pyo3-build-config/src/impl_.rs","lineNumber":1518,"sourceCode":"    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> {\n        match s {\n            \"CPython\" => Ok(PythonImplementation::CPython),\n            \"PyPy\" => Ok(PythonImplementation::PyPy),\n            \"GraalVM\" => Ok(PythonImplementation::GraalPy),\n            \"RustPython\" => Ok(PythonImplementation::RustPython),\n            _ => bail!(\"unknown interpreter: {}\", s),\n        }\n    }\n}\n\n/// Checks if we should look for a Python interpreter installation\n/// to get the target interpreter configuration.\n///\n/// Returns `false` if `PYO3_NO_PYTHON` environment variable is set.\nfn have_python_interpreter() -> bool {\n    env_var(\"PYO3_NO_PYTHON\").is_none()\n}\n\n/// The target stable ABI version.\n///\n/// For abi3(t)-py* builds a specific version is chosen, otherwise the builds is\n/// for the stable ABI exposed by the host python interpreter version.\n#[derive(Debug, Copy, Clone)]\npub enum StableAbiVersion {","sourceCodeStart":1500,"sourceCodeEnd":1536,"githubUrl":"https://github.com/PyO3/pyo3/blob/ac9b6899d348be4d54614d060dea53a645a12e36/pyo3-build-config/src/impl_.rs#L1500-L1536","documentation":"Parse error from the FromStr impl of PythonImplementation: the string being parsed (typically PYO3_CROSS_PYTHON_IMPLEMENTATION or a stored config value) did not exactly match one of the accepted names CPython/PyPy/GraalPy/RustPython — e.g. a typo, different casing, or free-form text like 'python3'.","triggerScenarios":"Thrown at pyo3-build-config/src/impl_.rs:1518 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use exactly one of: CPython, PyPy, GraalPy, RustPython","Check for whitespace or case differences in PYO3_CROSS_PYTHON_IMPLEMENTATION","Prefer the canonical spelling emitted by pyo3-build-config itself"],"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"}