view READMEdir/README_extra.txt @ 33452:ed8db57d1034 v9.0.1980

patch 9.0.1980: win32: issues with stable python ABI Commit: https://github.com/vim/vim/commit/119fdd9293f63614ed2ca60a78993466435db639 Author: Ken Takata <kentkt@csc.jp> Date: Wed Oct 4 20:05:05 2023 +0200 patch 9.0.1980: win32: issues with stable python ABI Problem: win32: issues with stable python ABI Solution: if_python3,win32: Fix Python3 stable ABI There were some issues in current stable ABI implementation on Windows: * Python DLL name should be `python3.dll` instead of `python311.dll` and so on. (See: https://docs.python.org/3/c-api/stable.html) * Some non-stable API functions were used: - `_PyObject_NextNotImplemented` - `PyStdPrinter_Type` * `reset_stdin()` and `hook_py_exit()` didn't work with `python3.dll`. `python3.dll` is a special type of DLL called forwarder DLL. It just forwards the functions to other DLL (e.g. `python311.dll`). There were two issues regarding these functions: - `python3.dll` doesn't have import tables. This caused a crash in `get_imported_func_info()`. Add a check whether the specified DLL has an import table. - `reset_stdin()` and `hook_py_exit()` should be applied to the forwarded DLL (e.g. `python311.dll`), not to `python3.dll`. Check the export directory of `python3.dll` to find the forwarded DLL and apply the functions to it. closes: #13260 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ken Takata <kentkt@csc.jp>
author Christian Brabandt <cb@256bit.org>
date Wed, 04 Oct 2023 20:15:03 +0200
parents 645722244c3f
children 4635e43f2c6f
line wrap: on
line source

README_extra.txt for version 9.0 of Vim: Vi IMproved.

These extra files of Vim are for special purposes.  This README explains what
the files are for.  For general information about Vim, see the "README.txt"
file.


farsi/*			Files for the Farsi (persian) language.  If you don't
			know what Farsi is, this is not for you.

src/if_sniff.*		Interface to SNiFF.  If you don't know what SNiFF is,
			this is not for you.

src/os_amiga.*		Files for the Amiga port.

src/os_msdos.*
src/os_dos.*		Files for the MS-DOS port.

src/os_mac.*		Files for the Mac port.

src/os_vms*		Files for the VMS port.

src/os_w32*
src/os_win32.*		Files for the Win32 port.

src/gui_w32.*		Files for the Win32 GUI.
src/gui_w48.*		Files for the Win32 and Win16 GUI.
src/Make_mvc.mak	MS Visual C++ makefile for the Win32 GUI.

src/if_ole.*		OLE automation interface, for MS Windows 95 and NT.

src/GvimExt/*		DLL for the "Edit with Vim" context menu entry

nsis/*			NSIS script to build the self-installing MS-Windows exe

runtime/doc/*.man	Preprocessed manual pages.

runtime/macros/file_select.vim	Vim script to browse directories (Unix only).