{"record":{"id":"2f52900ad6b7444d","repo":"PyO3/pyo3","slug":"rustpython-only-supports-targeting-abi3t-it-does","errorCode":null,"errorMessage":"RustPython only supports targeting abi3t, it does not allow targeting other Python ABIs. Currently targeting '{kind}'","messagePattern":"RustPython only supports targeting abi3t, it does not allow targeting other Python ABIs\\. Currently targeting '(.+?)'","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pyo3-build-config/src/impl_.rs","lineNumber":968,"sourceCode":"            ..self\n        }\n    }\n\n    pub fn free_threaded(self) -> PythonAbiBuilder {\n        PythonAbiBuilder {\n            kind: Some(PythonAbiKind::VersionSpecific(GilUsed::FreeThreaded)),\n            ..self\n        }\n    }\n\n    pub fn finalize(self) -> Result<PythonAbi> {\n        // default to GIL-enabled version-specific ABI\n        let kind = self.kind.unwrap_or(match self.implementation {\n            PythonImplementation::RustPython => PythonAbiKind::Stable(StableAbi::Abi3t),\n            _ => PythonAbiKind::VersionSpecific(GilUsed::GilEnabled),\n        });\n        if matches!(self.implementation, PythonImplementation::RustPython) {\n            ensure!(matches!(kind, PythonAbiKind::Stable(StableAbi::Abi3t)),\n                    \"RustPython only supports targeting abi3t, it does not allow targeting other Python ABIs. Currently targeting '{kind}'\")\n        }\n        if matches!(kind, PythonAbiKind::VersionSpecific(GilUsed::FreeThreaded))\n            && self.version\n                < (PythonVersion {\n                    major: 3,\n                    minor: 13,\n                })\n        {\n            bail!(\n                \"Cannot target free-threaded builds for Python versions before 3.13, tried to build for {}\", self.version\n            )\n        }\n        Ok(PythonAbi {\n            implementation: self.implementation,\n            kind,\n            version: self.version,\n        })","sourceCodeStart":950,"sourceCodeEnd":986,"githubUrl":"https://github.com/PyO3/pyo3/blob/ac9b6899d348be4d54614d060dea53a645a12e36/pyo3-build-config/src/impl_.rs#L950-L986","documentation":"Validation error in PythonAbiBuilder::finalize: the implementation is RustPython, which only supports the abi3t (tiered stable) ABI, but the configured ABI kind resolves to something else (e.g. abi3 or a version-specific ABI). RustPython cannot be targeted with those ABI selections, so finalization is rejected.","triggerScenarios":"Thrown at pyo3-build-config/src/impl_.rs:968 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use the abi3-t feature (StableAbi::Abi3t) when targeting RustPython","Remove PYO3_CROSS_PYTHON_ABI settings or feature selections that force a non-abi3t kind","Switch the target implementation to CPython if a different ABI is required"],"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"}