From: Bram Moolenaar Date: Mon, 20 May 2019 19:52:45 +0000 (+0200) Subject: patch 8.1.1361: Python setuptools don't work with Python 3 X-Git-Tag: v8.1.1361 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0b0ad35c339b8ad156df493bebeb77e02b32b120;p=vim patch 8.1.1361: Python setuptools don't work with Python 3 Problem: Python setuptools don't work with Python 3. Solution: Add dummy implementation for find_module. (Joel Frederico, closes #4402, closes #3984 --- diff --git a/src/if_py_both.h b/src/if_py_both.h index cc0450c13..e36f4fdee 100644 --- a/src/if_py_both.h +++ b/src/if_py_both.h @@ -1222,6 +1222,14 @@ FinderFindSpec(PyObject *self, PyObject *args) return spec; } + + static PyObject * +FinderFindModule(PyObject* self UNUSED, PyObject* args UNUSED) +{ + // Apparently returning None works. + Py_INCREF(Py_None); + return Py_None; +} #else static PyObject * call_load_module(char *name, int len, PyObject *find_module_result) @@ -1400,9 +1408,8 @@ static struct PyMethodDef VimMethods[] = { {"foreach_rtp", VimForeachRTP, METH_O, "Call given callable for each path in &rtp"}, #if PY_VERSION_HEX >= 0x030700f0 {"find_spec", FinderFindSpec, METH_VARARGS, "Internal use only, returns spec object for any input it receives"}, -#else - {"find_module", FinderFindModule, METH_VARARGS, "Internal use only, returns loader object for any input it receives"}, #endif + {"find_module", FinderFindModule, METH_VARARGS, "Internal use only, returns loader object for any input it receives"}, {"path_hook", VimPathHook, METH_VARARGS, "Hook function to install in sys.path_hooks"}, {"_get_paths", (PyCFunction)Vim_GetPaths, METH_NOARGS, "Get &rtp-based additions to sys.path"}, { NULL, NULL, 0, NULL} diff --git a/src/version.c b/src/version.c index 01a0b0d62..de5ffc6e6 100644 --- a/src/version.c +++ b/src/version.c @@ -767,6 +767,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1361, /**/ 1360, /**/