r16176 added the latest 0.26b0 to the rpm specfile. Problem is that all versions now fail to build, the bug has been reported upstream: carray_from_* unused-function warnings with 0.26b0
r16177 detects the cython version and turns the error back into a warning. Hopefully the upstream bug will be fixed, or we will be told how to change our code to not trigger the warning. If not, then r16177 will need to be backported.
Fixed in r16179 by disabling the auto_pickle feature, which we do not use.
New problem: we cannot build older branches... first we have to backport r16179 and then we hit this one with the nvenc module:
Compiling xpra/codecs/nvenc7/encoder.pyx because it changed. [1/1] Cythonizing xpra/codecs/nvenc7/encoder.pyx Traceback (most recent call last): File "./setup.py", line 2484, in <module> setup_options["ext_modules"] = cythonize(ext_modules, gdb_debug=False) File "/usr/lib64/python2.7/site-packages/Cython/Build/Dependencies.py", line 1016, in cythonize cythonize_one(*args) File "/usr/lib64/python2.7/site-packages/Cython/Build/Dependencies.py", line 1121, in cythonize_one result = compile([pyx_file], options) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Main.py", line 690, in compile return compile_multiple(source, options) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Main.py", line 668, in compile_multiple result = run_pipeline(source, options, context=context) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Main.py", line 494, in run_pipeline err, enddata = Pipeline.run_pipeline(pipeline, source) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Pipeline.py", line 341, in run_pipeline data = phase(data) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Pipeline.py", line 53, in generate_pyx_code_stage module_node.process_implementation(options, result) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/ModuleNode.py", line 141, in process_implementation self.generate_c_code(env, options, result) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/ModuleNode.py", line 369, in generate_c_code self.body.generate_function_definitions(env, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 419, in generate_function_definitions stat.generate_function_definitions(env, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 419, in generate_function_definitions stat.generate_function_definitions(env, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 4668, in generate_function_definitions self.body.generate_function_definitions(self.scope, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 419, in generate_function_definitions stat.generate_function_definitions(env, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 3073, in generate_function_definitions FuncDefNode.generate_function_definitions(self, env, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 1923, in generate_function_definitions self.generate_function_body(env, code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 1686, in generate_function_body self.body.generate_execution_code(code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 425, in generate_execution_code stat.generate_execution_code(code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 5887, in generate_execution_code if_clause.generate_execution_code(code, end_label, is_last=i == last) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 5930, in generate_execution_code self.body.generate_execution_code(code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 425, in generate_execution_code stat.generate_execution_code(code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 7053, in generate_execution_code fresh_finally_clause().generate_execution_code(code) File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Nodes.py", line 7041, in fresh_finally_clause node_copy = copy.deepcopy(node) File "/usr/lib64/python2.7/copy.py", line 190, in deepcopy y = _reconstruct(x, rv, 1, memo) File "/usr/lib64/python2.7/copy.py", line 334, in _reconstruct state = deepcopy(state, memo) File "/usr/lib64/python2.7/copy.py", line 163, in deepcopy y = copier(x, memo) File "/usr/lib64/python2.7/copy.py", line 257, in _deepcopy_dict y[deepcopy(key, memo)] = deepcopy(value, memo) File "/usr/lib64/python2.7/copy.py", line 163, in deepcopy (...) File "/usr/lib64/python2.7/copy.py", line 166, in deepcopy issc = issubclass(cls, type) RuntimeError: maximum recursion depth exceeded while calling a Python object
This looks very similar to #947.
Reported upstream: "maximum recursion depth exceeded" in deepcopy() in fresh_finally_clause().
The "recursion depth" issue has been fixed:
https://github.com/cython/cython/commit/114fe16bdaa527bb5024c975a8accfc1e052ab68 and will be included in the 0.26 release.
And a new issue popped up with the latest beta build (bumped spec file to 0.26b2 in r16282): attribute ‘fallthrough’ not preceding a case label or default label
Re-fixed in https://github.com/cython/cython/commit/c824a3822c8b37dc49e23d9ed82036a5565075c1, patch applied to rpmbuild in r16285.
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1564