dev-python/rich: Add from Gentoo

It's from Gentoo commit ab09556ceaf9e03d9fa9a32955d93ec5850db6f4.
This commit is contained in:
Krzesimir Nowak 2024-08-02 17:11:33 +02:00
parent c752baf538
commit aee00b0ec2
4 changed files with 154 additions and 0 deletions

View File

@ -0,0 +1,2 @@
DIST rich-13.4.2.gh.tar.gz 15063000 BLAKE2B f65079440bc7d89a3ff03be01fa71e076493ae50f22ae8781be2448a7ff2769c174d6654db3a835d34720c34cd8cbecfdd6b13e3064cf7fdcade71806563309d SHA512 17052a9fb0e1d89b31a00d8a719214719891d048fd805185b2d4258c8766130f44bf2280c9567bc162f3b34d9bf2eb7d747d6a37d910c81cd53d3003b51f70bd
DIST rich-13.7.1.gh.tar.gz 15058064 BLAKE2B 6fad18bf0a4e4f72e530c78db7a498f27dd8c9a7b9b17ca5ef12a94bbe513857f3c42d4903f8ebbfe8907727cddaf290f08862c27efb29db8aaf70c7bcb13ace SHA512 0c69101bc6c2a238a4c516812cda08299115b903b8282ee348b45b212a88fcbfbf69d11a3705a97bdb6192988ee3047804bb5b52b7950d860542cde8ce2d4bd2

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
<stabilize-allarches/>
<upstream>
<remote-id type="pypi">rich</remote-id>
<remote-id type="github">Textualize/rich</remote-id>
</upstream>
</pkgmetadata>

View File

@ -0,0 +1,65 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=poetry
PYTHON_COMPAT=( python3_{10..12} 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 ~ia64 ~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}]
"
distutils_enable_tests pytest
python_test() {
local -x COLUMNS=80
local EPYTEST_DESELECT=(
# TODO
tests/test_console.py::test_size_can_fall_back_to_std_descriptors
tests/test_inspect.py::test_inspect_integer_with_methods_python38_and_python39
# pygments?
tests/test_syntax.py::test_python_render_simple_indent_guides
tests/test_syntax.py::test_python_render_line_range_indent_guides
)
# 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.12)
EPYTEST_DESELECT+=(
tests/test_inspect.py::test_inspect_builtin_function_except_python311
tests/test_inspect.py::test_inspect_integer_with_methods_python310only
tests/test_inspect.py::test_inspect_integer_with_methods_python311_and_above
tests/test_pretty.py::test_attrs_broken
)
;;
esac
epytest -p no:pytest-qt
}
pkg_postinst() {
optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets
}

View File

@ -0,0 +1,74 @@
# 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 ~ia64 ~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}]
"
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
}