diff options
Diffstat (limited to 'dev-python/fonttools')
-rw-r--r-- | dev-python/fonttools/Manifest | 1 | ||||
-rw-r--r-- | dev-python/fonttools/fonttools-4.51.0.ebuild | 98 |
2 files changed, 99 insertions, 0 deletions
diff --git a/dev-python/fonttools/Manifest b/dev-python/fonttools/Manifest index 77f552a71543..7c92134a94e7 100644 --- a/dev-python/fonttools/Manifest +++ b/dev-python/fonttools/Manifest @@ -1,2 +1,3 @@ DIST fonttools-4.49.0.gh.tar.gz 3818768 BLAKE2B add7c03762e6c09950f2abfb8b19e627f7ce367b73c48b02059ab308ee7f8475e94c575719a168166497261cb4762ec4959c7812ab5fc122477a7751a8fabdb9 SHA512 6caa108b92a9661f6761a4e1c65f05cabf0d4f6a6f2517d2a289afc5e60ad73c7e35ee283d1a206b1bcd2ec5861f70272e323b9041aa949c713dc531d2d056d2 DIST fonttools-4.50.0.gh.tar.gz 3823676 BLAKE2B ebcc19b3f2c8367147c7e05a514951d25497b1e6e224226e0831f566464b6d407e6a52a3b30620dbe87df1a0ce03d95cb5769cab15ee78822d218ccd81419263 SHA512 a169f18077f2c4f0ad8a46569a30b3e35ca2343e9f3d43cd362dafa26085f545dd9a42e7edb3054f9d37e1576117aa34a0c2b4adabc9fc29c076e69d3fdd66ee +DIST fonttools-4.51.0.gh.tar.gz 3826324 BLAKE2B 84485874ce373ef759746104f8c0593d63e2955427a1606404e56ae006342fef39e3fe9468d85b974741ae26a8cceba23ea46e33fff0e2648c154074b01b5eac SHA512 3a9984b56a8ed1e918781c8503dd8901276ae7e20659777ff0a9bf799a42b4ec112a6cfd31deb81f73f7f19c03145a66962187fb243b2580db9d3ef7011d3d82 diff --git a/dev-python/fonttools/fonttools-4.51.0.ebuild b/dev-python/fonttools/fonttools-4.51.0.ebuild new file mode 100644 index 000000000000..12d8605257bc --- /dev/null +++ b/dev-python/fonttools/fonttools-4.51.0.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-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..12} ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 virtualx + +DESCRIPTION="Library for manipulating TrueType, OpenType, AFM and Type1 fonts" +HOMEPAGE=" + https://github.com/fonttools/fonttools/ + https://pypi.org/project/fonttools/ +" +SRC_URI=" + https://github.com/fonttools/fonttools/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="+native-extensions" + +RDEPEND=" + >=dev-python/fs-2.4.9[${PYTHON_USEDEP}] +" +BDEPEND=" + native-extensions? ( + $(python_gen_cond_dep ' + dev-python/cython[${PYTHON_USEDEP}] + ' 'python*') + ) + test? ( + dev-python/brotlicffi[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + app-arch/zopfli + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # When dev-python/pytest-shutil is installed, we get weird import errors. + # This is due to incomplete nesting in the Tests/ tree: + # + # Tests/feaLib/__init__.py + # Tests/ufoLib/__init__.py + # Tests/svgLib/path/__init__.py + # Tests/otlLib/__init__.py + # Tests/varLib/__init__.py + # + # This tree requires an __init__.py in Tests/svgLib/ too, bug #701148. + touch Tests/svgLib/__init__.py || die + + distutils-r1_python_prepare_all +} + +python_compile() { + local -x FONTTOOLS_WITH_CYTHON=$(usex native-extensions) + [[ ${EPYTHON} == pypy3 ]] && FONTTOOLS_WITH_CYTHON=0 + distutils-r1_python_compile +} + +src_test() { + # virtualx used when matplotlib is installed causing plot module tests to run + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # flaky test + Tests/ttLib/woff2_test.py::WOFF2ReaderTest::test_get_normal_tables + ) + + if [[ ${EPYTHON} == pypy3 ]] && + has_version "dev-python/pyxattr[${PYTHON_USEDEP}]" && + { + has_version "<dev-python/pypy3_10-exe-7.3.13_p2" || + has_version "<dev-python/pypy3_10-exe-bin-7.3.13_p2" + } + then + EPYTEST_DESELECT+=( + # affected by a bug in PyPy/pyxattr + # https://github.com/iustin/pyxattr/issues/41 + Tests/t1Lib/t1Lib_test.py::ReadWriteTest::test_read_with_path + ) + fi + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + nonfatal epytest \ + -p rerunfailures --reruns=5 \ + Tests fontTools || die -n "Tests failed with ${EPYTHON}" +} |