@@ -53,10 +53,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
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")
new file mode 100644
@@ -0,0 +1,24 @@
+From 0a948c7d65f91690674db4c855dadce501a3181d Mon Sep 17 00:00:00 2001
+From: Stefan Behnel <stefan_ml@behnel.de>
+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 <ross.burton@arm.com>
+---
+ 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:
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
@@ -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 = ""
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 <ross.burton@arm.com> --- ...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%)