diff mbox series

[v2] python3-cython: upgrade 0.29.36 -> 3.0.5

Message ID 20231120215820.1475322-1-tgamblin@baylibre.com
State New
Headers show
Series [v2] python3-cython: upgrade 0.29.36 -> 3.0.5 | expand

Commit Message

Trevor Gamblin Nov. 20, 2023, 9:58 p.m. UTC
License-Update: Update license link to use https

cython 3.0.x attempts to remain compatible with 0.29.x but still makes
some major changes (in addition to fixing old issues). For a complete
overview it's best to view the CHANGES.rst doc rather than including
them here: https://github.com/cython/cython/blob/master/CHANGES.rst.

Note that more source files were added to cython_fix_sources to avoid
the following:

|WARNING: python3-cython-3.0.5-r0 do_package_qa: QA Issue: File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Utils.c in package python3-cython-src contains reference to TMPDIR
|File /usr/src/debug/python3-cython/3.0.5-r0/Cython/StringIOTree.c in package python3-cython-src contains reference to TMPDIR
|File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Compiler/Parsing.c in package python3-cython-src contains reference to TMPDIR
|File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Compiler/Code.c in package python3-cython-src contains reference to TMPDIR
|File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Plex/Machines.c in package python3-cython-src contains reference to TMPDIR
|File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Plex/DFA.c in package python3-cython-src contains reference to TMPDIR
|File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Plex/Transitions.c in package python3-cython-src contains reference to TMPDIR [buildpaths]

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
---
v2 rebases the patch to apply on latest master. There was a previous
improvement made to the python3-cython recipe that was merged first.

 meta/recipes-devtools/python/python-cython.inc           | 4 ++--
 ...python3-cython_0.29.36.bb => python3-cython_3.0.5.bb} | 9 ++++++++-
 2 files changed, 10 insertions(+), 3 deletions(-)
 rename meta/recipes-devtools/python/{python3-cython_0.29.36.bb => python3-cython_3.0.5.bb} (72%)

Comments

lukas.woodtli@husqvarnagroup.com Nov. 30, 2023, 9:12 a.m. UTC | #1
Thank you for that patch!

We are very much interested in having a recent cython version in the openembedded-core layer.
How about update to cython 3.0.6 which was just released on Nov 23?

See also remarks about LIC_FILES_CHKSUM and SRC_URI[sha256sum] (in the quoted patches at the bottom of the mail).

Regards,
Lukas

On Mon, Nov 20, 2023 at 10:58 PM, Trevor Gamblin wrote:

> 
> License-Update: Update license link to use https
> 
> cython 3.0.x attempts to remain compatible with 0.29.x but still makes
> some major changes (in addition to fixing old issues). For a complete
> overview it's best to view the CHANGES.rst doc rather than including
> them here: https://github.com/cython/cython/blob/master/CHANGES.rst.
> 
> Note that more source files were added to cython_fix_sources to avoid
> the following:
> 
> |WARNING: python3-cython-3.0.5-r0 do_package_qa: QA Issue: File
> /usr/src/debug/python3-cython/3.0.5-r0/Cython/Utils.c in package
> python3-cython-src contains reference to TMPDIR
> |File /usr/src/debug/python3-cython/3.0.5-r0/Cython/StringIOTree.c in
> package python3-cython-src contains reference to TMPDIR
> |File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Compiler/Parsing.c in
> package python3-cython-src contains reference to TMPDIR
> |File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Compiler/Code.c in
> package python3-cython-src contains reference to TMPDIR
> |File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Plex/Machines.c in
> package python3-cython-src contains reference to TMPDIR
> |File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Plex/DFA.c in package
> python3-cython-src contains reference to TMPDIR
> |File /usr/src/debug/python3-cython/3.0.5-r0/Cython/Plex/Transitions.c in
> package python3-cython-src contains reference to TMPDIR [buildpaths]
> 
> Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
> ---
> v2 rebases the patch to apply on latest master. There was a previous
> improvement made to the python3-cython recipe that was merged first.
> 
> meta/recipes-devtools/python/python-cython.inc | 4 ++--
> ...python3-cython_0.29.36.bb => python3-cython_3.0.5.bb} | 9 ++++++++-
> 2 files changed, 10 insertions(+), 3 deletions(-)
> rename meta/recipes-devtools/python/{python3-cython_0.29.36.bb =>
> python3-cython_3.0.5.bb} (72%)
> 
> diff --git a/meta/recipes-devtools/python/python-cython.inc
> b/meta/recipes-devtools/python/python-cython.inc
> index 6aec6b012f1..e757e3f7c87 100644
> --- a/meta/recipes-devtools/python/python-cython.inc
> +++ b/meta/recipes-devtools/python/python-cython.inc
> @@ -5,11 +5,11 @@ It's designed to bridge the gap between the nice,
> high-level, easy-to-use world
> and the messy, low-level world of C."
> SECTION = "devel/python"
> LICENSE = "Apache-2.0"

LIC_FILES_CHKSUM should be moved into the `bb` file as it changes when the cython version changes.

> 
> -LIC_FILES_CHKSUM =
> "file://LICENSE.txt;md5=e23fadd6ceef8c618fc1c65191d846fa"
> +LIC_FILES_CHKSUM =
> "file://LICENSE.txt;md5=61c3ee8961575861fa86c7e62bc9f69c"
> 
> PYPI_PACKAGE = "Cython"
> BBCLASSEXTEND = "native nativesdk"

SRC_URI[sha256sum]: Same as LIC_FILES_CHKSUM (should be moved into the `bb` file)
> 
> 
> -SRC_URI[sha256sum] =
> "41c0cfd2d754e383c9eeb95effc9aa4ab847d0c9747077ddd7c0dcb68c3bc01f"
> +SRC_URI[sha256sum] =
> "39318348db488a2f24e7c84e08bdc82f2624853c0fea8b475ea0b70b27176492"
> UPSTREAM_CHECK_REGEX = "Cython-(?P<pver>.*)\.tar"
> 
> inherit pypi
> diff --git a/meta/recipes-devtools/python/python3-cython_0.29.36.bb
> b/meta/recipes-devtools/python/python3-cython_3.0.5.bb
> similarity index 72%
> rename from meta/recipes-devtools/python/python3-cython_0.29.36.bb
> rename to meta/recipes-devtools/python/python3-cython_3.0.5.bb
> index 07638d7ad78..342c0f8f3fe 100644
> --- a/meta/recipes-devtools/python/python3-cython_0.29.36.bb
> +++ b/meta/recipes-devtools/python/python3-cython_3.0.5.bb
> @@ -20,14 +20,21 @@ do_install:append() {
> PACKAGESPLITFUNCS =+ "cython_fix_sources"
> 
> cython_fix_sources () {
> - for f in ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \
> + for f in ${PKGD}${TARGET_DBSRC_DIR}/Cython/Compiler/Code.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FusedNode.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Parsing.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Scanning.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Visitor.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Actions.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/DFA.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Machines.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Scanners.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Transitions.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Runtime/refnanny.c \
> ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Tempita/_tempita.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/StringIOTree.c \
> + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Utils.c \
> ${PKGD}${libdir}/${PYTHON_DIR}/site-packages/Cython*/SOURCES.txt; do
> if [ -e $f ]; then
> sed -i -e 's#${WORKDIR}/Cython-${PV}#${TARGET_DBGSRC_DIR}#g' $f
> --
> 2.42.0
diff mbox series

Patch

diff --git a/meta/recipes-devtools/python/python-cython.inc b/meta/recipes-devtools/python/python-cython.inc
index 6aec6b012f1..e757e3f7c87 100644
--- a/meta/recipes-devtools/python/python-cython.inc
+++ b/meta/recipes-devtools/python/python-cython.inc
@@ -5,11 +5,11 @@  It's designed to bridge the gap between the nice, high-level, easy-to-use world
 and the messy, low-level world of C."
 SECTION = "devel/python"
 LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e23fadd6ceef8c618fc1c65191d846fa"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=61c3ee8961575861fa86c7e62bc9f69c"
 PYPI_PACKAGE = "Cython"
 BBCLASSEXTEND = "native nativesdk"
 
-SRC_URI[sha256sum] = "41c0cfd2d754e383c9eeb95effc9aa4ab847d0c9747077ddd7c0dcb68c3bc01f"
+SRC_URI[sha256sum] = "39318348db488a2f24e7c84e08bdc82f2624853c0fea8b475ea0b70b27176492"
 UPSTREAM_CHECK_REGEX = "Cython-(?P<pver>.*)\.tar"
 
 inherit pypi
diff --git a/meta/recipes-devtools/python/python3-cython_0.29.36.bb b/meta/recipes-devtools/python/python3-cython_3.0.5.bb
similarity index 72%
rename from meta/recipes-devtools/python/python3-cython_0.29.36.bb
rename to meta/recipes-devtools/python/python3-cython_3.0.5.bb
index 07638d7ad78..342c0f8f3fe 100644
--- a/meta/recipes-devtools/python/python3-cython_0.29.36.bb
+++ b/meta/recipes-devtools/python/python3-cython_3.0.5.bb
@@ -20,14 +20,21 @@  do_install:append() {
 PACKAGESPLITFUNCS =+ "cython_fix_sources"
 
 cython_fix_sources () {
-	for f in ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \
+	for f in ${PKGD}${TARGET_DBSRC_DIR}/Cython/Compiler/Code.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FusedNode.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Parsing.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Scanning.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/Visitor.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Actions.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/DFA.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Machines.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Scanners.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Plex/Transitions.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Runtime/refnanny.c \
 		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Tempita/_tempita.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/StringIOTree.c \
+		${PKGD}${TARGET_DBGSRC_DIR}/Cython/Utils.c \
 		${PKGD}${libdir}/${PYTHON_DIR}/site-packages/Cython*/SOURCES.txt; do
 		if [ -e $f ]; then
 			sed -i -e 's#${WORKDIR}/Cython-${PV}#${TARGET_DBGSRC_DIR}#g' $f