From c3cda2336b37f2c3bcd2646012d5f2ceef6be20f Mon Sep 17 00:00:00 2001 From: Upgrade Helper Date: Wed, 1 Jul 2026 05:55:14 +0000 Subject: [PATCH] python3-cython: upgrade 3.2.5 -> 3.2.8 --- ...ule-Use-SharedUtilitySourceDescripto.patch | 94 ------------------- ...ictable-build-path-prefix-with-hardc.patch | 4 +- ...ython_3.2.5.bb => python3-cython_3.2.8.bb} | 7 +- 3 files changed, 4 insertions(+), 101 deletions(-) delete mode 100644 meta/recipes-devtools/python/python3-cython/0001-3.2.x-Shared-module-Use-SharedUtilitySourceDescripto.patch rename meta/recipes-devtools/python/{python3-cython_3.2.5.bb => python3-cython_3.2.8.bb} (83%) diff --git a/meta/recipes-devtools/python/python3-cython/0001-3.2.x-Shared-module-Use-SharedUtilitySourceDescripto.patch b/meta/recipes-devtools/python/python3-cython/0001-3.2.x-Shared-module-Use-SharedUtilitySourceDescripto.patch deleted file mode 100644 index b57acb6969..0000000000 --- a/meta/recipes-devtools/python/python3-cython/0001-3.2.x-Shared-module-Use-SharedUtilitySourceDescripto.patch +++ /dev/null @@ -1,94 +0,0 @@ -From f3cfdebd75374a29a930687c1f126282c51b7a92 Mon Sep 17 00:00:00 2001 -From: mv-python -Date: Fri, 12 Jun 2026 10:32:42 +0200 -Subject: [PATCH] [3.2.x] Shared module: Use `SharedUtilitySourceDescriptor` - instead of temporary directory (#7723) (GH-7739) - -This PR uses `SharedUtilitySourceDescriptor` instead of an empty pyx -file in the temp dir. This simplifies the logic and also assures that -`__pyx_f` is unchanged across builds. - -Backport of https://github.com/cython/cython/pull/7723 -Alternative to https://github.com/cython/cython/pull/7634 - -Upstream-Status: Backport [https://github.com/cython/cython/commit/f3cfdebd75374a29a930687c1f126282c51b7a92] - -Signed-off-by: Zhixiong Chi ---- - Cython/Build/SharedModule.py | 25 ++++++++----------------- - Cython/Compiler/Scanning.py | 9 +++++++++ - 2 files changed, 17 insertions(+), 17 deletions(-) - -diff --git a/Cython/Build/SharedModule.py b/Cython/Build/SharedModule.py -index fed6263cd..45da4b462 100644 ---- a/Cython/Build/SharedModule.py -+++ b/Cython/Build/SharedModule.py -@@ -1,13 +1,10 @@ - import os --import re --import shutil --import tempfile - - from Cython.Compiler import ( - MemoryView, Code, Options, Pipeline, Errors, Main, Symtab - ) - from Cython.Compiler.StringEncoding import EncodedString --from Cython.Compiler.Scanning import FileSourceDescriptor -+from Cython.Compiler.Scanning import SharedUtilitySourceDescriptor - - - def create_shared_library_pipeline(context, scope, options, result): -@@ -72,23 +69,17 @@ def generate_shared_module(options): - Errors.open_listing_file(None) - - dest_c_file = options.shared_c_file_path -+ pyx_file = os.path.splitext(dest_c_file)[0] + '.pyx' - module_name = os.path.splitext(os.path.basename(dest_c_file))[0] - - context = Main.Context.from_options(options) - scope = Symtab.ModuleScope('MemoryView', parent_module = None, context = context, is_package=False) - -- with tempfile.TemporaryDirectory() as tmpdirname: -- pyx_file = os.path.join(tmpdirname, f'{module_name}.pyx') -- c_file = os.path.join(tmpdirname, f'{module_name}.c') -- with open(pyx_file, 'w'): -- pass -- source_desc = FileSourceDescriptor(pyx_file) -- comp_src = Main.CompilationSource(source_desc, EncodedString(module_name), os.getcwd()) -- result = Main.create_default_resultobj(comp_src, options) -- -- pipeline = create_shared_library_pipeline(context, scope, options, result) -- err, enddata = Pipeline.run_pipeline(pipeline, comp_src) -- if err is None: -- shutil.copy(c_file, dest_c_file) -+ source_desc = SharedUtilitySourceDescriptor(pyx_file) -+ comp_src = Main.CompilationSource(source_desc, EncodedString(module_name), os.getcwd()) -+ result = Main.create_default_resultobj(comp_src, options) -+ -+ pipeline = create_shared_library_pipeline(context, scope, options, result) -+ err, enddata = Pipeline.run_pipeline(pipeline, comp_src) - - return err, enddata -diff --git a/Cython/Compiler/Scanning.py b/Cython/Compiler/Scanning.py -index 2a8cb5a93..4cec7d1ed 100644 ---- a/Cython/Compiler/Scanning.py -+++ b/Cython/Compiler/Scanning.py -@@ -281,6 +281,15 @@ class StringSourceDescriptor(SourceDescriptor): - return "" % self.name - - -+class SharedUtilitySourceDescriptor(FileSourceDescriptor): -+ """ -+ A specialized source descriptor for shared utility code only. Not part of public API. -+ """ -+ -+ def get_file_object(self, encoding=None, error_handling=None): -+ from io import StringIO -+ return StringIO('') -+ - #------------------------------------------------------------------ - - class PyrexScanner(Scanner): --- -2.43.0 - 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 fad7f28a60..573a53ee56 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 @@ -1,4 +1,4 @@ -From 949e3c185719c37b3a3e4c11664db16533f51dc8 Mon Sep 17 00:00:00 2001 +From a3b9d4303b6aaf5ef2ce9ffd1ba42a93f9cc68e0 Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Wed, 17 Sep 2025 01:42:08 -0700 Subject: [PATCH] Replace not predictable build path prefix with hardcode @@ -53,7 +53,7 @@ Signed-off-by: Hongxu Jia 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py -index 30e67aa..ade6a7f 100644 +index 34f1b32..b09350b 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py @@ -877,7 +877,9 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): diff --git a/meta/recipes-devtools/python/python3-cython_3.2.5.bb b/meta/recipes-devtools/python/python3-cython_3.2.8.bb similarity index 83% rename from meta/recipes-devtools/python/python3-cython_3.2.5.bb rename to meta/recipes-devtools/python/python3-cython_3.2.8.bb index 8bd68bd4df..e899fc411f 100644 --- a/meta/recipes-devtools/python/python3-cython_3.2.5.bb +++ b/meta/recipes-devtools/python/python3-cython_3.2.8.bb @@ -7,14 +7,11 @@ SECTION = "devel/python" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=61c3ee8961575861fa86c7e62bc9f69c" -SRC_URI[sha256sum] = "3dd42e4cf36ad15f265bdfec2337cc00c688c8eb6d374ffd13bb19437c27bba1" +SRC_URI[sha256sum] = "f4f23a56b25221a06f91817fe8f3114ab8b48a4fac73187dbb64bc2c4a87961f" inherit pypi setuptools3 cython -SRC_URI += " \ - file://0001-Replace-not-predictable-build-path-prefix-with-hardc.patch \ - file://0001-3.2.x-Shared-module-Use-SharedUtilitySourceDescripto.patch \ -" +SRC_URI += "file://0001-Replace-not-predictable-build-path-prefix-with-hardc.patch" # No need to depend on self DEPENDS:remove = "python3-cython-native" -- 2.47.1