diff options
Diffstat (limited to 'dev-python/immutables/immutables-0.20.ebuild')
-rw-r--r-- | dev-python/immutables/immutables-0.20.ebuild | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/dev-python/immutables/immutables-0.20.ebuild b/dev-python/immutables/immutables-0.20.ebuild new file mode 100644 index 000000000000..a3dda207372a --- /dev/null +++ b/dev-python/immutables/immutables-0.20.ebuild @@ -0,0 +1,61 @@ +# Copyright 2019-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 + +DESCRIPTION="A high-performance immutable mapping type for Python" +HOMEPAGE=" + https://github.com/MagicStack/immutables/ + https://pypi.org/project/immutables/ +" +SRC_URI=" + https://github.com/MagicStack/${PN}/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" +IUSE="+native-extensions" + +distutils_enable_tests pytest + +src_prepare() { + local PATCHES=( + # https://github.com/MagicStack/immutables/pull/117 + "${FILESDIR}/${P}-opt-ext.patch" + ) + + sed -i -e '/mypy/d' tests/conftest.py || die + distutils-r1_src_prepare +} + +python_compile() { + # upstream controls NDEBUG explicitly + use debug && local -x DEBUG_IMMUTABLES=1 + local -x IMMUTABLES_EXT=$(usex native-extensions 1 0) + case ${EPYTHON} in + python3.13) + # https://github.com/MagicStack/immutables/issues/116 + IMMUTABLES_EXT=0 + ;; + esac + + distutils-r1_python_compile +} + +python_test() { + local EPYTEST_IGNORE=( + tests/test_mypy.py + ) + + rm -rf immutables || die + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} |