diff --git a/dev-python/rich/Manifest b/dev-python/rich/Manifest index 08f01b7483125..4166354089859 100644 --- a/dev-python/rich/Manifest +++ b/dev-python/rich/Manifest @@ -1 +1,2 @@ DIST rich-13.8.1.gh.tar.gz 15062921 BLAKE2B 6df186dee1eccabbb28ef4bcd3bbceac335fbe39cf1ff6318726146f3eead9033fe362ca3c363c057c9b898ebb824d55f13454d68cb917dfc82e07e1e0038fa4 SHA512 d84d05fcc657fbcbcca09c22856c36fb945fde481111565292b13a9c5472cc1cf7e6266069f80b48821f7307a1479edc65a48d3b8a96334922b151d93b402daa +DIST rich-13.9.1.gh.tar.gz 15063679 BLAKE2B ce08c00e9d1754c75485ebc025a2479bd2dd851f38d87a40c38ef17118c626a9f1ca17219578b7a0e7ad758d626465f467850ccf2d37d8d29501951eca516eec SHA512 c45406ad33f86d0f310a6ae229b0e9eea39313bf21fb7d44bc2e40993c4928814db26f6b9740477dc6418c4eb1974fe2bf782b98288dac12b109673ee783a62c diff --git a/dev-python/rich/rich-13.9.1.ebuild b/dev-python/rich/rich-13.9.1.ebuild new file mode 100644 index 0000000000000..de21ed690f8df --- /dev/null +++ b/dev-python/rich/rich-13.9.1.ebuild @@ -0,0 +1,77 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 optfeature + +DESCRIPTION="Python library for rendering rich text, tables, etc. to the terminal" +HOMEPAGE=" + https://github.com/Textualize/rich/ + https://pypi.org/project/rich/ +" +SRC_URI=" + https://github.com/Textualize/rich/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/colorama[${PYTHON_USEDEP}] + >=dev-python/markdown-it-py-2.2.0[${PYTHON_USEDEP}] + >=dev-python/pygments-2.13.0[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}] + ' 3.10) +" +BDEPEND=" + test? ( + >=dev-python/attrs-21.4.0[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO + tests/test_console.py::test_size_can_fall_back_to_std_descriptors + # TODO: segfault in recursion (PyQt6 interfering?) + tests/test_traceback.py::test_recursive + ) + # version-specific output -- the usual deal + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + # pypy3.10, to be more precise + tests/test_inspect.py::test_inspect_integer_with_methods_python310only + ) + ;; + python3.13) + EPYTEST_DESELECT+=( + tests/test_inspect.py::test_inspect_builtin_function_except_python311 + tests/test_inspect.py::test_inspect_integer_with_methods_python38_and_python39 + tests/test_inspect.py::test_inspect_integer_with_methods_python310only + tests/test_inspect.py::test_inspect_integer_with_methods_python311 + tests/test_pretty.py::test_pretty_dataclass + tests/test_pretty.py::test_reference_cycle_dataclass + tests/test_pretty.py::test_max_depth_dataclass + tests/test_pretty.py::test_attrs_broken + ) + ;; + esac + + local -x COLUMNS=80 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} + +pkg_postinst() { + optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets +}