Closed Thomasb81 closed 1 year ago
Hello
Seems to me that package installation does not work anymore with recent python version
$ python setup.py -h Compiling planarity/planarity.pyx because it changed. [1/1] Cythonizing planarity/planarity.pyx /home/tom/prog/schemadraw_test/venv/lib/python3.11/site-packages/Cython/Compiler/Main.py:384: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /home/tom/prog/schemadraw_test/planarity/planarity/planarity.pyx tree = Parsing.p_module(s, pxd, full_module_name) Error compiling Cython file: ------------------------------------------------------------ ... #!python #cython: embedsignature=True """ Wrapper for Boyer's (C) planarity algorithms. """ cimport cplanarity ^ ------------------------------------------------------------ planarity/planarity.pyx:6:8: 'cplanarity.pxd' not found Error compiling Cython file: ------------------------------------------------------------ ... """ cimport cplanarity import warnings cdef class PGraph: cdef cplanarity.graphP theGraph ^ ------------------------------------------------------------ planarity/planarity.pyx:10:9: 'graphP' is not a type identifier Error compiling Cython file: ------------------------------------------------------------ ... raise RuntimeError("planarity: Unknown error.") def nodes(self,data=False): DRAWPLANAR_ID=1 cdef cplanarity.DrawPlanarContext *context ^ ------------------------------------------------------------ planarity/planarity.pyx:102:13: 'DrawPlanarContext' is not a type identifier Error compiling Cython file: ------------------------------------------------------------ ... return nodes def edges(self,data=False): DRAWPLANAR_ID=1 cdef cplanarity.DrawPlanarContext *context ^ ------------------------------------------------------------ planarity/planarity.pyx:126:13: 'DrawPlanarContext' is not a type identifier Error compiling Cython file: ------------------------------------------------------------ ... raise RuntimeError("Unknown input type") edges=graph n=len(nodes) self.nodemap=dict(zip(nodes,range(1,n+1))) self.reverse_nodemap=dict(zip(range(1,n+1),nodes)) self.theGraph = cplanarity.gp_New() ^ ------------------------------------------------------------ planarity/planarity.pyx:40:34: cimported module has no attribute 'gp_New' Error compiling Cython file: ------------------------------------------------------------ ... n=len(nodes) self.nodemap=dict(zip(nodes,range(1,n+1))) self.reverse_nodemap=dict(zip(range(1,n+1),nodes)) self.theGraph = cplanarity.gp_New() cdef int status status = cplanarity.gp_InitGraph(self.theGraph, n) ^ ------------------------------------------------------------ planarity/planarity.pyx:42:27: cimported module has no attribute 'gp_InitGraph' Error compiling Cython file: ------------------------------------------------------------ ... self.nodemap=dict(zip(nodes,range(1,n+1))) self.reverse_nodemap=dict(zip(range(1,n+1),nodes)) self.theGraph = cplanarity.gp_New() cdef int status status = cplanarity.gp_InitGraph(self.theGraph, n) if status != cplanarity.OK: ^ ------------------------------------------------------------ planarity/planarity.pyx:43:31: cimported module has no attribute 'OK' Error compiling Cython file: ------------------------------------------------------------ ... raise RuntimeError("planarity: failed to initialize graph") # add the edges and check return seen = set() for u,v in edges: if (u,v) not in seen and (v,u) not in seen: status = cplanarity.gp_AddEdge(self.theGraph, ^ ------------------------------------------------------------ planarity/planarity.pyx:49:35: cimported module has no attribute 'gp_AddEdge' Error compiling Cython file: ------------------------------------------------------------ ... for u,v in edges: if (u,v) not in seen and (v,u) not in seen: status = cplanarity.gp_AddEdge(self.theGraph, self.nodemap[u], 0, self.nodemap[v], 0) if status == cplanarity.NOTOK: ^ ------------------------------------------------------------ planarity/planarity.pyx:52:39: cimported module has no attribute 'NOTOK' Error compiling Cython file: ------------------------------------------------------------ ... if (u,v) not in seen and (v,u) not in seen: status = cplanarity.gp_AddEdge(self.theGraph, self.nodemap[u], 0, self.nodemap[v], 0) if status == cplanarity.NOTOK: cplanarity.gp_Free(&self.theGraph) ^ ------------------------------------------------------------ planarity/planarity.pyx:53:30: cimported module has no attribute 'gp_Free' Error compiling Cython file: ------------------------------------------------------------ ... cplanarity.gp_Free(&self.theGraph) raise RuntimeError("planarity: failed adding edge.") seen.add((u,v)) else: warnings.warn('ignoring parallel edge %s-%s'%(str(u),str(v))) self.embedding=cplanarity.NULL ^ ------------------------------------------------------------ planarity/planarity.pyx:58:33: cimported module has no attribute 'NULL' Error compiling Cython file: ------------------------------------------------------------ ... warnings.warn('ignoring parallel edge %s-%s'%(str(u),str(v))) self.embedding=cplanarity.NULL def __dealloc__(self): cplanarity.gp_Free(&self.theGraph) ^ ------------------------------------------------------------ planarity/planarity.pyx:62:18: cimported module has no attribute 'gp_Free' Error compiling Cython file: ------------------------------------------------------------ ... cplanarity.gp_Free(&self.theGraph) def embed_planar(self): if self.embedding == 0: self.embedding = cplanarity.gp_Embed(self.theGraph, ^ ------------------------------------------------------------ planarity/planarity.pyx:67:39: cimported module has no attribute 'gp_Embed' Error compiling Cython file: ------------------------------------------------------------ ... def embed_planar(self): if self.embedding == 0: self.embedding = cplanarity.gp_Embed(self.theGraph, cplanarity.EMBEDFLAGS_PLANAR) ^ ------------------------------------------------------------ planarity/planarity.pyx:68:55: cimported module has no attribute 'EMBEDFLAGS_PLANAR' Error compiling Cython file: ------------------------------------------------------------ ... def embed_planar(self): if self.embedding == 0: self.embedding = cplanarity.gp_Embed(self.theGraph, cplanarity.EMBEDFLAGS_PLANAR) cplanarity.gp_SortVertices(self.theGraph) ^ ------------------------------------------------------------ planarity/planarity.pyx:69:22: cimported module has no attribute 'gp_SortVertices' Error compiling Cython file: ------------------------------------------------------------ ... def embed_drawplanar(self): status = cplanarity.gp_AttachDrawPlanar(self.theGraph) if status == cplanarity.NOTOK: raise RuntimeError("planarity: failed attaching drawplanar.") status = cplanarity.gp_Embed(self.theGraph, ^ ------------------------------------------------------------ planarity/planarity.pyx:76:27: cimported module has no attribute 'gp_Embed' Error compiling Cython file: ------------------------------------------------------------ ... def embed_drawplanar(self): status = cplanarity.gp_AttachDrawPlanar(self.theGraph) if status == cplanarity.NOTOK: raise RuntimeError("planarity: failed attaching drawplanar.") status = cplanarity.gp_Embed(self.theGraph, ^ ------------------------------------------------------------ planarity/planarity.pyx:76:27: Compiler crash in AnalyseExpressionsTransform ModuleNode.body = StatListNode(planarity.pyx:6:0) StatListNode.stats[2] = StatListNode(planarity.pyx:9:5) StatListNode.stats[0] = CClassDefNode(planarity.pyx:9:5, as_name = 'PGraph', class_name = 'PGraph', module_name = '', punycode_class_name = 'PGraph', visibility = 'private') CClassDefNode.body = StatListNode(planarity.pyx:10:4) StatListNode.stats[4] = DefNode(planarity.pyx:72:4, is_cyfunction = True, modifiers = [...]/0, name = 'embed_drawplanar', np_args_idx = [...]/0, num_required_args = 1, outer_attrs = [...]/2, py_wrapper_required = True, reqd_kw_flags_cname = '0', used = True) File 'ExprNodes.py', line 5869, in infer_type: SimpleCallNode(planarity.pyx:76:36, result_is_used = True, use_managed_ref = True) File 'ExprNodes.py', line 7322, in infer_type: AttributeNode(planarity.pyx:76:27, attribute = 'gp_Embed', is_attribute = 1, needs_none_check = True, result_is_used = True, use_managed_ref = True) Compiler crash traceback from this point on: File "/home/tom/prog/schemadraw_test/venv/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 7322, in infer_type if node.entry.type and node.entry.type.is_cfunction: ^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'type' Traceback (most recent call last): File "/home/tom/prog/schemadraw_test/planarity/setup.py", line 52, in <module> extensions = cythonize(extensions) ^^^^^^^^^^^^^^^^^^^^^ File "/home/tom/prog/schemadraw_test/venv/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1134, in cythonize cythonize_one(*args) File "/home/tom/prog/schemadraw_test/venv/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1301, in cythonize_one raise CompileError(None, pyx_file) Cython.Compiler.Errors.CompileError: planarity/planarity.pyx
Hello
Seems to me that package installation does not work anymore with recent python version