summaryrefslogtreecommitdiff
path: root/dev-python/sphinx
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/sphinx')
-rw-r--r--dev-python/sphinx/Manifest7
-rw-r--r--dev-python/sphinx/metadata.xml16
-rw-r--r--dev-python/sphinx/sphinx-1.7.5-r2.ebuild101
-rw-r--r--dev-python/sphinx/sphinx-2.0.1-r1.ebuild106
-rw-r--r--dev-python/sphinx/sphinx-2.4.4.ebuild111
-rw-r--r--dev-python/sphinx/sphinx-3.0.3.ebuild119
-rw-r--r--dev-python/sphinx/sphinx-3.0.4.ebuild119
-rw-r--r--dev-python/sphinx/sphinx-3.1.0.ebuild133
-rw-r--r--dev-python/sphinx/sphinx-3.1.1.ebuild133
9 files changed, 845 insertions, 0 deletions
diff --git a/dev-python/sphinx/Manifest b/dev-python/sphinx/Manifest
new file mode 100644
index 000000000000..524f91b1ac87
--- /dev/null
+++ b/dev-python/sphinx/Manifest
@@ -0,0 +1,7 @@
+DIST Sphinx-1.7.5.tar.gz 4726802 BLAKE2B 8d828dcae1f3ebb813c5f2de8c096a3fac4ab88b424955c27592349c544b775a21703c904a54efa7f86e1967198f4950804904a82a7142a3499f33c5343506e3 SHA512 db2a8df2cdb2ed78ce2341175575c2b04a149451b2bc8a4f74ddc73e308a19d505874fdbae4e370ce48a9b1cdb4de47cdab489bc57c1b378e857d5b8d04a07b8
+DIST Sphinx-2.0.1.tar.gz 6017030 BLAKE2B a446aab8c7f5a4adc93477f4f60ca975690cb4c507d6e51393a4b2c4c56563b9a12e3ea3f85d214c6bdbc7834be107384fe9029d09a73da207fd9699c4b77ab8 SHA512 28430912917a8e3eb6efe6b69268e2a5ae06795c261f2a18ef62f781e365396832c4e4bcfaad7704b1c5f840e98a9dfb82e3b438a491a13cea5c10bee66bf23b
+DIST Sphinx-2.4.4.tar.gz 5966973 BLAKE2B 727a75eb4ec33beadf80b22cdd8dda02a53f4da4aea10ee18ecae658a69a9bb797f83b0d11b41b8405bf18b2472ea7fd501bea85382c20c5f2a9d5b14a032428 SHA512 cd35b7ebdf4eb41fb3a58706333ca4328fbf9b37999ad1bcc751f9769f0a294464e4def019a403fcd2204ca963ef641c35c957a4145eb50af07573d21df8c74d
+DIST Sphinx-3.0.3.tar.gz 5905054 BLAKE2B 048e449603f171d72b24be5bc0fca3465819e78cc9e9e6c66e76457812a71fb2fbf85e7c2d4849541ab3a8980eb91b8f6948654c42d08e46c75c9841f5f840d3 SHA512 1e37224d04f0a7836a7132cea55c67b9d15a22f941a790288438b39d455973f254205ffd1e99e6e2305430725a6a623b9a85fb95b495a9f6f912fb94825fdcd0
+DIST Sphinx-3.0.4.tar.gz 5909229 BLAKE2B 892b435642be2a6334f93d9f230ec1aeeff8cf7b374570aae66eb341614d4318125920ef0c5593e7eee64e0b8781f035635af71aac34e9c2c6eb20a07ed68d48 SHA512 ec0c2487f098f774452b58d4fb67be7850b4a54b80f2b01dcee990298f59bfede3ca43b28fa992181cdceb07f261abce186862afd75c889c6682338049db6288
+DIST Sphinx-3.1.0.tar.gz 5931678 BLAKE2B 63f9d78ea46832fc9ca7122826888abb5b8a6be55e6b3e9015a34bc4186b0544a6c5429be010622fb4794b720a6675b3a89f101446e36327819d5db07dceaa03 SHA512 8660061f3617b00eaf19655256d1b164eb24cc10c7c8016e32cd28d1f81903ef8def0c5da202066c477448f4ac6d764dbd8b1b7179edcb9d00925e35596c4714
+DIST Sphinx-3.1.1.tar.gz 5932445 BLAKE2B d98d4e1d546a60217779a071d642cef8c4b703715e212344d904fc343928afe4b21722d953afb67add0c0390633f3c2159b2235d0a5dd0148946ebfbf473c215 SHA512 0c97cab085b1d8152cefde73a7e2116e83426a1ff071c8be9b37ae8e8cf82e9abefacad2cb37a86e1754fbdf57a8dc05ee3041d7dde506fa103babb82c380293
diff --git a/dev-python/sphinx/metadata.xml b/dev-python/sphinx/metadata.xml
new file mode 100644
index 000000000000..bb5f82ab640c
--- /dev/null
+++ b/dev-python/sphinx/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <longdescription lang="en">Sphinx is a tool to create documentation for Python projects (or other documents consisting of multiple reStructuredText sources).</longdescription>
+ <upstream>
+ <remote-id type="pypi">Sphinx</remote-id>
+ </upstream>
+ <use>
+ <flag name="net">enable internet capabilities</flag>
+ </use>
+ <origin>gentoo-staging</origin>
+</pkgmetadata>
diff --git a/dev-python/sphinx/sphinx-1.7.5-r2.ebuild b/dev-python/sphinx/sphinx-1.7.5-r2.ebuild
new file mode 100644
index 000000000000..1f2aa22be731
--- /dev/null
+++ b/dev-python/sphinx/sphinx-1.7.5-r2.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{6,7,8} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="http://www.sphinx-doc.org/"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex net test"
+
+# Tests automagically use latex, bug 667414
+#REQUIRED_USE="test? ( latex )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/alabaster-0.7.9[${PYTHON_USEDEP}]
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.1.1[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.11[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.3[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.0.1-r1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.5[${PYTHON_USEDEP}]
+ >=dev-python/snowballstemmer-1.1[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/typing[${PYTHON_USEDEP}]' -2)
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+ net? (
+ >=dev-python/sqlalchemy-0.9[${PYTHON_USEDEP}]
+ >=dev-python/whoosh-2.0[${PYTHON_USEDEP}]
+ )"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' -2)
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-0.9[${PYTHON_USEDEP}]
+ >=dev-python/whoosh-2.0[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_websupport.py || die "Failed to remove web tests"
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_remote_images:_&:' tests/test_build_latex.py || die
+
+ # fails when additional sphinx themes are installed
+ sed -i -e 's:test_theme_api:_&:' tests/test_theming.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ py.test -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/sphinx/sphinx-2.0.1-r1.ebuild b/dev-python/sphinx/sphinx-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..d8b720cf8cba
--- /dev/null
+++ b/dev-python/sphinx/sphinx-2.0.1-r1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="http://www.sphinx-doc.org/"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex test"
+
+# Tests automagically use latex, bug 667414
+#REQUIRED_USE="test? ( latex )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/snowballstemmer[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-htmlhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-serializinghtml[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+ !dev-python/sphinxcontrib-websupport"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_images:_&:' tests/test_build_latex.py || die
+ sed -i -e 's:test_latex_doc:_&:' tests/test_build_latex.py || die
+
+ # requires specific locales
+ sed -i -e 's:test_babel_with_language_:_&:' tests/test_build_latex.py || die
+ sed -i -e 's:test_polyglossia_with_language_:_&:' tests/test_build_latex.py || die
+
+ # fail for unknown reasons. TODO: find out why
+ sed -i -e 's:test_build_latex_doc:_&:' tests/test_build_latex.py || die
+ rm tests/test_ext_imgconverter.py || die "Failed to remove broken test"
+
+ # fails when additional sphinx themes are installed
+ sed -i -e 's:test_theme_api:_&:' tests/test_theming.py || die
+
+ # fail under pypy3
+ sed -i -e 's:test_partialmethod:_&:' tests/test_autodoc.py || die
+ sed -i -e 's:test_partialfunction:_&:' tests/test_autodoc.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/sphinx/sphinx-2.4.4.ebuild b/dev-python/sphinx/sphinx-2.4.4.ebuild
new file mode 100644
index 000000000000..8048479c65d1
--- /dev/null
+++ b/dev-python/sphinx/sphinx-2.4.4.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="https://www.sphinx-doc.org/
+ https://github.com/sphinx-doc/sphinx"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/snowballstemmer[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-htmlhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-serializinghtml[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typed-ast[${PYTHON_USEDEP}]
+ ' python3_{6,7})
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_images:_&:' tests/test_build_latex.py || die
+
+ # fail under pypy3 (some because of missing typed-ast)
+ # revisit when pypy3 becomes pypy3.8
+ sed -i -e '/def test_partialfunction/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_typed_instance_variables/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_autodoc.py || die
+ sed -i -e '11aimport sys' \
+ -e '/def test_autodoc_typehints_signature/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_configs.py || die
+ sed -i -e '/def test_annotated_assignment_py36/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_pycode_parser.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/sphinx/sphinx-3.0.3.ebuild b/dev-python/sphinx/sphinx-3.0.3.ebuild
new file mode 100644
index 000000000000..3154c9ce95ac
--- /dev/null
+++ b/dev-python/sphinx/sphinx-3.0.3.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="https://www.sphinx-doc.org/
+ https://github.com/sphinx-doc/sphinx"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/snowballstemmer[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-htmlhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-serializinghtml[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typed-ast[${PYTHON_USEDEP}]
+ ' python3_{6,7})
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_images:_&:' tests/test_build_latex.py || die
+
+ # fail under pypy3 (some because of missing typed-ast)
+ # revisit when pypy3 becomes pypy3.8
+ sed -i -e '/def test_partialfunction/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_typed_instance_variables/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_inherited_members_None/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_cython/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_autodoc.py || die
+ sed -i -e '11aimport sys' \
+ -e '/def test_autodoc_typehints_signature/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_configs.py || die
+ sed -i -e '/def test_annotated_assignment_py36/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_pycode_parser.py || die
+
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/sphinx/sphinx-3.0.4.ebuild b/dev-python/sphinx/sphinx-3.0.4.ebuild
new file mode 100644
index 000000000000..1f6b617345ab
--- /dev/null
+++ b/dev-python/sphinx/sphinx-3.0.4.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="https://www.sphinx-doc.org/
+ https://github.com/sphinx-doc/sphinx"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/snowballstemmer[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-htmlhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-serializinghtml[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typed-ast[${PYTHON_USEDEP}]
+ ' python3_{6,7})
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+BDEPEND="
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ ${RDEPEND}
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_images:_&:' tests/test_build_latex.py || die
+
+ # fail under pypy3 (some because of missing typed-ast)
+ # revisit when pypy3 becomes pypy3.8
+ sed -i -e '/def test_partialfunction/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_typed_instance_variables/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_inherited_members_None/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_cython/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_autodoc.py || die
+ sed -i -e '11aimport sys' \
+ -e '/def test_autodoc_typehints_signature/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_configs.py || die
+ sed -i -e '/def test_annotated_assignment_py36/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_pycode_parser.py || die
+
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/sphinx/sphinx-3.1.0.ebuild b/dev-python/sphinx/sphinx-3.1.0.ebuild
new file mode 100644
index 000000000000..02e54fb7e8fd
--- /dev/null
+++ b/dev-python/sphinx/sphinx-3.1.0.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="https://www.sphinx-doc.org/
+ https://github.com/sphinx-doc/sphinx"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/snowballstemmer[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-htmlhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-serializinghtml[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typed-ast[${PYTHON_USEDEP}]
+ ' python3_{6,7})
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+BDEPEND="
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ ${RDEPEND}
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_images:_&:' tests/test_build_latex.py || die
+
+ # fail under pypy3 (some because of missing typed-ast)
+ # revisit when pypy3 becomes pypy3.8
+ sed -i -e '/def test_partialfunction/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_typed_instance_variables/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_inherited_members_None/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_cython/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_automethod_for_builtin/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc.py || die
+ sed -i -e '/import pytest/aimport sys' \
+ -e '/def test_builtin_function/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_methoddescriptor/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_wrapped_function/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_autofunction.py || die
+ sed -i -e '/import pytest/aimport sys' \
+ -e '/def test_autodoc_typehints_signature/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_configs.py || die
+ sed -i -e '/import pytest/aimport sys' \
+ -e '/def test_autosummary_generate_content_for_module/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autosummary.py || die
+ sed -i -e '/def test_annotated_assignment_py36/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_pycode_parser.py || die
+
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/sphinx/sphinx-3.1.1.ebuild b/dev-python/sphinx/sphinx-3.1.1.ebuild
new file mode 100644
index 000000000000..02e54fb7e8fd
--- /dev/null
+++ b/dev-python/sphinx/sphinx-3.1.1.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="https://www.sphinx-doc.org/
+ https://github.com/sphinx-doc/sphinx"
+SRC_URI="mirror://pypi/S/${PN^}/${P^}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+IUSE="doc latex test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/snowballstemmer[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-htmlhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-serializinghtml[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typed-ast[${PYTHON_USEDEP}]
+ ' python3_{6,7})
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+BDEPEND="
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ ${RDEPEND}
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )"
+
+S="${WORKDIR}/${P^}"
+
+python_prepare_all() {
+ # remove tests that fail due to network-sandbox
+ rm tests/test_build_linkcheck.py || die "Failed to remove web tests"
+ sed -i -e 's:test_latex_images:_&:' tests/test_build_latex.py || die
+
+ # fail under pypy3 (some because of missing typed-ast)
+ # revisit when pypy3 becomes pypy3.8
+ sed -i -e '/def test_partialfunction/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_typed_instance_variables/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_autodoc_inherited_members_None/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_cython/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_automethod_for_builtin/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc.py || die
+ sed -i -e '/import pytest/aimport sys' \
+ -e '/def test_builtin_function/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_methoddescriptor/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ -e '/def test_wrapped_function/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_autofunction.py || die
+ sed -i -e '/import pytest/aimport sys' \
+ -e '/def test_autodoc_typehints_signature/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autodoc_configs.py || die
+ sed -i -e '/import pytest/aimport sys' \
+ -e '/def test_autosummary_generate_content_for_module/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_ext_autosummary.py || die
+ sed -i -e '/def test_annotated_assignment_py36/i\
+@pytest.mark.skipif(hasattr(sys, "pypy_version_info"), reason="broken on pypy3")' \
+ tests/test_pycode_parser.py || die
+
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ # Generate the grammar. It will be caught by install somehow.
+ # Note that the tests usually do it for us. However, I don't want
+ # to trust USE=test really running all the tests, especially
+ # with FEATURES=test-fail-continue.
+ pushd "${BUILD_DIR}"/lib >/dev/null || die
+ "${EPYTHON}" -m sphinx.pycode.__init__ || die "Grammar generation failed."
+ popd >/dev/null || die
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}