Lots of upstream changes, see the full release notes at https://github.com/cython/cython/blob/master/CHANGES.rst
Backport a commit to fix non-reproducible code generation. The type inference is still non-deterministic if there's ambiguity[1], but this fix ensures there's no ambiguity in cython itself. Disable parallel builds because there's a race which causes occasional build failures[2]. This has a non-trivial implication to build time (89.1s to 243.1s on my machine), but it builds. [1] https://github.com/cython/cython/issues/8002 [2] https://github.com/cython/cython/issues/7997 Signed-off-by: Ross Burton <[email protected]> --- ...ictable-build-path-prefix-with-hardc.patch | 4 ++-- .../python3-cython/ambiguous-type.patch | 24 +++++++++++++++++++ ...ython_3.2.9.bb => python3-cython_3.3.0.bb} | 7 +++++- 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 meta/recipes-devtools/python/python3-cython/ambiguous-type.patch rename meta/recipes-devtools/python/{python3-cython_3.2.9.bb => python3-cython_3.3.0.bb} (83%) diff --git a/meta/recipes-devtools/python/python3-cython/0001-Replace-not-predictable-build-path-prefix-with-hardc.patch b/meta/recipes-devtools/python/python3-cython/0001-Replace-not-predictable-build-path-prefix-with-hardc.patch index 573a53ee561..01d019e554d 100644 --- a/meta/recipes-devtools/python/python3-cython/0001-Replace-not-predictable-build-path-prefix-with-hardc.patch +++ b/meta/recipes-devtools/python/python3-cython/0001-Replace-not-predictable-build-path-prefix-with-hardc.patch @@ -53,10 +53,10 @@ Signed-off-by: Hongxu Jia <[email protected]> 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py -index 34f1b32..b09350b 100644 +index 6e0a3e5..ce35b25 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py -@@ -877,7 +877,9 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): +@@ -888,7 +888,9 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): code.put_generated_by() if metadata: code.putln("/* BEGIN: Cython Metadata") diff --git a/meta/recipes-devtools/python/python3-cython/ambiguous-type.patch b/meta/recipes-devtools/python/python3-cython/ambiguous-type.patch new file mode 100644 index 00000000000..003fb8fc366 --- /dev/null +++ b/meta/recipes-devtools/python/python3-cython/ambiguous-type.patch @@ -0,0 +1,24 @@ +From 0a948c7d65f91690674db4c855dadce501a3181d Mon Sep 17 00:00:00 2001 +From: Stefan Behnel <[email protected]> +Date: Tue, 6 Oct 2026 10:51:39 +0200 +Subject: [PATCH] Avoid ambiguity due to type inference. + +Upstream-Status: Backport [https://github.com/cython/cython/commit/0a948c7d65f91690674db4c855dadce501a3181d] +Signed-off-by: Ross Burton <[email protected]> +--- + Cython/Compiler/FlowControl.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Cython/Compiler/FlowControl.py b/Cython/Compiler/FlowControl.py +index 4c751b329d1..c5d3af1ec59 100644 +--- a/Cython/Compiler/FlowControl.py ++++ b/Cython/Compiler/FlowControl.py +@@ -575,6 +575,8 @@ def check_definitions(flow: ControlFlow, compiler_directives: dict): + + block: ControlBlock + assmt: NameAssignment ++ i_state: cython.py_int ++ + for block in flow.blocks: + i_state = block.i_input + for stat in block.stats: diff --git a/meta/recipes-devtools/python/python3-cython_3.2.9.bb b/meta/recipes-devtools/python/python3-cython_3.3.0.bb similarity index 83% rename from meta/recipes-devtools/python/python3-cython_3.2.9.bb rename to meta/recipes-devtools/python/python3-cython_3.3.0.bb index 3457a914901..f5bf7fd81e7 100644 --- a/meta/recipes-devtools/python/python3-cython_3.2.9.bb +++ b/meta/recipes-devtools/python/python3-cython_3.3.0.bb @@ -7,11 +7,12 @@ SECTION = "devel/python" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=61c3ee8961575861fa86c7e62bc9f69c" -SRC_URI[sha256sum] = "d249c9022ab13286b17bd66f30609e800c5f95efeecb06168990c7a66cecde6c" +SRC_URI[sha256sum] = "eed0d93fbca7087f143b42c34b05a825849bdf17f101572c2105acfa49aa88b8" inherit pypi setuptools3 cython SRC_URI += "file://0001-Replace-not-predictable-build-path-prefix-with-hardc.patch" +SRC_URI += "file://ambiguous-type.patch" # No need to depend on self DEPENDS:remove = "python3-cython-native" @@ -44,3 +45,7 @@ RDEPENDS:${PN}:class-nativesdk += "\ " BBCLASSEXTEND = "native nativesdk" + +# Disable parallel builds for now as there's a build race in 3.3.0: +# https://github.com/cython/cython/issues/7997 +PARALLEL_MAKE = "" -- 2.43.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#247423): https://lists.openembedded.org/g/openembedded-core/message/247423 Mute This Topic: https://lists.openembedded.org/mt/121652235/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
