summaryrefslogtreecommitdiff
path: root/dev-python/sphinx
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-08-07 12:37:21 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-08-07 12:37:21 +0100
commitb8c7370a682e4e29cda623222d17a790c01c3642 (patch)
treef6caa14689bd00a5760eadaa381ff41e50ef3c1b /dev-python/sphinx
parent8a4997a7e2d1e36c089d4d76935b5a902d98d3d0 (diff)
gentoo auto-resync : 07:08:2024 - 12:37:20
Diffstat (limited to 'dev-python/sphinx')
-rw-r--r--dev-python/sphinx/Manifest6
-rw-r--r--dev-python/sphinx/sphinx-8.0.0_rc1.ebuild144
-rw-r--r--dev-python/sphinx/sphinx-8.0.1.ebuild144
-rw-r--r--dev-python/sphinx/sphinx-8.0.2.ebuild144
4 files changed, 438 insertions, 0 deletions
diff --git a/dev-python/sphinx/Manifest b/dev-python/sphinx/Manifest
index 4f9a77d12459..b6dabfdf0e0b 100644
--- a/dev-python/sphinx/Manifest
+++ b/dev-python/sphinx/Manifest
@@ -5,8 +5,14 @@ DIST sphinx-7.2.6.gh.tar.gz 7067425 BLAKE2B 4da1cb5ccebea4df0dc134c552311d7b70ce
DIST sphinx-7.3.7.gh.tar.gz 7165383 BLAKE2B bcc68f26937e6aefe60cedea533a5c8e245c76b59ab4913fb6516f285e3afc32be60b336c662ac8305fb88e82fcc2b477128f2d8b9bf92f037b124f4c855df2a SHA512 540553ecddc55b3e673c79bc776a899d2c660f1e93ef819711be52174accf5b70465883a46bed81d163534e56718caf0765b4bae153e9307a3792387d8228df5
DIST sphinx-7.4.6.gh.tar.gz 8187130 BLAKE2B 69cf73dc3644ac0fbb4e2d26ee07652b4a16bb2d87fba1a6f5a3dba74533af470d2449658eb7029479618d47ea34d6dc896126cfe330d31b343c0a3300ba90b3 SHA512 7015aa5b926856e1e3ed35b559a78dbeb8a1746028f4a488a3237c65ea5eb786a9feff05649b8126395c6f8277802a093c704ca13e941d3aab561b2fca8b0de8
DIST sphinx-7.4.7.gh.tar.gz 8135111 BLAKE2B b5a511355b16edfbcf32f9a20855466251c592a7fbffa33a84d84369f2a9de7767cd9529cce3f350cdf25bfbb53534ddea70d9482c1d6d78e9ab160d2c9821e8 SHA512 bfb48d4dc09f108986c5b7737710c7495fbdd83eb18f2a1c77bc9d324c499bffb5103f65ebf7396260f10c0f89eddb1ae5eb8d037bd33fffd748483f4391a7e1
+DIST sphinx-8.0.0rc1.gh.tar.gz 8139326 BLAKE2B 3cb69ece3d6f85ceebd494abe9ae11a76b3473eca52611b197cd3a34985e37bc0275c9c194d87ca529a63d46976c9624ff9270734b638f8cbfb81c25f5fee0be SHA512 cd7e1b01a2a6dcc3106aef6f110bbd1c4cc06865e7c20c85e65b191128c4a28c836c5401f02e6a812317033b97ff4f683948b78d3edd56fbb8d12d6a7ada52f6
+DIST sphinx-8.0.1.gh.tar.gz 8264971 BLAKE2B 5c0fb71607b75fc445cafe115bc2765e859d0224857149862517060e6133a610a05ca2c10fe78f32cf7f99396bd4991a834dcdecd0d3945bc6300a010dfdf408 SHA512 11e6901c27484fbad7c9f1b3c192603f3dd9d79092f3910ea05edd6541d0f8368471134c53d694f6032ad2d22131baf1b0bee2725f89c291dc236a6195315ed9
+DIST sphinx-8.0.2.gh.tar.gz 8264835 BLAKE2B ed6e321a1e58341609d88993c418ec1a0a580683ed28895077322fdba839d5c158007d65d5349d4d53c5e3b49ae823142cc6eb0203812580ebbb5b95247bf157 SHA512 5e9f38af91d7a80b6a80a80ab26adbebc1c3303996182a58eed9120ed896c5bfde022616e116e8cb8195fe03741e93fd97dcacccf492912ab147c5bfcb79213d
EBUILD sphinx-7.2.6.ebuild 4353 BLAKE2B 4e6f4767fd2b2f7de9174a745fc40c926af6acd89f62423bfa284721601a95c95694472e7b77be2a029860625821b33f11049c151cfd5c04e23a85c06a7def40 SHA512 73efc9db67471cc131fcaec408545dfdea8a04122efa57878062964d2b887fc2e8c6f5cca0d34ee321feaf9d1a77e72cd2ff4db8c0a5d7d2318fd7012d7865ab
EBUILD sphinx-7.3.7-r2.ebuild 5310 BLAKE2B 128efb1a41ce24b53330a72259e3c77077e10da299fd8603b17dd9713706459bab6850f2ab33f6dbd334ee8391a72f85438cf2576be1d36964ddaaac3dfe2b06 SHA512 b8ba39628d84b873f503eeb35f8195e0e133ebcc8416cab007ec737b1c57967106504d01bc04ab412a66bebde0c68a0f5e7d92c4b9469147a4ad66ac130fa86e
EBUILD sphinx-7.4.6.ebuild 5270 BLAKE2B b1c8db8344fa29b37ec9a8f4a48ace4e24f292e33c12d07c1c9f2fea96450b81033512478f79063363035bf777548958e11273efb6a231ac4f2e0d7af4a30709 SHA512 c91c06bced59fb811fc9a185e1ed30e36a79c432911d6813dfcb102544186478b05333cb19644309b10c18782156343298e9c7f38d2e333d54cf0b354802ee3e
EBUILD sphinx-7.4.7.ebuild 5270 BLAKE2B b1c8db8344fa29b37ec9a8f4a48ace4e24f292e33c12d07c1c9f2fea96450b81033512478f79063363035bf777548958e11273efb6a231ac4f2e0d7af4a30709 SHA512 c91c06bced59fb811fc9a185e1ed30e36a79c432911d6813dfcb102544186478b05333cb19644309b10c18782156343298e9c7f38d2e333d54cf0b354802ee3e
+EBUILD sphinx-8.0.0_rc1.ebuild 5308 BLAKE2B b455e6ec5f0eee8d04587217259d1a484077e2da08cb5b61480290d751ed8622a40d8c75e0dc602221adcee4b946b73a758c261f5e920cb1b678199b6655faa6 SHA512 9736a0f342f996c044c4cf7bb93bcbe244ace0e51e6961c1ff2cc706fd6be330ade4653d5f0d0adb18842c97991413fb6e1488b67f2acd59f72239c824162a43
+EBUILD sphinx-8.0.1.ebuild 5308 BLAKE2B b455e6ec5f0eee8d04587217259d1a484077e2da08cb5b61480290d751ed8622a40d8c75e0dc602221adcee4b946b73a758c261f5e920cb1b678199b6655faa6 SHA512 9736a0f342f996c044c4cf7bb93bcbe244ace0e51e6961c1ff2cc706fd6be330ade4653d5f0d0adb18842c97991413fb6e1488b67f2acd59f72239c824162a43
+EBUILD sphinx-8.0.2.ebuild 5308 BLAKE2B b455e6ec5f0eee8d04587217259d1a484077e2da08cb5b61480290d751ed8622a40d8c75e0dc602221adcee4b946b73a758c261f5e920cb1b678199b6655faa6 SHA512 9736a0f342f996c044c4cf7bb93bcbe244ace0e51e6961c1ff2cc706fd6be330ade4653d5f0d0adb18842c97991413fb6e1488b67f2acd59f72239c824162a43
MISC metadata.xml 568 BLAKE2B ddb7175070df6da4088813cc6b66f25bb4364e2619b1e7da94370f7ce8e73b68b12f618412f81e6be57fcb0c60c10e3913f26a6a578b0f9defa7b9ee8091fcde SHA512 d32b37cbe88f5e3db0c6968bc7aa22c7edfb3794bf7c62facd17e7ae1f4f0fbfc7c9f5512230cce16ed32e2ebb70c23dfe9b36ce38785c5f5b76585410313214
diff --git a/dev-python/sphinx/sphinx-8.0.0_rc1.ebuild b/dev-python/sphinx/sphinx-8.0.0_rc1.ebuild
new file mode 100644
index 000000000000..af4ae1849105
--- /dev/null
+++ b/dev-python/sphinx/sphinx-8.0.0_rc1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+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"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc latex"
+
+RDEPEND="
+ >=dev-python/alabaster-0.7.14[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.13[${PYTHON_USEDEP}]
+ <dev-python/docutils-0.22[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.20[${PYTHON_USEDEP}]
+ >=dev-python/imagesize-1.3[${PYTHON_USEDEP}]
+ >=dev-python/jinja-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/snowballstemmer-2.2[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-htmlhelp-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-serializinghtml-1.1.9[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2[${PYTHON_USEDEP}]
+ ' 3.10)
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+"
+BDEPEND="
+ 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"
+ #"${FILESDIR}/sphinx-4.3.2-doc-link.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || 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"
+
+ local EPYTEST_DESELECT=(
+ # less interesting failures
+ tests/test_builders/test_build_latex.py::test_build_latex_doc
+ tests/test_extensions/test_ext_math.py::test_imgmath_png
+ tests/test_extensions/test_ext_math.py::test_imgmath_numfig_html
+ )
+ case ${EPYTHON} in
+ python3.13x)
+ EPYTEST_DESELECT+=(
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_special_members
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_type_aliases
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_format_fully_qualified
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_none
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_signature
+ )
+ ;;
+ pypy3)
+ EPYTEST_DESELECT+=(
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_exception
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_ignore_module_all
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_inherited_members_None
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_subclass_of_builtin_class
+ tests/test_extensions/test_ext_autodoc.py::test_automethod_for_builtin
+ tests/test_extensions/test_ext_autodoc.py::test_cython
+ tests/test_extensions/test_ext_autodoc.py::test_format_signature
+ tests/test_extensions/test_ext_autodoc.py::test_partialfunction
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_autodoc_process_bases
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_show_inheritance_for_decendants_of_generic_type
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_show_inheritance_for_subclass_of_generic_type
+ tests/test_extensions/test_ext_autodoc_autofunction.py::test_builtin_function
+ tests/test_extensions/test_ext_autodoc_autofunction.py::test_methoddescriptor
+ tests/test_extensions/test_ext_autodoc_automodule.py::test_automodule_inherited_members
+ tests/test_extensions/test_ext_autodoc_preserve_defaults.py::test_preserve_defaults_special_constructs
+ tests/test_extensions/test_ext_autosummary.py::test_autosummary_generate_content_for_module
+ tests/test_extensions/test_ext_autosummary.py::test_autosummary_generate_content_for_module_skipped
+ tests/test_util/test_util_inspect.py::test_isattributedescriptor
+ tests/test_util/test_util_inspect.py::test_signature
+ tests/test_util/test_util_typing.py::test_is_invalid_builtin_class
+ )
+ ;;
+ esac
+
+ # note: pytest-xdist causes random test failures
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=5
+}
diff --git a/dev-python/sphinx/sphinx-8.0.1.ebuild b/dev-python/sphinx/sphinx-8.0.1.ebuild
new file mode 100644
index 000000000000..af4ae1849105
--- /dev/null
+++ b/dev-python/sphinx/sphinx-8.0.1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+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"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc latex"
+
+RDEPEND="
+ >=dev-python/alabaster-0.7.14[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.13[${PYTHON_USEDEP}]
+ <dev-python/docutils-0.22[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.20[${PYTHON_USEDEP}]
+ >=dev-python/imagesize-1.3[${PYTHON_USEDEP}]
+ >=dev-python/jinja-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/snowballstemmer-2.2[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-htmlhelp-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-serializinghtml-1.1.9[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2[${PYTHON_USEDEP}]
+ ' 3.10)
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+"
+BDEPEND="
+ 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"
+ #"${FILESDIR}/sphinx-4.3.2-doc-link.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || 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"
+
+ local EPYTEST_DESELECT=(
+ # less interesting failures
+ tests/test_builders/test_build_latex.py::test_build_latex_doc
+ tests/test_extensions/test_ext_math.py::test_imgmath_png
+ tests/test_extensions/test_ext_math.py::test_imgmath_numfig_html
+ )
+ case ${EPYTHON} in
+ python3.13x)
+ EPYTEST_DESELECT+=(
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_special_members
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_type_aliases
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_format_fully_qualified
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_none
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_signature
+ )
+ ;;
+ pypy3)
+ EPYTEST_DESELECT+=(
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_exception
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_ignore_module_all
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_inherited_members_None
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_subclass_of_builtin_class
+ tests/test_extensions/test_ext_autodoc.py::test_automethod_for_builtin
+ tests/test_extensions/test_ext_autodoc.py::test_cython
+ tests/test_extensions/test_ext_autodoc.py::test_format_signature
+ tests/test_extensions/test_ext_autodoc.py::test_partialfunction
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_autodoc_process_bases
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_show_inheritance_for_decendants_of_generic_type
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_show_inheritance_for_subclass_of_generic_type
+ tests/test_extensions/test_ext_autodoc_autofunction.py::test_builtin_function
+ tests/test_extensions/test_ext_autodoc_autofunction.py::test_methoddescriptor
+ tests/test_extensions/test_ext_autodoc_automodule.py::test_automodule_inherited_members
+ tests/test_extensions/test_ext_autodoc_preserve_defaults.py::test_preserve_defaults_special_constructs
+ tests/test_extensions/test_ext_autosummary.py::test_autosummary_generate_content_for_module
+ tests/test_extensions/test_ext_autosummary.py::test_autosummary_generate_content_for_module_skipped
+ tests/test_util/test_util_inspect.py::test_isattributedescriptor
+ tests/test_util/test_util_inspect.py::test_signature
+ tests/test_util/test_util_typing.py::test_is_invalid_builtin_class
+ )
+ ;;
+ esac
+
+ # note: pytest-xdist causes random test failures
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=5
+}
diff --git a/dev-python/sphinx/sphinx-8.0.2.ebuild b/dev-python/sphinx/sphinx-8.0.2.ebuild
new file mode 100644
index 000000000000..af4ae1849105
--- /dev/null
+++ b/dev-python/sphinx/sphinx-8.0.2.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+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"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc latex"
+
+RDEPEND="
+ >=dev-python/alabaster-0.7.14[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.13[${PYTHON_USEDEP}]
+ <dev-python/docutils-0.22[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.20[${PYTHON_USEDEP}]
+ >=dev-python/imagesize-1.3[${PYTHON_USEDEP}]
+ >=dev-python/jinja-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/snowballstemmer-2.2[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-htmlhelp-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-serializinghtml-1.1.9[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2[${PYTHON_USEDEP}]
+ ' 3.10)
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+"
+BDEPEND="
+ 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"
+ #"${FILESDIR}/sphinx-4.3.2-doc-link.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || 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"
+
+ local EPYTEST_DESELECT=(
+ # less interesting failures
+ tests/test_builders/test_build_latex.py::test_build_latex_doc
+ tests/test_extensions/test_ext_math.py::test_imgmath_png
+ tests/test_extensions/test_ext_math.py::test_imgmath_numfig_html
+ )
+ case ${EPYTHON} in
+ python3.13x)
+ EPYTEST_DESELECT+=(
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_special_members
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_type_aliases
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_format_fully_qualified
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_none
+ tests/test_extensions/test_ext_autodoc_configs.py::test_autodoc_typehints_signature
+ )
+ ;;
+ pypy3)
+ EPYTEST_DESELECT+=(
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_exception
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_ignore_module_all
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_inherited_members_None
+ tests/test_extensions/test_ext_autodoc.py::test_autodoc_subclass_of_builtin_class
+ tests/test_extensions/test_ext_autodoc.py::test_automethod_for_builtin
+ tests/test_extensions/test_ext_autodoc.py::test_cython
+ tests/test_extensions/test_ext_autodoc.py::test_format_signature
+ tests/test_extensions/test_ext_autodoc.py::test_partialfunction
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_autodoc_process_bases
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_show_inheritance_for_decendants_of_generic_type
+ tests/test_extensions/test_ext_autodoc_autoclass.py::test_show_inheritance_for_subclass_of_generic_type
+ tests/test_extensions/test_ext_autodoc_autofunction.py::test_builtin_function
+ tests/test_extensions/test_ext_autodoc_autofunction.py::test_methoddescriptor
+ tests/test_extensions/test_ext_autodoc_automodule.py::test_automodule_inherited_members
+ tests/test_extensions/test_ext_autodoc_preserve_defaults.py::test_preserve_defaults_special_constructs
+ tests/test_extensions/test_ext_autosummary.py::test_autosummary_generate_content_for_module
+ tests/test_extensions/test_ext_autosummary.py::test_autosummary_generate_content_for_module_skipped
+ tests/test_util/test_util_inspect.py::test_isattributedescriptor
+ tests/test_util/test_util_inspect.py::test_signature
+ tests/test_util/test_util_typing.py::test_is_invalid_builtin_class
+ )
+ ;;
+ esac
+
+ # note: pytest-xdist causes random test failures
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=5
+}