commit:     6f68b28ce3b069faec8a08dfded7b65f8424e076
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 24 02:04:38 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Oct 24 02:33:57 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f68b28c

dev-python/cython: Bump to 3.1.6

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/cython/Manifest            |   1 +
 dev-python/cython/cython-3.1.6.ebuild | 128 ++++++++++++++++++++++++++++++++++
 2 files changed, 129 insertions(+)

diff --git a/dev-python/cython/Manifest b/dev-python/cython/Manifest
index 42650ad35ff4..debd32e57d1b 100644
--- a/dev-python/cython/Manifest
+++ b/dev-python/cython/Manifest
@@ -2,3 +2,4 @@ DIST cython-3.1.2.tar.gz 3184825 BLAKE2B 
8be6016f3e9a5a7db71fd1cab65424db1a1cd8e
 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

diff --git a/dev-python/cython/cython-3.1.6.ebuild 
b/dev-python/cython/cython-3.1.6.ebuild
new file mode 100644
index 000000000000..df3f0a82889f
--- /dev/null
+++ b/dev-python/cython/cython-3.1.6.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
+}

Reply via email to