From a5f804e81763dd42b974ee163dd7146793034858 Mon Sep 17 00:00:00 2001 From: Gregory Szorc Date: Sat, 23 Oct 2021 14:04:45 -0700 Subject: [PATCH] ffi: restore _PyImport_FindExtensionObject on Python 3.10 This symbol was initially removed from 3.10. But it was restored late in the 3.10 development cycle in time for 3.10.0. See https://bugs.python.org/issue45307. It is slated for removal in 3.11. --- CHANGELOG.md | 1 + src/ffi/cpython/import.rs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fbed2d9774b..e32c23adf41 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -46,6 +46,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Deprecate `PySys_AddWarnOption`, `PySys_AddWarnOptionUnicode` and `PySys_HasWarnOptions`. [#1887](https://github.com/PyO3/pyo3/pull/1887) - Remove function PyTuple_ClearFreeList from python 3.9 above. [#1887](https://github.com/PyO3/pyo3/pull/1887) - Deprecate `#[call]` attribute in favor of using `fn __call__`. [#1929](https://github.com/PyO3/pyo3/pull/1929) +- Fix missing FFI definition `_PyImport_FindExtensionObject` on Python 3.10. [#1942](https://github.com/PyO3/pyo3/pull/1942) ### Fixed diff --git a/src/ffi/cpython/import.rs b/src/ffi/cpython/import.rs index 05279f19d34..00fe424b78c 100644 --- a/src/ffi/cpython/import.rs +++ b/src/ffi/cpython/import.rs @@ -16,7 +16,7 @@ extern "C" { pub fn _PyImport_FindBuiltin(name: *const c_char) -> *mut PyObject; #[cfg(all(Py_3_7, not(Py_3_9)))] pub fn _PyImport_FindBuiltin(name: *const c_char, modules: *mut PyObject) -> *mut PyObject; - #[cfg(not(Py_3_10))] + #[cfg(not(Py_3_11))] pub fn _PyImport_FindExtensionObject(a: *mut PyObject, b: *mut PyObject) -> *mut PyObject; #[cfg(not(Py_3_7))] pub fn _PyImport_FixupBuiltin(module: *mut PyObject, name: *const c_char) -> c_int;