[ https://issues.apache.org/jira/browse/PYLUCENE-59?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andi Vajda resolved PYLUCENE-59. -------------------------------- Resolution: Workaround > Python warns about missing __module__, but means that type names have no '.' > in them. > ------------------------------------------------------------------------------------- > > Key: PYLUCENE-59 > URL: https://issues.apache.org/jira/browse/PYLUCENE-59 > Project: PyLucene > Issue Type: Improvement > Reporter: Erik Groeneveld > Priority: Trivial > > When starting JCC, Python emits warnings such as > {code:java} > DeprecationWarning: builtin type Object has no __module__ attribute > {code} > It does this because, early in de process of creating types, it does not find > a '.' in de name of the type. The warning is somewhat misleading. The code > from Python is (fragment from typeobject.c): > {code:java} > /* Set type.__module__ */ > s = strrchr(spec->name, '.'); > if (s != NULL) { > int err; > modname = PyUnicode_FromStringAndSize( > spec->name, (Py_ssize_t)(s - spec->name)); > if (modname == NULL) { > goto fail; > } > err = _PyDict_SetItemId(type->tp_dict, &PyId___module__, modname); > Py_DECREF(modname); > if (err != 0) > goto fail; > } else { > if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, > "builtin type %.200s has no __module__ attribute", > spec->name)) > goto fail; > } > {code} > The name of the types in JCC do not include a package name and hence no dot. > Python 3.10 still does it like this. > The __module__ is set correctly later on in the JCC code! > Maybe you could add a package name (and a dot) to the typename to avoid these > warning? > I am just reporting this for your convenience and maybe it helps others > seeing these warnings. -- This message was sent by Atlassian Jira (v8.3.4#803005)