summaryrefslogtreecommitdiff
path: root/dev-python/sphinx
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/sphinx')
-rw-r--r--dev-python/sphinx/Manifest12
-rw-r--r--dev-python/sphinx/sphinx-1.7.5-r1.ebuild6
-rw-r--r--dev-python/sphinx/sphinx-2.0.1-r1.ebuild2
-rw-r--r--dev-python/sphinx/sphinx-2.4.3-r1.ebuild111
-rw-r--r--dev-python/sphinx/sphinx-2.4.4.ebuild111
-rw-r--r--dev-python/sphinx/sphinx-3.0.0.ebuild115
-rw-r--r--dev-python/sphinx/sphinx-3.0.1.ebuild115
7 files changed, 466 insertions, 6 deletions
diff --git a/dev-python/sphinx/Manifest b/dev-python/sphinx/Manifest
index 3e6f59265ed9..f735170bcb5b 100644
--- a/dev-python/sphinx/Manifest
+++ b/dev-python/sphinx/Manifest
@@ -1,5 +1,13 @@
DIST Sphinx-1.7.5.tar.gz 4726802 BLAKE2B 8d828dcae1f3ebb813c5f2de8c096a3fac4ab88b424955c27592349c544b775a21703c904a54efa7f86e1967198f4950804904a82a7142a3499f33c5343506e3 SHA512 db2a8df2cdb2ed78ce2341175575c2b04a149451b2bc8a4f74ddc73e308a19d505874fdbae4e370ce48a9b1cdb4de47cdab489bc57c1b378e857d5b8d04a07b8
DIST Sphinx-2.0.1.tar.gz 6017030 BLAKE2B a446aab8c7f5a4adc93477f4f60ca975690cb4c507d6e51393a4b2c4c56563b9a12e3ea3f85d214c6bdbc7834be107384fe9029d09a73da207fd9699c4b77ab8 SHA512 28430912917a8e3eb6efe6b69268e2a5ae06795c261f2a18ef62f781e365396832c4e4bcfaad7704b1c5f840e98a9dfb82e3b438a491a13cea5c10bee66bf23b
-EBUILD sphinx-1.7.5-r1.ebuild 3274 BLAKE2B 8cb9e111804cf3ccb4119214e6e6636769bd231fcfe9ffeed590b02a93b441e7c63eafb1e70e69125833b63ee1414243844e9ea7e87f814f33c469b40f71d736 SHA512 d7ffb502c0f57d5c8efcbb10948ae1c9ae9d2f5a3d4a19c3432e9bf9aaac97e4b905918038f1f0735d0412dbfbc00171a59242ecd1cd8d7e435f1b4f839fa921
-EBUILD sphinx-2.0.1-r1.ebuild 3500 BLAKE2B 8e6034201fb89158236edfb08ec952949d1d4c895308abe34595c89a38a5bae009aeaccafe7c76825b80bd93072de9dd07f7f9f6170e73bce8b1a984646bd134 SHA512 25ecd0285c453f19cf6c297d91b57a8e73609129097589fc2d209bb1756cc56fbdc46fda00ca048b70a6b0fc6e88f9246c4417b863f29c4f9bedcd2e15df0c08
+DIST Sphinx-2.4.3.tar.gz 5711784 BLAKE2B 624bfad7bfb75f568ea28063ac909685a3f563dfff4605ea212fa53bf79b50e7743f1b642ccb1f73b899cfd33841977203ee73d7ab624d553889cd071f204535 SHA512 cafd3b185210f3f2ccab48508d3abde50178ffa30136c0302c5855780b316f976566891ad4852f246ed5ebfa95e56701ef5096ca7dc98d91f3ba4e84754c8f6e
+DIST Sphinx-2.4.4.tar.gz 5966973 BLAKE2B 727a75eb4ec33beadf80b22cdd8dda02a53f4da4aea10ee18ecae658a69a9bb797f83b0d11b41b8405bf18b2472ea7fd501bea85382c20c5f2a9d5b14a032428 SHA512 cd35b7ebdf4eb41fb3a58706333ca4328fbf9b37999ad1bcc751f9769f0a294464e4def019a403fcd2204ca963ef641c35c957a4145eb50af07573d21df8c74d
+DIST Sphinx-3.0.0.tar.gz 5903494 BLAKE2B 5183c98dad0fc05e263cbc1280f8230e6984f436cf6c19a34c51e2ef254a65b2a9fb579d3d0f77fe75f3936c6a11ffcace8bb4a24c9bb56e07629fbbfc3ba564 SHA512 7cd36eda10c13dcd16417b86c01eb361b2933836ce0a22e2728b4168356daa85f69db1b86352c3d2aa2445fa2ed77e7609ea22eb1970e93b8e25bdff52000ea3
+DIST Sphinx-3.0.1.tar.gz 5904304 BLAKE2B 95763a29ff94590d64f41fad79b6a481863b0ffc410bf6b5ddee32afd2830d015e9b737ce9bedfcfb5a92ce2e072235ededde76a0362d5dcceb0308c2ba1f21b SHA512 282d440fc8ce252f7bd91f1bac9a15b8fe1318210e2990ca5f25942d8126cab9fd257ed1fde3199dae65ea47763b21530549dfc46a18f76160b0debf426190d0
+EBUILD sphinx-1.7.5-r1.ebuild 3319 BLAKE2B f0f284deac398b44dfb6a7b64f482a40bb6703ff9bea54a71286db7951b5918164655dc5104dbcdddcb015e82c8295d5937e8f4a954922ea55e7ceb043152681 SHA512 1b81503cdac9bff7475fa86e2a6af60aa6476026072b93178ef646c84bec0c133ffd747a65f1b10d43050db24f6453c20c15f20413fc351e17da4f9984f0d643
+EBUILD sphinx-2.0.1-r1.ebuild 3496 BLAKE2B 0cb79ef7e7b65057e452b4cca2bc88e128dc79ec7d0cbd3b82f8c788618f5306d7f55edf3e467ce57e3d9b6b7f5e855d9d3626eb0af382d45b6d49cff60c156d SHA512 9ea3489bce3d1062b96de85fb4f6b0f488711cf4f1ccfce7057c5ce55bf9d5ebd3a4e26f68dcc1bf20b003e7caa323e8015ec1c68d6a2a102098c1292f12ffc4
+EBUILD sphinx-2.4.3-r1.ebuild 3667 BLAKE2B fc4b29f7206249c01b1cfd722fd459909baaefff50510109018292aea2ccda2bf2dd017e12ff1f73e214dae369058392e7b081bee816e6f44d9488796063962f SHA512 9256e1e85a57a795bdc64e7e6fc5410083aeae87a74dc3c18cd08ab39d52fe4d9aa51dcab18b171bdb95f80664d0402e5ab921f77a93ae033d67892a5f9bf857
+EBUILD sphinx-2.4.4.ebuild 3667 BLAKE2B fc4b29f7206249c01b1cfd722fd459909baaefff50510109018292aea2ccda2bf2dd017e12ff1f73e214dae369058392e7b081bee816e6f44d9488796063962f SHA512 9256e1e85a57a795bdc64e7e6fc5410083aeae87a74dc3c18cd08ab39d52fe4d9aa51dcab18b171bdb95f80664d0402e5ab921f77a93ae033d67892a5f9bf857
+EBUILD sphinx-3.0.0.ebuild 3911 BLAKE2B fac5d435ebb1681ea9e5fe5f9d52285bb26fcd88424e19e6c8431ab986c7d357a8e53edfdbc944029828fcb6fc17ab9b2221b4570a1e5830c62aa8e856fae82a SHA512 dc4b28c9479151edb2baba18e7930c0abb7816ab777456ecd1743a459112efa4b0e391f2b8e30d8f889abeb57efac9600abb521dfa01f6a4eaabf8fb04b39d22
+EBUILD sphinx-3.0.1.ebuild 3911 BLAKE2B fac5d435ebb1681ea9e5fe5f9d52285bb26fcd88424e19e6c8431ab986c7d357a8e53edfdbc944029828fcb6fc17ab9b2221b4570a1e5830c62aa8e856fae82a SHA512 dc4b28c9479151edb2baba18e7930c0abb7816ab777456ecd1743a459112efa4b0e391f2b8e30d8f889abeb57efac9600abb521dfa01f6a4eaabf8fb04b39d22
MISC metadata.xml 556 BLAKE2B a2689efbe3d569fa878296875f4145fdb4d83b4c4821aa636d4006b1823e5646b9cebd5341b4bc02de30985191b83461363cc892aca638e678f86a6e314dcef3 SHA512 bff6813bf9c5110c2e4f5764f911309325923cb58300c19c079d1e6de3d6c4c0bcaf4e206fa4bc11ebf54b961c7e09217310b5647029350d4f9602da6325db0c
diff --git a/dev-python/sphinx/sphinx-1.7.5-r1.ebuild b/dev-python/sphinx/sphinx-1.7.5-r1.ebuild
index acb0ed9348c4..1fa175f98d3a 100644
--- a/dev-python/sphinx/sphinx-1.7.5-r1.ebuild
+++ b/dev-python/sphinx/sphinx-1.7.5-r1.ebuild
@@ -14,7 +14,7 @@ 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 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+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
@@ -36,7 +36,7 @@ RDEPEND="
<dev-python/sphinx_rtd_theme-2.0[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
- virtual/python-typing[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/typing[${PYTHON_USEDEP}]' -2)
latex? (
dev-texlive/texlive-latexextra
dev-texlive/texlive-luatex
@@ -49,6 +49,7 @@ RDEPEND="
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}]
@@ -57,7 +58,6 @@ DEPEND="${RDEPEND}
>=dev-python/sqlalchemy-0.9[${PYTHON_USEDEP}]
>=dev-python/whoosh-2.0[${PYTHON_USEDEP}]
virtual/imagemagick-tools[jpeg,png,svg]
- virtual/python-enum34[${PYTHON_USEDEP}]
dev-texlive/texlive-latexextra
dev-texlive/texlive-luatex
app-text/dvipng
diff --git a/dev-python/sphinx/sphinx-2.0.1-r1.ebuild b/dev-python/sphinx/sphinx-2.0.1-r1.ebuild
index 3d4f0e641fc9..e3f1dcf72370 100644
--- a/dev-python/sphinx/sphinx-2.0.1-r1.ebuild
+++ b/dev-python/sphinx/sphinx-2.0.1-r1.ebuild
@@ -14,7 +14,7 @@ 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 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+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
diff --git a/dev-python/sphinx/sphinx-2.4.3-r1.ebuild b/dev-python/sphinx/sphinx-2.4.3-r1.ebuild
new file mode 100644
index 000000000000..f237709f572a
--- /dev/null
+++ b/dev-python/sphinx/sphinx-2.4.3-r1.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/sphinx_rtd_theme[${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-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-2.4.4.ebuild b/dev-python/sphinx/sphinx-2.4.4.ebuild
new file mode 100644
index 000000000000..f237709f572a
--- /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/sphinx_rtd_theme[${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-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.0.ebuild b/dev-python/sphinx/sphinx-3.0.0.ebuild
new file mode 100644
index 000000000000..1a71657e2863
--- /dev/null
+++ b/dev-python/sphinx/sphinx-3.0.0.ebuild
@@ -0,0 +1,115 @@
+# 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/sphinx_rtd_theme[${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-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
+
+ 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.1.ebuild b/dev-python/sphinx/sphinx-3.0.1.ebuild
new file mode 100644
index 000000000000..1a71657e2863
--- /dev/null
+++ b/dev-python/sphinx/sphinx-3.0.1.ebuild
@@ -0,0 +1,115 @@
+# 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/sphinx_rtd_theme[${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-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
+
+ 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}"
+}