From 934ad490201c5434a9d4cf60727d4f5eec421c89 Mon Sep 17 00:00:00 2001 From: Wang Mingyu Date: Wed, 13 Mar 2024 15:08:17 +0800 Subject: python3-cython: upgrade 3.0.8 -> 3.0.9 Changelog: =========== Features added -------------- * Assigning "const" values to non-const variables now issues a warning. * Using "noexcept" on a function returning Python objects now issues a warning. * Some C-API usage was updated for the upcoming CPython 3.13. * The deprecated "Py_UNICODE" type is no longer used, unless required by user code. * "std::string.replace()" declarations were added to libcpp.string. Bugs fixed ---------- * Cython generates incorrect (but harmless) self-casts when directly calling final methods of subtypes. Lacking a better solution, the errors that recent gcc versions produce have been silenced for the time being. * Unused variable warnings about clineno were fixed when C lines in tracebacks are disabled. * Subclass deallocation of extern classes could crash if the base class uses GC. * Type checks for Python "memoryview" could use an invalid C function. * Calling final fused functions could generate invalid C code. * Declaring extern enums multiple times could generate invalid C code. * "pyximport" used relative paths incorrectly. * Running Cython with globbing characters ("[]*?") in the module search path could fail. * Literal strings that include braces could change the C code indentation. Other changes ------------- * The "enum class not importable" warning is now only issued once per enum type. (From OE-Core rev: 35a7d28d271d2f3e27cf24c2433c4e69c650509e) Signed-off-by: Wang Mingyu Signed-off-by: Richard Purdie --- meta/recipes-devtools/python/python-cython.inc | 2 +- .../python/python3-cython_3.0.8.bb | 37 ---------------------- .../python/python3-cython_3.0.9.bb | 37 ++++++++++++++++++++++ 3 files changed, 38 insertions(+), 38 deletions(-) delete mode 100644 meta/recipes-devtools/python/python3-cython_3.0.8.bb create mode 100644 meta/recipes-devtools/python/python3-cython_3.0.9.bb (limited to 'meta/recipes-devtools/python') diff --git a/meta/recipes-devtools/python/python-cython.inc b/meta/recipes-devtools/python/python-cython.inc index e54926ae6d..2235aa9332 100644 --- a/meta/recipes-devtools/python/python-cython.inc +++ b/meta/recipes-devtools/python/python-cython.inc @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=61c3ee8961575861fa86c7e62bc9f69c" PYPI_PACKAGE = "Cython" BBCLASSEXTEND = "native nativesdk" -SRC_URI[sha256sum] = "8333423d8fd5765e7cceea3a9985dd1e0a5dfeb2734629e1a2ed2d6233d39de6" +SRC_URI[sha256sum] = "a2d354f059d1f055d34cfaa62c5b68bc78ac2ceab6407148d47fb508cf3ba4f3" UPSTREAM_CHECK_REGEX = "Cython-(?P.*)\.tar" inherit pypi diff --git a/meta/recipes-devtools/python/python3-cython_3.0.8.bb b/meta/recipes-devtools/python/python3-cython_3.0.8.bb deleted file mode 100644 index 07638d7ad7..0000000000 --- a/meta/recipes-devtools/python/python3-cython_3.0.8.bb +++ /dev/null @@ -1,37 +0,0 @@ -inherit setuptools3 -require python-cython.inc - -RDEPENDS:${PN} += "\ - python3-setuptools \ -" - -# running build_ext a second time during install fails, because Python -# would then attempt to import cythonized modules built for the target -# architecture. -SETUPTOOLS_INSTALL_ARGS += "--skip-build" - -do_install:append() { - # rename scripts that would conflict with the Python 2 build of Cython - mv ${D}${bindir}/cython ${D}${bindir}/cython3 - mv ${D}${bindir}/cythonize ${D}${bindir}/cythonize3 - mv ${D}${bindir}/cygdb ${D}${bindir}/cygdb3 -} - -PACKAGESPLITFUNCS =+ "cython_fix_sources" - -cython_fix_sources () { - for f in ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \ - ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FusedNode.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/Scanners.c \ - ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Runtime/refnanny.c \ - ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Tempita/_tempita.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 - fi - done -} - diff --git a/meta/recipes-devtools/python/python3-cython_3.0.9.bb b/meta/recipes-devtools/python/python3-cython_3.0.9.bb new file mode 100644 index 0000000000..07638d7ad7 --- /dev/null +++ b/meta/recipes-devtools/python/python3-cython_3.0.9.bb @@ -0,0 +1,37 @@ +inherit setuptools3 +require python-cython.inc + +RDEPENDS:${PN} += "\ + python3-setuptools \ +" + +# running build_ext a second time during install fails, because Python +# would then attempt to import cythonized modules built for the target +# architecture. +SETUPTOOLS_INSTALL_ARGS += "--skip-build" + +do_install:append() { + # rename scripts that would conflict with the Python 2 build of Cython + mv ${D}${bindir}/cython ${D}${bindir}/cython3 + mv ${D}${bindir}/cythonize ${D}${bindir}/cythonize3 + mv ${D}${bindir}/cygdb ${D}${bindir}/cygdb3 +} + +PACKAGESPLITFUNCS =+ "cython_fix_sources" + +cython_fix_sources () { + for f in ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FlowControl.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Compiler/FusedNode.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/Scanners.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Runtime/refnanny.c \ + ${PKGD}${TARGET_DBGSRC_DIR}/Cython/Tempita/_tempita.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 + fi + done +} + -- cgit v1.2.3-54-g00ecf