mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-31 10:58:21 -07:00
dev-python/sphinx: Unpin dev-python/docutils and fix tests
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
48
dev-python/sphinx/files/sphinx-9.1.0-test.patch
Normal file
48
dev-python/sphinx/files/sphinx-9.1.0-test.patch
Normal file
@@ -0,0 +1,48 @@
|
||||
From c01b0eb640bbc3dbd8141f3ea08df9edaa78ab2c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?B=C3=A9n=C3=A9dikt=20Tran?=
|
||||
<10796600+picnixz@users.noreply.github.com>
|
||||
Date: Sun, 7 Jun 2026 11:49:11 +0200
|
||||
Subject: [PATCH] Fix `test_search.py` with long-word splitting (#14474)
|
||||
|
||||
---
|
||||
tests/roots/test-search/index.rst | 1 +
|
||||
tests/test_search.py | 7 ++++++-
|
||||
2 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/roots/test-search/index.rst b/tests/roots/test-search/index.rst
|
||||
index b38fd0271f6..c618633c345 100644
|
||||
--- a/tests/roots/test-search/index.rst
|
||||
+++ b/tests/roots/test-search/index.rst
|
||||
@@ -19,6 +19,7 @@ International
|
||||
|
||||
.. tip::
|
||||
:class: no-search
|
||||
+
|
||||
bat cat
|
||||
|
||||
.. toctree::
|
||||
diff --git a/tests/test_search.py b/tests/test_search.py
|
||||
index f94ae987bb7..64ec4670085 100644
|
||||
--- a/tests/test_search.py
|
||||
+++ b/tests/test_search.py
|
||||
@@ -76,6 +76,11 @@ def is_registered_term(index: Any, keyword: str) -> bool:
|
||||
return index['terms'].get(keyword, []) != []
|
||||
|
||||
|
||||
+def is_registered_prefix(index: Any, prefix: str) -> bool:
|
||||
+ terms = index['terms']
|
||||
+ return any(k.startswith(prefix) and v != [] for k, v in terms.items())
|
||||
+
|
||||
+
|
||||
FILE_CONTENTS = """\
|
||||
section_title
|
||||
=============
|
||||
@@ -144,7 +149,7 @@ def test_stemmer(app: SphinxTestApp) -> None:
|
||||
searchindex = load_searchindex(app.outdir / 'searchindex.js')
|
||||
print(searchindex)
|
||||
assert is_registered_term(searchindex, 'findthisstemmedkey')
|
||||
- assert is_registered_term(searchindex, 'intern')
|
||||
+ assert is_registered_prefix(searchindex, 'intern')
|
||||
|
||||
|
||||
@pytest.mark.sphinx('html', testroot='search')
|
||||
109
dev-python/sphinx/sphinx-9.1.0-r1.ebuild
Normal file
109
dev-python/sphinx/sphinx-9.1.0-r1.ebuild
Normal file
@@ -0,0 +1,109 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=flit
|
||||
PYTHON_COMPAT=( python3_{12..14} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_P=${P/_}
|
||||
DESCRIPTION="Python documentation generator"
|
||||
HOMEPAGE="
|
||||
https://www.sphinx-doc.org/
|
||||
https://github.com/sphinx-doc/sphinx/
|
||||
https://pypi.org/project/Sphinx/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/sphinx-doc/sphinx/archive/v${PV/_}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
if [[ ${PV} != *_rc* ]]; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
fi
|
||||
IUSE="doc latex"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/alabaster-0.7.14[${PYTHON_USEDEP}]
|
||||
>=dev-python/babel-2.13[${PYTHON_USEDEP}]
|
||||
>=dev-python/docutils-0.21[${PYTHON_USEDEP}]
|
||||
>=dev-python/imagesize-1.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/jinja2-3.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/packaging-23.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pygments-2.14[${PYTHON_USEDEP}]
|
||||
>=dev-python/requests-2.30.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/roman-numerals-1.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/snowballstemmer-2.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinxcontrib-applehelp-1.0.7[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinxcontrib-devhelp-1.0.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinxcontrib-htmlhelp-2.0.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinxcontrib-jsmath-1.0.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinxcontrib-qthelp-1.0.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinxcontrib-serializinghtml-1.1.9[${PYTHON_USEDEP}]
|
||||
latex? (
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-luatex
|
||||
app-text/dvipng
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-python/flit-core-3.11
|
||||
doc? (
|
||||
dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
|
||||
media-gfx/graphviz
|
||||
)
|
||||
test? (
|
||||
app-text/dvipng
|
||||
>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/defusedxml-0.7.1[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
|
||||
>=dev-python/setuptools-67.0[${PYTHON_USEDEP}]
|
||||
dev-texlive/texlive-fontsextra
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-luatex
|
||||
virtual/imagemagick-tools[jpeg,png,svg]
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/sphinx-3.2.1-doc-link.patch"
|
||||
)
|
||||
|
||||
EPYTEST_PLUGINS=()
|
||||
EPYTEST_RERUNS=5
|
||||
# EPYTEST_XDIST breaks stuff
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
local PATCHES=(
|
||||
# https://github.com/sphinx-doc/sphinx/commit/c01b0eb640bbc3dbd8141f3ea08df9edaa78ab2c
|
||||
"${FILESDIR}/${P}-test.patch"
|
||||
)
|
||||
|
||||
# disable internet access
|
||||
sed -i -e 's:^intersphinx_mapping:disabled_&:' \
|
||||
doc/conf.py || die
|
||||
# unpin dependencies
|
||||
sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
# we can't use distutils_enable_sphinx because it would
|
||||
# introduce a dep on itself
|
||||
use doc && build_sphinx doc
|
||||
}
|
||||
|
||||
python_test() {
|
||||
mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
|
||||
local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
|
||||
|
||||
epytest
|
||||
}
|
||||
Reference in New Issue
Block a user