summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Manifest.gzbin262066 -> 262064 bytes
-rw-r--r--dev-python/cairocffi/Manifest2
-rw-r--r--dev-python/cairocffi/cairocffi-1.4.0.ebuild46
-rw-r--r--dev-python/contourpy/Manifest2
-rw-r--r--dev-python/contourpy/contourpy-1.0.5.ebuild2
-rw-r--r--dev-python/nuitka/Manifest2
-rw-r--r--dev-python/nuitka/nuitka-1.0.8.ebuild49
-rw-r--r--dev-python/rq/Manifest2
-rw-r--r--dev-python/rq/rq-1.11.1.ebuild60
-rw-r--r--dev-python/sphinx/Manifest2
-rw-r--r--dev-python/sphinx/sphinx-5.2.0.ebuild125
11 files changed, 290 insertions, 2 deletions
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 21b55458fd68..0fbd09c2407d 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/cairocffi/Manifest b/dev-python/cairocffi/Manifest
index b815b6c85341..e63f8cf21ebb 100644
--- a/dev-python/cairocffi/Manifest
+++ b/dev-python/cairocffi/Manifest
@@ -1,4 +1,6 @@
AUX cairocffi-0.8.0-tests.patch 827 BLAKE2B 81e1228f054ccb46b6c3170319fbd47aead8bdbb0b7af8e60cf85391c673d86e3eb1218a393c9b454d3d94b88968421ed9f3d798cc1d28ba7510bc75ad3ec261 SHA512 3fc7c2785586f88b17864931528e8c8e25792855107e5e8b76aa79a198303b68bd8cc822a2a5ff7a646c9f11982a3b5992a9eeb3bd651bbde1792d13a1410021
DIST cairocffi-1.3.0.tar.gz 88784 BLAKE2B 022634825febd3d70a0115f0632e9b146719a2ab802583e0f57ebbd36c65c9e73f4547dbc5ea3651b8b38a043d519f000e908c34b77f3bf49e2ed5ded1a0ca02 SHA512 be459a5f4c1986cf339b7b15fdb7d3ac52476c8c31ff663b4708917ce8abd6fc66860d1966744b69aebf7aebca4415b32166df79505ad42f315ffd76d7163d7e
+DIST cairocffi-1.4.0.tar.gz 69851 BLAKE2B 8037d9bc619d2e96e655dc4682bb95a1e920d0b2188963088c1be21f2e157f7e791f3994f0ae7ecd338547baf2a65d03b175398bc1b3c92145ae6ea148420b5a SHA512 7ffdaf365c1251b202e2680a2f689ec6ea04c19eb75df38137624ffeb429ab61c6f54af450aec019b2570a4e91d2d701328109e4e0f5662a3b3b655ab53705ff
EBUILD cairocffi-1.3.0.ebuild 937 BLAKE2B 1cf24a61eac110115d77194b2d22e6d747f415b066d73faaa8509c7cf941f8bb4a5b2562b10b139c9fa47713e6c844c210ed9d1c6313752ca729f104a9d6d8f5 SHA512 b5d253eafaef2725400374b741a44d243b341cfe0d74fb48724acffefc474f06c06ffc5ebaebbad29d4b2ec100545a67c44c419860ddcf8679113d246744cade
+EBUILD cairocffi-1.4.0.ebuild 904 BLAKE2B a309cf8a4c2430d769df1256c423825214b603bc5ba202e9a49ae7aefbc74d342c797679ea45b626836a16e64a2748670c1f9b319b91a828d1be38ee81bb0c6d SHA512 ed93a6f05f6d60114d03cbedafbb3f64b8d86a3fc32615c33c90e390edbdfcf97fdf7c8675d05bc9deb9b59dec47bad80f3d42729a91b98d7194c4f98b9aeffe
MISC metadata.xml 380 BLAKE2B e489f8f463877335d35d1ccd7b04247ff92e5bddeffd36d42a4d8d45f3d48962d704c4a2701b8df91bb38182ada14e19ec6f97c58250f7a9881728cfa319ee15 SHA512 d64dde8aa97fa923c5b13f23539774ebcf02d5ea14b50e01e98c6a3e2f63316ab08a235613fe4bedfc496dd7ffacc2f6e41ea5a2fad310b341ad3ac254b2a522
diff --git a/dev-python/cairocffi/cairocffi-1.4.0.ebuild b/dev-python/cairocffi/cairocffi-1.4.0.ebuild
new file mode 100644
index 000000000000..10ddec84c6e3
--- /dev/null
+++ b/dev-python/cairocffi/cairocffi-1.4.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="CFFI-based drop-in replacement for Pycairo"
+HOMEPAGE="
+ https://github.com/Kozea/cairocffi/
+ https://pypi.org/project/cairocffi/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}]
+ ' 'python*')
+ >=dev-python/xcffib-0.3.2[${PYTHON_USEDEP}]
+ x11-libs/cairo:0=[X,xcb(+)]
+ x11-libs/gdk-pixbuf[jpeg]
+"
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pikepdf[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.8.0-tests.patch
+)
+
+src_test() {
+ rm -r cairocffi || die
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/contourpy/Manifest b/dev-python/contourpy/Manifest
index e6dbd8b46332..c3b336c26436 100644
--- a/dev-python/contourpy/Manifest
+++ b/dev-python/contourpy/Manifest
@@ -1,3 +1,3 @@
DIST contourpy-1.0.5.gh.tar.gz 12153420 BLAKE2B 1b3899831938c114480606f0c2ef2962248721884cd2be727f2bd11d12d322e7652c7b63860f4c5d8bd039a7e838f3f360dd1af017219caa97dfc63d69ef7e19 SHA512 47dc08f02920cb0ffc081f313dd041fa36e2fd0a81530374ae77adc288af13cf2c526fc1f45d06ef1c256c4c8fe243e0b36b54d3fff7d4f8bd6f9f4938d3c805
-EBUILD contourpy-1.0.5.ebuild 1008 BLAKE2B c8624b30bc1be86de01fad3fb5ab7d335c90bb2e7172ba4a9715dc5c2738730d26be70fecf7a8ce95269017e6be3dca1a1a6e0e02680473b8f880c0a7580dbcc SHA512 45b4c11631bdc03deaa46b4bdc846adaad5bc9db59f070ab5e710c6fedd70be65a778512dc7228d54939a27ad46c050fc7bdd480af01593ee0646ef59acf7aab
+EBUILD contourpy-1.0.5.ebuild 1015 BLAKE2B 654848108b4f15fd1c57a1eba1bf6840d76044b8e62b14d631a07de5d61e4a29a0ebced4b48c32ba98b6e99bde875b4846aa2ee3431bb8e2c07c140676ece909 SHA512 77d842b25c799b05ee3b85ec0227302e8dee7eb8c5de3eb13f67068073cad925d748af8370316c119ac58d127998456c88ad0536c462d36e91987bae3c446a27
MISC metadata.xml 372 BLAKE2B de3d6cc9d8727bf43be63fdbb8aa2ad375667d189019e189be262e39d028acab98a21e200798c2d5c5c72521aa7d38202e3e235dd44de9b43a7dc9e045d50c47 SHA512 e692f94d805d7f56fc895a4c76dfbacf2f068d687b9191482b946445baa3bd0a685eda7a1b0aec2aaf9a02e6f23d87f0bf22d90f42e3c21d930724c635ff859a
diff --git a/dev-python/contourpy/contourpy-1.0.5.ebuild b/dev-python/contourpy/contourpy-1.0.5.ebuild
index 9ccea39952a2..a92be2ca0384 100644
--- a/dev-python/contourpy/contourpy-1.0.5.ebuild
+++ b/dev-python/contourpy/contourpy-1.0.5.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~riscv"
RDEPEND="
>=dev-python/numpy-1.16[${PYTHON_USEDEP}]
diff --git a/dev-python/nuitka/Manifest b/dev-python/nuitka/Manifest
index b3703c744a0e..f854143c0af1 100644
--- a/dev-python/nuitka/Manifest
+++ b/dev-python/nuitka/Manifest
@@ -1,5 +1,7 @@
DIST Nuitka-1.0.6.tar.gz 3890331 BLAKE2B 4a8240123b61ff7c8ec274e6c318ade2b5057f56b0b766f1a555451f501a194c137696bd51dff23bdd125e1ffa3679f790e3ad50b9c15e85ba5358f56d47b34f SHA512 f431c976b28b80ad10cdbc27c8f0d3321aadace08a104d18089c38d00b80ee96fd3aa051dd50eb668ed57f6aca25e4f918f07d065df00627c139bc34afdcb52c
DIST Nuitka-1.0.7.tar.gz 3891250 BLAKE2B 6f401de98bae91688d0ceab210d178fdb8d2cb32beeb7dd6925eee7985d0e344e41edcaddbdff8313402625d40dc7236433f52ca71f1100a1168775b9bc3da8b SHA512 29cb7377c976f59d8ea49aedd74798ee11b38b98b597611bd41bd5bef5c2473cd76bb260f764afd277edc4b5bfb8359b995a532ba4814f1d2310fa9c90d1467d
+DIST Nuitka-1.0.8.tar.gz 3890590 BLAKE2B 04257834d79f0988800a06d9b4725e9fa694bf7f9aafebbfb9ddbb09a2a5f666c02f13bf8ee56fd3360216faa31cd7b14a30d9a2daf23eef719ed568bfd3501c SHA512 824830121ca87b33aebcee074e0af52e456942190168186248a9ed62937bb044c6741ff721bd4bcd7d657cae96d573c1a6b9cb1fde6374073c12c1e1f6a6df26
EBUILD nuitka-1.0.6.ebuild 1140 BLAKE2B 0f839fb78068157dccbf22121b2ecceb056e1462a5f7c8ce7c7d28116e390ec618b02f42f8f67dbaf3b345f04d519b0214bbdbdfe03b8c0e7594366a7a6911ea SHA512 ecbf3874813e37fd078cd5900a53b28e4686ab913b00867a0817ebeb7ea21f2c9d9fa712993ae7fc8eb26d9e31d375bff729135b432693700ce4e31fe42e631f
EBUILD nuitka-1.0.7.ebuild 1140 BLAKE2B 0f839fb78068157dccbf22121b2ecceb056e1462a5f7c8ce7c7d28116e390ec618b02f42f8f67dbaf3b345f04d519b0214bbdbdfe03b8c0e7594366a7a6911ea SHA512 ecbf3874813e37fd078cd5900a53b28e4686ab913b00867a0817ebeb7ea21f2c9d9fa712993ae7fc8eb26d9e31d375bff729135b432693700ce4e31fe42e631f
+EBUILD nuitka-1.0.8.ebuild 1140 BLAKE2B 0f839fb78068157dccbf22121b2ecceb056e1462a5f7c8ce7c7d28116e390ec618b02f42f8f67dbaf3b345f04d519b0214bbdbdfe03b8c0e7594366a7a6911ea SHA512 ecbf3874813e37fd078cd5900a53b28e4686ab913b00867a0817ebeb7ea21f2c9d9fa712993ae7fc8eb26d9e31d375bff729135b432693700ce4e31fe42e631f
MISC metadata.xml 943 BLAKE2B d7ab883773e7480dcfb4b79932a3874e2274669169a24a54aa622a2a0ac079e0296da4bd196d166cb11fcff785985da0b10d0fae351032914ccf312c9bb9833c SHA512 625d8760b8e849c6e014856f584cb42f50bb5ebb1fa648cb704a5a1baf175e7d2ce9f43f6f724d11c81a68e364b6ac1c38459540b58f2ccd6a675902af5b1cc9
diff --git a/dev-python/nuitka/nuitka-1.0.8.ebuild b/dev-python/nuitka/nuitka-1.0.8.ebuild
new file mode 100644
index 000000000000..5b987e13729d
--- /dev/null
+++ b/dev-python/nuitka/nuitka-1.0.8.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit distutils-r1 flag-o-matic optfeature
+
+DESCRIPTION="Python to native compiler"
+HOMEPAGE="https://www.nuitka.net"
+SRC_URI="https://nuitka.net/releases/${P^}.tar.gz"
+S="${WORKDIR}/${P^}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-util/scons[${PYTHON_USEDEP}]"
+BDEPEND="
+ ${RDEPEND}
+ test? ( dev-util/ccache )
+"
+
+DOCS=( Changelog.pdf Developer_Manual.pdf README.pdf )
+
+distutils-r1_src_prepare() {
+ # remove vendored version of SCons that is Python2 only
+ # this should be removed when upstream removes support for Python2
+ rm -vR "${PN}/build/inline_copy/lib/scons-2.3.2/SCons" || die
+ eapply_user
+}
+
+python_install() {
+ distutils-r1_python_install
+ doman doc/nuitka3.1 doc/nuitka3-run.1
+}
+
+python_test() {
+ append-ldflags -Wl,--no-warn-search-mismatch
+ ./tests/basics/run_all.py search || die
+}
+
+pkg_postinst() {
+ optfeature "support for stand-alone executables" app-admin/chrpath
+}
diff --git a/dev-python/rq/Manifest b/dev-python/rq/Manifest
index 13bb632278a9..829cc2186b03 100644
--- a/dev-python/rq/Manifest
+++ b/dev-python/rq/Manifest
@@ -1,3 +1,5 @@
+DIST rq-1.11.1.gh.tar.gz 604043 BLAKE2B 57169a50fe9c2724c4e61a23e4d73d23af6aae241276dac414d2a065675e64bdd1fd35500903e7c276345a0a713a87dc7642894cdb887f019e82606fa668eba3 SHA512 ce5a2bf1fb2757d248704461ef9b631443610a11fa1c832e8aad62e68812d478c51e7bbd0d1ed4a9af678d3a9c85067e1cf16547653851ffb8c19e36b97ba945
DIST rq-1.11.gh.tar.gz 603425 BLAKE2B f6295e1d7ddbe229001076b8ca04f0f8c323eed988a7963449c2240cbc6168d48539297c16e1ce95f7ec2b8824e6f65fc1e026e76a6093e73c06dd1b847d1c5b SHA512 6e208f4c1c8c55f5847843d7933f17d2fae58e2b24cf1461fddba08894a860f8bcb55aac5c6840f2d9223b88538070c414e2e540e9bc846cef05a26b0ef38ffb
+EBUILD rq-1.11.1.ebuild 1408 BLAKE2B abf3f5364d9fa86144f600c584c89f3155fb417718ae20571e1948e8348c6ef89307a6cfab8e0962b5171f6682921363a67af5dc7a2aa4274023641575721115 SHA512 708718d2487eba1e660e6fc041a85506f364d4263ddcc47b472f389b7d92ff3936f1244d6604e1f256429d174ca3b5572c58e464662d4311af16e50517e634cb
EBUILD rq-1.11.ebuild 1371 BLAKE2B 3fcee646908865ea25633787fc3ab2aec1a74f7ff74641405b907e2022d549bbe41d524c34f5de419c979487ca8ef92ac4623f0aaa6561d71ed28643a69f3db3 SHA512 8292eb24a5aebeefec61da1855f6905293f0cf16416f2fe3193ba8523ed04276f0d645d9b946c3e853d6f754568988a1544a1954fd7a7f316f5f275123e510f3
MISC metadata.xml 453 BLAKE2B 6a46d43b524fded1ad4749fb9669ea07f8b3e23940d0bf2a4db5d92564316b01fdfbe220771e30b1a110ef72c613ad683cdcb7940682ea32198a5b6f027e4db3 SHA512 104ef96c34b55a9fda377c1304ff85781219fdbccef1a83d1bef30cb2fbd0ef816cfe82715af8937f452499135f7ed65c65a29c34919a09b6144ada367c26af5
diff --git a/dev-python/rq/rq-1.11.1.ebuild b/dev-python/rq/rq-1.11.1.ebuild
new file mode 100644
index 000000000000..f88cc4b6eac4
--- /dev/null
+++ b/dev-python/rq/rq-1.11.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit distutils-r1
+
+DESCRIPTION="simple, lightweight library for creating and processing background jobs"
+HOMEPAGE="
+ https://python-rq.org/
+ https://github.com/rq/rq/
+ https://pypi.org/project/rq/
+"
+SRC_URI="
+ https://github.com/rq/rq/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/click-5.0[${PYTHON_USEDEP}]
+ >=dev-python/redis-py-3.5.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/sentry-sdk[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+ local redis_test_config="daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ "
+
+ # Spawn Redis itself for testing purposes
+ # NOTE: On sam@'s machine, spawning Redis can hang in the sandbox.
+ # I'm not restricting tests yet because this doesn't happen for anyone else AFAICT.
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ /usr/sbin/redis-server - <<< "${redis_test_config}" || die
+
+ # Run the actual tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/sphinx/Manifest b/dev-python/sphinx/Manifest
index 2d3f520ce3f1..ed88004394ed 100644
--- a/dev-python/sphinx/Manifest
+++ b/dev-python/sphinx/Manifest
@@ -2,6 +2,8 @@ AUX sphinx-3.2.1-doc-link.patch 604 BLAKE2B f23f8f9a0a48b170e2b6daaeded1e65aebe8
AUX sphinx-4.3.2-doc-link.patch 745 BLAKE2B 94f190d63168be99c4719a917f0a1210c56284c278c3909d9de34a319b4d5afa2337133509c06f87e53d5ae488efd88b0f79542719e8870c137f160732c25189 SHA512 aed97412a49212856ea6ccb392c2aa210862ec25d49c4b81a7ff17bd2d0cfe4811d80f4047622f7b23473e31aad968c34098b590045c1d0592b19f4cb6ec8b3c
DIST Sphinx-4.5.0.tar.gz 6698212 BLAKE2B e6c46d35492c3d3068c4f97e497d33973ca86b40934578804fcec901fa89d2c52b45a7546b835b873846dd16936c1bd34a7b053aec8206c688d974671155fd56 SHA512 b44d2a81ed67adaefe16a07ae0cf053b5e6c775023aaa6c57d7b3950f171deac410e8004f787b151c3c2fc350650aa69a4dc2dc7239d1fd3d351e5194617cb2c
DIST sphinx-5.1.1.gh.tar.gz 6766329 BLAKE2B ff385abe35d4a700cbb3cd8acc72313f7c923d48b38934cc35ea6128ef6c16eb6a33604daea25f81f60b65951b4623f62cd4c1a482b2c5e7285ce0ddb6226c80 SHA512 23261cabbcc73072134c22e7fb36f4c7911f4284cea9cc7be6006e500d9de65727f43214fb4427d307845cc684b9a569960ed276320855283a33b9542a2a6918
+DIST sphinx-5.2.0.gh.tar.gz 6777631 BLAKE2B 53514f0561a53e656f15f434f79a2e2a6c0b41989bbc98f8c7e3e0548ab180339d2908827a933124576dacbed76db7e519ee1e626597a3f50900a90cb8b1c23b SHA512 480c288cd9bf3c1bc61aa97fc4549dd6f0c3d23c2fb5cc5f15a20780984c518f50638a42a87b9c2c0b4eb24ef57e6cfbd812a82a9227ae439028a0fdd5f165a7
EBUILD sphinx-4.5.0-r1.ebuild 4293 BLAKE2B 4bef871b4129b6048a45ca8bf8752a45543191caf84c18e80d826fc8d8c87c012cae76279ec25c9656b5e2e5f3801f15744e122d187514f1a41638efcca794b9 SHA512 331f455811a822b44a398eca904857fc6db2f91f447468029a855d87a5d72378caf9e504cd168511e24896425820c833c5cc10c6dfac005f952471f5808c1d80
EBUILD sphinx-5.1.1.ebuild 3952 BLAKE2B bb5c2275de2ab18a564e742d5a1110d5d3c3b42c9892826eaed7cc421260e9bb7006e3bd43025882d92a93d57ff3b838745f544d44ca241bc46ae0e7d128542d SHA512 b1b476e9fe5c9e0159373e4149d807a8ae55117d82e381f29b64ec7d238c63c34585d0c045ed3e0da35dd7b822541d9a8827de65fda72cb936f9ce5e051a4e8c
+EBUILD sphinx-5.2.0.ebuild 4006 BLAKE2B d89b7360a35d2a40f5f4a9e077173bbbba98e46c40dd443f90bbc31cabc4b76284e1068d54ce33c0f628973c623d2c3af67541edbd8bcfe3b01254384e27a0f2 SHA512 4eb42fc2bc1ef23ac95d0c77ce5cbdeafd789c16e5005e173797ced0c5fcb8aa31b2866cf7926c40d5907b8806d750ba1a88842b6549b604d5194a8972a7c7af
MISC metadata.xml 568 BLAKE2B ddb7175070df6da4088813cc6b66f25bb4364e2619b1e7da94370f7ce8e73b68b12f618412f81e6be57fcb0c60c10e3913f26a6a578b0f9defa7b9ee8091fcde SHA512 d32b37cbe88f5e3db0c6968bc7aa22c7edfb3794bf7c62facd17e7ae1f4f0fbfc7c9f5512230cce16ed32e2ebb70c23dfe9b36ce38785c5f5b76585410313214
diff --git a/dev-python/sphinx/sphinx-5.2.0.ebuild b/dev-python/sphinx/sphinx-5.2.0.ebuild
new file mode 100644
index 000000000000..46163127e936
--- /dev/null
+++ b/dev-python/sphinx/sphinx-5.2.0.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8..11} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+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
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+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.8[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.9[${PYTHON_USEDEP}]
+ <dev-python/docutils-0.20[${PYTHON_USEDEP}]
+ >=dev-python/imagesize-1.3[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.12[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/snowballstemmer-2.0[${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.5[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ >=dev-python/packaging-21.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/importlib_metadata-4.8[${PYTHON_USEDEP}]
+ ' 3.8 3.9)
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+ !dev-python/namespace-sphinxcontrib
+"
+BDEPEND="
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ app-text/dvipng
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/html5lib[${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() {
+ 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"
+
+ local EPYTEST_DESELECT=(
+ # these tests require Internet access
+ tests/test_build_latex.py::test_latex_images
+ tests/test_build_linkcheck.py::test_defaults
+ tests/test_build_linkcheck.py::test_defaults_json
+ tests/test_build_linkcheck.py::test_anchors_ignored
+ # TODO
+ tests/test_ext_autodoc_autoclass.py::test_classes
+ tests/test_ext_autodoc_autofunction.py::test_classes
+ tests/test_ext_inheritance_diagram.py::test_import_classes
+ )
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ tests/test_ext_autodoc.py::test_autodoc_inherited_members_None
+ tests/test_ext_autodoc.py::test_automethod_for_builtin
+ tests/test_ext_autodoc.py::test_cython
+ tests/test_ext_autodoc.py::test_partialfunction
+ tests/test_ext_autodoc_autoclass.py::test_autodoc_process_bases
+ tests/test_ext_autodoc_autoclass.py::test_show_inheritance_for_decendants_of_generic_type
+ tests/test_ext_autodoc_autoclass.py::test_show_inheritance_for_subclass_of_generic_type
+ tests/test_ext_autodoc_autofunction.py::test_builtin_function
+ tests/test_ext_autodoc_autofunction.py::test_methoddescriptor
+ tests/test_ext_autodoc_automodule.py::test_automodule_inherited_members
+ tests/test_ext_autosummary.py::test_autosummary_generate_content_for_module
+ tests/test_ext_autosummary.py::test_autosummary_generate_content_for_module_skipped
+ tests/test_util_inspect.py::test_isattributedescriptor
+ tests/test_util_typing.py::test_stringify_type_hints_pep_585
+ )
+
+ epytest
+}