From 5e0a5ca921524f8859808527a57655eec16efa52 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 18 Jul 2023 00:58:25 +0100 Subject: gentoo auto-resync : 18:07:2023 - 00:58:24 --- dev-python/cython/Manifest | 8 +- dev-python/cython/cython-3.0.0.ebuild | 84 +++++++++ dev-python/cython/cython-3.0.0_beta3-r2.ebuild | 81 -------- dev-python/cython/cython-3.0.0_rc2.ebuild | 84 --------- .../files/cython-3.0.0_beta3-const-iter.patch | 207 --------------------- .../files/cython-3.0.0_beta3-py312-long.patch | 28 --- 6 files changed, 86 insertions(+), 406 deletions(-) create mode 100644 dev-python/cython/cython-3.0.0.ebuild delete mode 100644 dev-python/cython/cython-3.0.0_beta3-r2.ebuild delete mode 100644 dev-python/cython/cython-3.0.0_rc2.ebuild delete mode 100644 dev-python/cython/files/cython-3.0.0_beta3-const-iter.patch delete mode 100644 dev-python/cython/files/cython-3.0.0_beta3-py312-long.patch (limited to 'dev-python/cython') diff --git a/dev-python/cython/Manifest b/dev-python/cython/Manifest index 8fbc08dbc428..29e889cf0b4f 100644 --- a/dev-python/cython/Manifest +++ b/dev-python/cython/Manifest @@ -2,16 +2,12 @@ AUX 50cython-gentoo.el 388 BLAKE2B 5bc38190b467efa9e7be1a5831022534dbfdc02206fca AUX cython-0.29.22-spawn-multiprocessing.patch 963 BLAKE2B ebbc3f6f4fa88e7e082326bccbad328724a4ff5645f0b2aa28f21419044b17bed8495618bb980b23a99310c2b6ef275331e1b9aa6d734017eb33646c92a07a73 SHA512 3f5c6b4108b87cf3014416386095c07ac91762152bbd87e8bd589177d40b933c11e19610bea06720c5c70f76b5b9b70d27e5c3cfa20eed30deaaf7d122910bd3 AUX cython-0.29.23-pythran-parallel-install.patch 874 BLAKE2B 39286ee98427260ce6ec077a750e0a1412445343fd11be9d96d8ab65b7d9789c5f1864cb9a1b3565ee3f51e117ecc854ebacc39dc32917fc72f36340c2d7f0a1 SHA512 8b78755288d3f165d962a5a1be9492d609a8e3dab10197b271c84ed0c4b7006053038e68f18bbb4204e6acba83e3f72ffeabf57ffa03f4a08f28b65db3cfd854 AUX cython-0.29.23-test_exceptions-py310.patch 656 BLAKE2B 6c650c85d01b8bf367528d144cd967fa9def94634e35763e2e7a1c3e5afa2b01d0c84694024dde6e45577eee223f6464b5f88ab971d207d35892edf347a0c08f SHA512 d8f7f770a0b3303552deec0e7d3f9258de1edcd384f4b2c3881634fd21ce847a3d974e9142d1ed2fbe3a549e65292c6690be3a36ab4de52d0593d9831dc2f7ce -AUX cython-3.0.0_beta3-const-iter.patch 7842 BLAKE2B af1097e3f3b9f22f2ad5b8416eb057042f8892f830f4a8a547cd06860c84457c946f86674090dd64dba946ebae6e7e9bcc37783d1223e4b4b64fb6094fc29f31 SHA512 673d14a946107cc2514908760f6f038b436f11c6e76f006d5fc28b1729ba872ac12d05c6cc893aeef51c4c5538ada9958e9dc79f23a1777f2439e275fedb3e72 -AUX cython-3.0.0_beta3-py312-long.patch 1397 BLAKE2B 194906e0df79df8c0b3e42d5c3c29200cf0277f38ea70aaa8cd654ccb1d3ce44c1ce63de3d12cb4939b5a3855afdbdea0995e5aecce118547dce6d7ce3ce9677 SHA512 692c4f9972b2d6fe50ca40f784cb9deb3ee7dc0dd73f6028996ee59ff50549d87cf930e126cb75629d31d057a794760cb00373f8ad56802dddb5aef0fea8ae2a DIST cython-0.29.34.gh.tar.gz 2114639 BLAKE2B c5f70fd3e6074d9030a1035bc98d71b703e0f391b61bd91f3ffba2c35a29a98b9ff8ef2047e7c75743ead280f0f06a924abe84ae8bf7696b65da662a3c58ee0c SHA512 51679d1304d0f87dfb51e60c753f1ce60027f855a91cf130a5dcf84353884a7dcf09c01701945ae2f9173f8f095890c377d5faac28c2f01d7f764609c0130411 DIST cython-0.29.35.gh.tar.gz 2115190 BLAKE2B ac23abbd2b560ee52a79840d995a4cf36ddb3a8705b9327010f1ad6add8028185c15703efcc1d59b581d65b5de38e123c0f07c36fe6ffe54a6efee7512161344 SHA512 35d679d94e1f731e004b83fb4ae0d569703b0800c913012308146b1c54463ce12cb1cf3733e24162fb357f179444c5ca31108a37850e6c749ddebac5175119f5 DIST cython-0.29.36.gh.tar.gz 2115333 BLAKE2B 6d43779c7222ff65d7de3a35ec18ef636480807d53480a8f94cc8c92d462fcc2f4d201a3bbf6e840a11fd33025e32c53f85626b05c131d10eed2859cdca7eb2d SHA512 a086fe1a11290cd3c870b891e61a0a0e2595bab9c26888024a758b6950c07059346d682fa9349e46c0af89805abbdd750059b3189960b8ce18007dfb5eb4391a -DIST cython-3.0.0b3.gh.tar.gz 2688784 BLAKE2B 933bb48b2bf5169c973a36c877a36eae28b80409a7ff395b82a14ac0740247496df3c9f2d69884c823b7475069f0c75d6cbbb964b88de60b38082e6e36659bff SHA512 f1d0fdcec4bc6b0f6cb66078592424fdcb7a028b79c5b9d41280ae112235736d11c9f4f793e810007e880ae0def195ac25999db59065c7f7bdcfab84b06bf7d3 -DIST cython-3.0.0rc2.gh.tar.gz 2713358 BLAKE2B 5d1e1043e0785c4e79441e47ab6d03b7dbdff8728946707acd39452c1a20e3527e3142bbf09d140d28e233ef0ae0e870650f5f77a8d2a1d084199b5b39937463 SHA512 42ff1b3f2509c90be6007b9156454ae89c1be26a9dde6ca9c109b0cfa3de30797eeeffef38ea1bfe37a9c8e062c776c8cb755826f8c25aa7c9703fbb031bf643 +DIST cython-3.0.0.gh.tar.gz 2713478 BLAKE2B 16be50b463cf155417fee02b4529bbde8c4402bac0098ddf2cb05e33ac4c5b455bf7595b046b2bc6edcc8121f2c6be3b7af60c3c721a37bebcf4c654cd41a43f SHA512 a9bf6f0a78accd0624bc2a61329541d97d60257ae3a6b6601f73bd9122427a3d460129b317f000d3061a4dfe3e6a6de59342354862ded13e85c7eb622ee39f9a EBUILD cython-0.29.34.ebuild 2053 BLAKE2B 23381f1aef8140eb5becd09cb5f39563d8d801665b7fb6f8674658d7c5923855c9124dc88c10b0bc024b5b8771a1ed25faa938b7380dbb556b84d10a34b9a081 SHA512 7dd4ea66bdcb44dc64be8d617eac48bf4f80a32db5c8e2423a94c2c7ebef2857f1a103f07f32e6281d0fc84f4d78e27e8582006bebfc4cb7deae1f1b8c1eb333 EBUILD cython-0.29.35.ebuild 2228 BLAKE2B c80e9cedb151c7d971bb52118f67332bbcecc1e780dbef65d7965d3bac23dceeee1a189b84e3956770866dcb73a3b2f2917d4db9b3cd0f49bdf3f0e82c5f01de SHA512 be56773909d380c114bb15b40a6f2c778be66e29d465f976c64beafdba1d28f445ab63853a100f1c9e5247bfca8b86277d4fccaa72b54c889162b337cc7c9fb8 EBUILD cython-0.29.36.ebuild 2240 BLAKE2B 951c47bc8110df60e659b7c1d94fcf0fa841064d2e47dc1883fcd681ea19e77310872b00b5e1ce0bc73e6862b9e42b0bff00407e9612fe0096c91269b9bd9898 SHA512 5112fbe372f04050e7aabf954950b37ba489f19eb5ad913dbb1addf60263edf8bb283fac608254d6ba70d560cc1e9ad5f3e2f312d5256a7ccbcf0444fea789fd -EBUILD cython-3.0.0_beta3-r2.ebuild 2115 BLAKE2B 0cacc31bd5d8bd48abaa04d2e218a5d2c6649bef1245b2df20d2d37791120482c7a7db7e18870a5d4494f6170fc04396ec5652bfde2c9cd6242c4a24f6ff7957 SHA512 1ceb34f826a96112cb97f2ba203d49db5f99680155755844f72af0b9d3efd9d1399c3dd9d839e6f1cc4f4c040fa048513ae1a0fc12fb01f37057a38d21257dda -EBUILD cython-3.0.0_rc2.ebuild 2012 BLAKE2B 528ac18c3d91d15aad03d5ec6449957d0d0c3af98dedf11ed8f8c6762245811b1b16e6f443e7a1904eb32c93cdf7d222ab373751543dead367399767f75b6bd9 SHA512 eb5bb85611f0490e8d2d80b2c97404f9a9029ff9575241384a21b58010e3241bb90a138fec7fd5aaf0e9611fca1d2bcd429ad45f6e3fdcb703c5f8dead0b8265 +EBUILD cython-3.0.0.ebuild 2012 BLAKE2B 528ac18c3d91d15aad03d5ec6449957d0d0c3af98dedf11ed8f8c6762245811b1b16e6f443e7a1904eb32c93cdf7d222ab373751543dead367399767f75b6bd9 SHA512 eb5bb85611f0490e8d2d80b2c97404f9a9029ff9575241384a21b58010e3241bb90a138fec7fd5aaf0e9611fca1d2bcd429ad45f6e3fdcb703c5f8dead0b8265 MISC metadata.xml 606 BLAKE2B 1ee3fc75852383aa0618afeb7521c3ae0e95b518c85b2c58ff958905092cf68017d313a09d25031a50b649f9dd1b452e751036f2552df9d91447baaeff0a8f0b SHA512 b7917c2e417cee9e59c8011246f7223f5095c87f0294ea140dbfc8fda0b09cf61c9f055380a9d3f74a07e71bb49d75f219d6224ea95f1f4d4b451e5688c13f78 diff --git a/dev-python/cython/cython-3.0.0.ebuild b/dev-python/cython/cython-3.0.0.ebuild new file mode 100644 index 000000000000..3e911be4bd62 --- /dev/null +++ b/dev-python/cython/cython-3.0.0.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_TESTED=( python3_{10..11} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_12 pypy3 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 multiprocessing toolchain-funcs + +MY_P=${P/_rc/rc} +DESCRIPTION="A Python to C compiler" +HOMEPAGE=" + https://cython.org/ + https://github.com/cython/cython/ + https://pypi.org/project/Cython/ +" +SRC_URI=" + https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/numpy[${PYTHON_USEDEP}] + ' python3_{10..11}) + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" + "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" + "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" +) + +distutils_enable_sphinx docs \ + dev-python/jinja \ + dev-python/sphinx-issues \ + dev-python/sphinx-tabs + +python_compile() { + # Python gets confused when it is in sys.path before build. + local -x PYTHONPATH= + + distutils-r1_python_compile +} + +python_test() { + 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 + # https://github.com/cython/cython/issues/1911 + local -x CFLAGS="${CFLAGS} -fno-strict-overflow" + "${PYTHON}" runtests.py \ + -vv \ + -j "$(makeopts_jobs)" \ + --work-dir "${BUILD_DIR}"/tests \ + --no-examples \ + --no-code-style \ + || 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/dev-python/cython/cython-3.0.0_beta3-r2.ebuild b/dev-python/cython/cython-3.0.0_beta3-r2.ebuild deleted file mode 100644 index bbe34ee3f715..000000000000 --- a/dev-python/cython/cython-3.0.0_beta3-r2.ebuild +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_TESTED=( python3_{10..11} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_12 pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 multiprocessing toolchain-funcs - -MY_P=${P/_beta/b} -DESCRIPTION="A Python to C compiler" -HOMEPAGE=" - https://cython.org/ - https://github.com/cython/cython/ - https://pypi.org/project/Cython/ -" -SRC_URI=" - https://github.com/cython/cython/archive/${PV/_beta/b}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - ' python3_{10..11}) - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" - "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" - "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" - # backport upstream fix e.g. for dev-python/pysimdjson on py3.12 - "${FILESDIR}/${P}-py312-long.patch" - # should fix dev-python/symengine - # https://github.com/cython/cython/pull/5483 - "${FILESDIR}/${P}-const-iter.patch" -) - -distutils_enable_sphinx docs \ - dev-python/jinja \ - dev-python/sphinx-issues \ - dev-python/sphinx-tabs - -python_compile() { - # Python gets confused when it is in sys.path before build. - local -x PYTHONPATH= - - distutils-r1_python_compile -} - -python_test() { - if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then - einfo "Skipping tests on ${EPYTHON} (xfail)" - return - fi - - tc-export CC - # https://github.com/cython/cython/issues/1911 - local -x CFLAGS="${CFLAGS} -fno-strict-overflow" - "${PYTHON}" runtests.py -vv -j "$(makeopts_jobs)" --work-dir "${BUILD_DIR}"/tests || - 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/dev-python/cython/cython-3.0.0_rc2.ebuild b/dev-python/cython/cython-3.0.0_rc2.ebuild deleted file mode 100644 index 3e911be4bd62..000000000000 --- a/dev-python/cython/cython-3.0.0_rc2.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_TESTED=( python3_{10..11} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_12 pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 multiprocessing toolchain-funcs - -MY_P=${P/_rc/rc} -DESCRIPTION="A Python to C compiler" -HOMEPAGE=" - https://cython.org/ - https://github.com/cython/cython/ - https://pypi.org/project/Cython/ -" -SRC_URI=" - https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - ' python3_{10..11}) - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" - "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" - "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" -) - -distutils_enable_sphinx docs \ - dev-python/jinja \ - dev-python/sphinx-issues \ - dev-python/sphinx-tabs - -python_compile() { - # Python gets confused when it is in sys.path before build. - local -x PYTHONPATH= - - distutils-r1_python_compile -} - -python_test() { - 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 - # https://github.com/cython/cython/issues/1911 - local -x CFLAGS="${CFLAGS} -fno-strict-overflow" - "${PYTHON}" runtests.py \ - -vv \ - -j "$(makeopts_jobs)" \ - --work-dir "${BUILD_DIR}"/tests \ - --no-examples \ - --no-code-style \ - || 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/dev-python/cython/files/cython-3.0.0_beta3-const-iter.patch b/dev-python/cython/files/cython-3.0.0_beta3-const-iter.patch deleted file mode 100644 index 18822f12904a..000000000000 --- a/dev-python/cython/files/cython-3.0.0_beta3-const-iter.patch +++ /dev/null @@ -1,207 +0,0 @@ -From 913b8fadc5fc45306764c0ede472e1bc3b606d10 Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 12 Jun 2023 13:42:09 -0500 -Subject: [PATCH 1/4] Don't remove const for reverse iteration - ---- - Cython/Compiler/ExprNodes.py | 27 --------------------------- - Cython/Includes/libcpp/map.pxd | 8 ++++++-- - 2 files changed, 6 insertions(+), 29 deletions(-) - -diff --git a/Cython/Compiler/ExprNodes.py b/Cython/Compiler/ExprNodes.py -index ad4701b7bb6..275a6233da5 100644 ---- a/Cython/Compiler/ExprNodes.py -+++ b/Cython/Compiler/ExprNodes.py -@@ -3268,32 +3268,6 @@ def free_temps(self, code): - ExprNode.free_temps(self, code) - - --def remove_const(item_type): -- """ -- Removes the constness of a given type and its underlying templates -- if any. -- -- This is to solve the compilation error when the temporary variable used to -- store the result of an iterator cannot be changed due to its constness. -- For example, the value_type of std::map, which will also be the type of -- the temporarry variable, is std::pair. This means the first -- component of the variable cannot be reused to store the result of each -- iteration, which leads to a compilation error. -- """ -- if item_type.is_const: -- item_type = item_type.cv_base_type -- if item_type.is_typedef: -- item_type = remove_const(item_type.typedef_base_type) -- if item_type.is_cpp_class and item_type.templates: -- templates = [remove_const(t) if t.is_const else t for t in item_type.templates] -- template_type = item_type.template_type -- item_type = PyrexTypes.CppClassType( -- template_type.name, template_type.scope, -- template_type.cname, template_type.base_classes, -- templates, template_type) -- return item_type -- -- - class NextNode(AtomicExprNode): - # Used as part of for statement implementation. - # Implements result = next(iterator) -@@ -3336,7 +3310,6 @@ def infer_type(self, env, iterator_type=None): - - def analyse_types(self, env): - self.type = self.infer_type(env, self.iterator.type) -- self.type = remove_const(self.type) - self.is_temp = 1 - return self - -diff --git a/Cython/Includes/libcpp/map.pxd b/Cython/Includes/libcpp/map.pxd -index d81af66e09a..2c2c5c82adf 100644 ---- a/Cython/Includes/libcpp/map.pxd -+++ b/Cython/Includes/libcpp/map.pxd -@@ -50,7 +50,9 @@ cdef extern from "" namespace "std" nogil: - cppclass reverse_iterator: - reverse_iterator() except + - reverse_iterator(reverse_iterator&) except + -- value_type& operator*() -+ # correct would be value_type& but this does not work -+ # well with cython's code gen -+ pair[T, U]& operator*() - reverse_iterator operator++() - reverse_iterator operator--() - reverse_iterator operator++(int) -@@ -63,7 +65,9 @@ cdef extern from "" namespace "std" nogil: - const_reverse_iterator() except + - const_reverse_iterator(reverse_iterator&) except + - operator=(reverse_iterator&) except + -- const value_type& operator*() -+ # correct would be const value_type& but this does not work -+ # well with cython's code gen -+ const pair[T, U]& operator*() - const_reverse_iterator operator++() - const_reverse_iterator operator--() - const_reverse_iterator operator++(int) - -From cb804f989eaa9938e72d0336d82bb7aa0003455f Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 12 Jun 2023 13:57:58 -0500 -Subject: [PATCH 2/4] Add test from gh5478 - ---- - tests/run/cpp_iterators.pyx | 22 ++++++++++++++++++++++ - 1 file changed, 22 insertions(+) - -diff --git a/tests/run/cpp_iterators.pyx b/tests/run/cpp_iterators.pyx -index 81048d0b36b..424168fa825 100644 ---- a/tests/run/cpp_iterators.pyx -+++ b/tests/run/cpp_iterators.pyx -@@ -7,6 +7,7 @@ from libcpp.map cimport map as stdmap - from libcpp.set cimport set as stdset - from libcpp.string cimport string - from libcpp.vector cimport vector -+from libcpp.memory cimport shared_ptr, make_shared - from cython.operator cimport dereference as deref - - cdef extern from "cpp_iterators_simple.h": -@@ -272,6 +273,27 @@ def test_iteration_over_attribute_of_call(): - for i in get_object_with_iterable_attribute().vec: - print(i) - -+cdef extern from *: -+ # TODO: support make_shared[const int] -+ shared_ptr[const int] make_shared_const_int "std::make_shared"(int) -+ -+def test_iteration_over_shared_const_ptr_set(py_v): -+ """ -+ >>> test_iteration_over_shared_const_ptr_set[2, 4, 6]) -+ 6 -+ 4 -+ 2 -+ """ -+ cdef stdset[shared_ptr[const int]] s -+ cdef int i -+ for e in py_v: -+ i = e -+ s.insert(make_shared_const_int(i)) -+ -+ cdef shared_ptr[const int] a -+ for a in s: -+ print(deref(a)) -+ - def test_iteration_over_reversed_list(py_v): - """ - >>> test_iteration_over_reversed_list([2, 4, 6]) - -From a9bfacdcf5358e9d5a1d3c8ab0dd2eff6f18018a Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 12 Jun 2023 14:07:37 -0500 -Subject: [PATCH 3/4] Fix multimap too - ---- - Cython/Includes/libcpp/map.pxd | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/Cython/Includes/libcpp/map.pxd b/Cython/Includes/libcpp/map.pxd -index 2c2c5c82adf..eb739509ac1 100644 ---- a/Cython/Includes/libcpp/map.pxd -+++ b/Cython/Includes/libcpp/map.pxd -@@ -177,7 +177,9 @@ cdef extern from "" namespace "std" nogil: - cppclass reverse_iterator: - reverse_iterator() except + - reverse_iterator(reverse_iterator&) except + -- value_type& operator*() -+ # correct would be value_type& but this does not work -+ # well with cython's code gen -+ pair[T, U]& operator*() - reverse_iterator operator++() - reverse_iterator operator--() - reverse_iterator operator++(int) -@@ -190,7 +192,9 @@ cdef extern from "" namespace "std" nogil: - const_reverse_iterator() except + - const_reverse_iterator(reverse_iterator&) except + - operator=(reverse_iterator&) except + -- const value_type& operator*() -+ # correct would be const value_type& but this does not work -+ # well with cython's code gen -+ const pair[T, U]& operator*() - const_reverse_iterator operator++() - const_reverse_iterator operator--() - const_reverse_iterator operator++(int) - -From 0528cd937e6d4606eb0902ee8d8db672ee7f88fe Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 12 Jun 2023 17:50:41 -0500 -Subject: [PATCH 4/4] Fix test - ---- - tests/run/cpp_iterators.pyx | 15 +++++++-------- - 1 file changed, 7 insertions(+), 8 deletions(-) - -diff --git a/tests/run/cpp_iterators.pyx b/tests/run/cpp_iterators.pyx -index 424168fa825..57d2716bea5 100644 ---- a/tests/run/cpp_iterators.pyx -+++ b/tests/run/cpp_iterators.pyx -@@ -277,18 +277,17 @@ cdef extern from *: - # TODO: support make_shared[const int] - shared_ptr[const int] make_shared_const_int "std::make_shared"(int) - --def test_iteration_over_shared_const_ptr_set(py_v): -+def test_iteration_over_shared_const_ptr_vector(py_v): - """ -- >>> test_iteration_over_shared_const_ptr_set[2, 4, 6]) -- 6 -- 4 -+ >>> test_iteration_over_shared_const_ptr_vector([2, 4, 6]) - 2 -+ 4 -+ 6 - """ -- cdef stdset[shared_ptr[const int]] s -+ cdef vector[shared_ptr[const int]] s - cdef int i -- for e in py_v: -- i = e -- s.insert(make_shared_const_int(i)) -+ for i in py_v: -+ s.push_back(make_shared_const_int(i)) - - cdef shared_ptr[const int] a - for a in s: diff --git a/dev-python/cython/files/cython-3.0.0_beta3-py312-long.patch b/dev-python/cython/files/cython-3.0.0_beta3-py312-long.patch deleted file mode 100644 index fb849eca8666..000000000000 --- a/dev-python/cython/files/cython-3.0.0_beta3-py312-long.patch +++ /dev/null @@ -1,28 +0,0 @@ -From d82e4e34582e908d315b912a60d81d5759850df5 Mon Sep 17 00:00:00 2001 -From: Stefan Behnel -Date: Mon, 29 May 2023 21:58:15 +0200 -Subject: [PATCH] Fix the argument type passed into the new - "PyUnstable_Long_Compact*()" C-API functions in CPython 3.12. - ---- - Cython/Utility/TypeConversion.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/Cython/Utility/TypeConversion.c b/Cython/Utility/TypeConversion.c -index efc5c1373..09e87d81c 100644 ---- a/Cython/Utility/TypeConversion.c -+++ b/Cython/Utility/TypeConversion.c -@@ -149,8 +149,8 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); - ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x)) - - #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue) -- #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact(x) -- #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue(x) -+ #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x) -+ #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x) - #else - #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS)) - #define __Pyx_PyLong_CompactValue(x) ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0]) --- -2.41.0 - -- cgit v1.2.3