All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] python3-cython: upgrade 3.2.9 -> 3.3.0
@ 2026-10-08  9:41 Ross Burton
  2026-10-10  3:50 ` [OE-core] " Mathieu Dubois-Briand
  0 siblings, 1 reply; 3+ messages in thread
From: Ross Burton @ 2026-10-08  9:41 UTC (permalink / raw)
  To: openembedded-core

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%)

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 <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")
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 <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:
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



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-10-12  9:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-08  9:41 [PATCH v2] python3-cython: upgrade 3.2.9 -> 3.3.0 Ross Burton
2026-10-10  3:50 ` [OE-core] " Mathieu Dubois-Briand
2026-10-12  9:43   ` Ross Burton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.