Repository navigation
Closed
Milestone
Description
Hi, I'm a CPython core developer and we are currently working on the next alpha, namely Python 3.15. In Python 3.15, we are removing a bunch of deprecated functions (see python/cpython#133661 and https://github.com/python/cpython/pull/133661/files#diff-bd7a9c5b54eeb2b40e6db5e48e8d79d309d8738e776a40918773c6840189edf9).
We found the following references in this project, but as I never coded in .NET, I don't know how to change them:
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Native/CustomMarshaler.cs: /// Ex. Py_GetPythonHome
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/PythonEngine.cs: IntPtr p = Runtime.TryUsingDll(() => Runtime.Py_GetProgramName());
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/PythonEngine.cs: IntPtr p = Runtime.TryUsingDll(() => Runtime.Py_GetPythonHome());
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/PythonEngine.cs: IntPtr p = Runtime.TryUsingDll(() => Runtime.Py_GetPath());
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.Delegates.cs: Py_GetProgramName = (delegate* unmanaged[Cdecl]<IntPtr>)GetFunctionByName(nameof(Py_GetProgramName), GetUnmanagedDll(_PythonDll));
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.Delegates.cs: Py_GetPythonHome = (delegate* unmanaged[Cdecl]<IntPtr>)GetFunctionByName(nameof(Py_GetPythonHome), GetUnmanagedDll(_PythonDll));
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.Delegates.cs: Py_GetPath = (delegate* unmanaged[Cdecl]<IntPtr>)GetFunctionByName(nameof(Py_GetPath), GetUnmanagedDll(_PythonDll));
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.Delegates.cs: internal static delegate* unmanaged[Cdecl]<IntPtr> Py_GetProgramName { get; }
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.Delegates.cs: internal static delegate* unmanaged[Cdecl]<IntPtr> Py_GetPythonHome { get; }
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.Delegates.cs: internal static delegate* unmanaged[Cdecl]<IntPtr> Py_GetPath { get; }
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.cs: internal static IntPtr Py_GetProgramName() => Delegates.Py_GetProgramName();
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.cs: internal static IntPtr Py_GetPythonHome() => Delegates.Py_GetPythonHome();
pythonnet-3.0.5.tar.gz: pythonnet-3.0.5/src/runtime/Runtime.cs: internal static IntPtr Py_GetPath() => Delegates.Py_GetPath();
Metadata
Metadata
Assignees
Labels
No labels
Activity
filmor commentedon May 9, 2025
The respective replacements are
PyConfig_Getwith the right parameters from Python 3.14 onwards, right? I can have a look into implementing these along with 3.14 support.Thank you very much for the heads up!
picnixz commentedon May 9, 2025
Yes indeed! don't forget to hold the GIL though. If there are issues, please open a ticket on python/cpython.