diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest index debd32e57d..d14b279b9a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest @@ -1,5 +1,6 @@ -DIST cython-3.1.2.tar.gz 3184825 BLAKE2B 8be6016f3e9a5a7db71fd1cab65424db1a1cd8e9d0118f01432964eb816135021f77542aff2b1f0fd2af8f657f952ebce2f420d7610ae37c6c6956f94e54a636 SHA512 c674027dae58377ea71d8d8b15601e6e0c80435807603251e685608218805fef2e6eac4bbebd3c50c319cd7da660ff9ce1a6daeb673eb40ce70bbfe7f0069600 -DIST cython-3.1.3.tar.gz 3186689 BLAKE2B 520adbaf737b2625a5b6d5802484d84dccf12867ec4c6d379816b84c4413e9a766ee3c21f0ce4209f7961b19346f5e874ab09ed7bf9dc9a259afb8e65ae2359e SHA512 dbf14b486e9dc3cf978abd80f0fcc16d9ed8077d5a44c66b669291d6cc89beeae3e901e4975cee44208dcf52f11ba331a8d73587bf55891976a9ec4818a2470b DIST cython-3.1.4.tar.gz 3190778 BLAKE2B 7e554db21ba009dc70157ad03b414091f9bba15586c5fa842b23cc28c116dc153857e99c9981dd0f783f696b6afa3b2689424231b88ae89bcf9233fa8006b9c9 SHA512 dd524d7de59f949a8bac1cb944a7a2b4eb26b13107db4fd6f9af000d5af18dd08ac5768253721e3513f5b4c1593fdd8cf055f4ffc17d541b2b90ca461522e8f1 DIST cython-3.1.5.tar.gz 3192050 BLAKE2B c076c14685cc0d01d3f70dd35c8dd6c8c6c285f0a7cd575b4b20d6b4ce941e8cc70e1859b4185e0bc485c6963e74e5b33fe9030ec9feb881cc8692434f497ae8 SHA512 cff0cebd3b72b47f92a0bb8f77e564655a966ee58442b7fe76db2263b8b0d5b3636bfb0a561b1f27fd10cfd113e52388b32971bea66f4d2cb6dbf8580465b873 DIST cython-3.1.6.tar.gz 3192329 BLAKE2B 78ea2c33ce38441574c0566b2c093ed91c01b523812484a8da5f426c46d64d0e4c67c2b3e1bf8122c399a9c18372fe93ff63d20fcc2907e0a84c79fd1107d79d SHA512 29950bcb02b2000ffd278a881d91e9c99f554375238a1ea1e7866d6fff120233bca8d7a7c05de93136fddacdb4c071652de8c3b63b6c312dff43435193fe7b89 +DIST cython-3.1.7.tar.gz 3192740 BLAKE2B ed0d15e387389de3e2b35d03326032a0ca112b24b0245ed764e5acbedcc0df07f50561ef18715679bf29fd2da6a288621033722741b2fc25809b43964e856786 SHA512 0d1ab6b0d53168588ea03116a5a2f4106f87266bca0fc46ec9ebc7c881da7ee2a83d9d7d841b551add73aedab7b2ca94419e87f6a387b1ab7ba850030a981fb1 +DIST cython-3.2.0.tar.gz 3267264 BLAKE2B 86aa3698f28c0859d0a846025698d4739deebdbabbf0f6bd9134b4a01fce3fce4b87b1db726c2ab490b0a41091185183f41a67424dfd555067167a4b257c6aa7 SHA512 902f8389792bfa7937f5e1c024a537561e7e0367d1e6e6eefa84ebc25e961968e95bda5095b1cf2b26e994b4b14c0a039b97df80066620c166368a3f0ebd7f4b +DIST cython-3.2.1.tar.gz 3270455 BLAKE2B 10eb8e6e027b3cc594c997efed4e98ded445f666c44ff7d9d027ae32bead6826df22508bbc78241684e7dcdcbe178a70b5d909c5ab541b5c49660f961f2abe26 SHA512 b6f64b2c32c355a9c5a3586fdea768ad1924cb4b421d4395d443dadc1cf06e2fe4f3f85d237789eb0a68c9857750cbefefb022475ed7f3d8787551bea3d2fb7d diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.7.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.7.ebuild index 13bbe1e80c..df3f0a8288 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.7.ebuild @@ -21,7 +21,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="test test-full" RESTRICT="!test? ( test )" @@ -37,7 +37,6 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" ) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.2.0.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.2-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.2.0.ebuild index 7aeb91f938..df3f0a8288 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.2.0.ebuild @@ -21,7 +21,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="test test-full" RESTRICT="!test? ( test )" @@ -37,10 +37,7 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" - # https://github.com/cython/cython/pull/6957 - "${FILESDIR}/${P}-odr.patch" ) distutils_enable_sphinx docs \ diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.2.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.2.1.ebuild new file mode 100644 index 0000000000..df3f0a8288 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.2.1.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_FULLY_TESTED=( python3_{11..14} ) +PYTHON_TESTED=( "${PYTHON_FULLY_TESTED[@]}" pypy3_11 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_{13,14}t ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 multiprocessing pypi toolchain-funcs + +DESCRIPTION="A Python to C compiler" +HOMEPAGE=" + https://cython.org/ + https://github.com/cython/cython/ + https://pypi.org/project/Cython/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="test test-full" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + test-full? ( + $(python_gen_cond_dep ' + dev-python/numpy[${PYTHON_USEDEP}] + ' "${PYTHON_FULLY_TESTED[@]}") + ) + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" +) + +distutils_enable_sphinx docs \ + dev-python/jinja2 \ + dev-python/sphinx-issues \ + dev-python/sphinx-tabs + +python_compile() { + # Python gets confused when it is in sys.path before build. + local -x PYTHONPATH= + + if use elibc_musl ; then + # Workaround for bug #925318 + local -x LDFLAGS="${LDFLAGS} -Wl,-z,stack-size=2097152" + fi + + distutils-r1_python_compile +} + +python_test() { + # PYTHON_TESTED controls whether we expect the testsuite to + # pass at all, while PYTHON_FULLY_TESTED allows skipping before + # numpy is ported (and possibly other deps in future). + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON} (xfail)" + return + fi + + # Needed to avoid confusing cache tests + unset CYTHON_FORCE_REGEN + + tc-export CC + + local testargs=( + -vv + -j "$(makeopts_jobs)" + --work-dir "${BUILD_DIR}"/tests + + --no-examples + --no-code-style + + # Fails to find embedded.c + --exclude 'embedded' + # coverage_installed_pkg needs dev-python/pip and doesn't like + # 'externally-managed' (bug #927995), but we don't really + # want automagic test dependencies at all, so just skip + # unimportant-for-us coverage tests entirely. + --exclude 'run.coverage*' + --exclude 'Cython.Coverage' + # Automagic on dev-python/python-tests, could add this in future + --exclude 'run.test_exceptions' + # TODO: Unpackaged dev-python/interpreters-pep-734 (interpreters_backport) + # This only shows up as a failure with >=3.13. + --exclude 'subinterpreters_threading_stress_test' + + # The fix for https://github.com/cython/cython/issues/6938 + # changes these tests s.t. they break with our build layout. + --exclude 'build.depfile*' + ) + + if [[ ${EPYTHON} == pypy3* ]] ; then + testargs+=( + # Recursion issue + --exclude 'run.if_else_expr' + --exclude 'run.test_patma*' + # Slight output difference (missing '<') + --exclude 'run.cpp_exception_ptr_just_handler' + + ) + fi + + # Keep test-full for numpy as it's large and doesn't pass tests itself + # on niche arches. + if ! use test-full || ! has "${EPYTHON/./_}" "${PYTHON_FULLY_TESTED[@]}"; then + testargs+=( + --exclude 'run.numpy*' + --exclude 'run.ufunc' + --exclude 'numpy*' + ) + fi + + "${PYTHON}" runtests.py "${testargs[@]}" || die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt ) + distutils-r1_python_install_all +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/files/cython-0.29.22-spawn-multiprocessing.patch b/sdk_container/src/third_party/portage-stable/dev-python/cython/files/cython-0.29.22-spawn-multiprocessing.patch deleted file mode 100644 index 15b6f968e4..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/files/cython-0.29.22-spawn-multiprocessing.patch +++ /dev/null @@ -1,27 +0,0 @@ -Needed to prevent a loop while calling cythonize on macOS - or any platform -defaulting to the 'spawn' method, as Python 3.8 does on Darwin. - -https://github.com/cython/cython/pull/3263 - -[Rebased on 0.29.22] - -From 15ae78bb74a856836dd64828326f4f0812d36520 Mon Sep 17 00:00:00 2001 -From: Marcel Bargull -Date: Fri, 6 Dec 2019 18:21:19 +0100 -Subject: [PATCH] Disable parallel cythonization for "spawn" start method. - ---- ---- a/Cython/Build/Dependencies.py -+++ b/Cython/Build/Dependencies.py -@@ -1071,6 +1071,11 @@ def cythonize(module_list, exclude=None, nthreads=0, aliases=None, quiet=False, - - if N <= 1: - nthreads = 0 -+ if nthreads: -+ import multiprocessing -+ if multiprocessing.get_start_method() == 'spawn': -+ print('Disabling parallel cythonization for "spawn" process start method.') -+ nthreads = 0 - if nthreads: - # Requires multiprocessing (or Python >= 2.6) - try: diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/files/cython-3.1.2-odr.patch b/sdk_container/src/third_party/portage-stable/dev-python/cython/files/cython-3.1.2-odr.patch deleted file mode 100644 index f5dacc748d..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/files/cython-3.1.2-odr.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 269dea7ac6f10566c3b1ea3850f6a45538e998ee Mon Sep 17 00:00:00 2001 -From: Ray Speth -Date: Tue, 10 Jun 2025 03:09:03 -0400 -Subject: [PATCH] Mark utility function static to avoid ODR violations (#6957) - -PR #6882 introduces a new method `__pyx_CommonTypesMetaclass_get_module` -in `CommonStructures.c`. Unlike other functions in this file, it is not -marked `static`, which causes one-definition-rule violations when trying -to compile multiple `.pyx` files into a single extension module. - -For context, this module structure is used in -[Cantera](https://github.com/Cantera/cantera). We build the combined -module -[here](https://github.com/Cantera/cantera/blob/b308592776130d82eaac4949283fc87c031cdc97/interfaces/cython/SConscript#L46-L81), -and then use a custom "finder" to load the submodules as defined -[here](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/_cantera.pyx). - -Marking this function `static` restores the previous capability. ---- - Cython/Utility/CommonStructures.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Cython/Utility/CommonStructures.c b/Cython/Utility/CommonStructures.c -index 94f7cc89066..3f1ce6d8408 100644 ---- a/Cython/Utility/CommonStructures.c -+++ b/Cython/Utility/CommonStructures.c -@@ -161,7 +161,7 @@ static int __pyx_CommonTypesMetaclass_init(PyObject *module); /* proto */ - //@requires: FetchCommonType - //@substitute: naming - --PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { -+static PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { - return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); - } -