diff options
| author | mirror@stealer.net <mirror@stealer.net> | 2026-03-28 06:00:20 +0000 |
|---|---|---|
| committer | mirror@stealer.net <mirror@stealer.net> | 2026-03-28 06:00:20 +0000 |
| commit | b4ad54ef630978c83b1517dfdec7a66567717308 (patch) | |
| tree | 5da09fd971e43652a26a603796eec32891933b0f /dev-python/ipython | |
| parent | 98cb9b94e366edd592fbc05521f3d7428af377b4 (diff) | |
2026-03-28 05:37:57+00:00
Diffstat (limited to 'dev-python/ipython')
| -rw-r--r-- | dev-python/ipython/Manifest | 3 | ||||
| -rw-r--r-- | dev-python/ipython/ipython-9.12.0.ebuild | 157 |
2 files changed, 160 insertions, 0 deletions
diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest index 2f3eae75af..b45f4a0d41 100644 --- a/dev-python/ipython/Manifest +++ b/dev-python/ipython/Manifest @@ -2,9 +2,12 @@ DIST ipython-9.10.0.tar.gz 4426526 BLAKE2B 0b7e4f370bce45fe9703ae27872217e4a04cc DIST ipython-9.10.0.tar.gz.provenance 9575 BLAKE2B 2041c8b06c8e896ccb6e6c0fcea9c3708229b35472dec88f3d00b4445095b5e804d48e88357608ea951ae795b37e2007e0f51aaf26b66ef7923dd6ead6fe0935 SHA512 ab56e0f6897fdf00c2d18e630a48ddaec3caeb4670690c8c7607d4384e42fe841e37d644cb68a7c9875620bf40c23590d41409fc92eda0e1ec415b61c69b6435 DIST ipython-9.11.0.tar.gz 4427354 BLAKE2B 37d8bc4ac85becce0d1ef1da42bc4cf4fb021b6fb200fe9c735d408e9b044371f020af4dd915546196b3baef55d6eba81267fd35f3914b2e16b115b0d64a1394 SHA512 9ac8f20b7f644c8c0c87673da4e549a54721a0204ab73d1075315d5d222323daf4b3e627e3fafef60f3274cf6e5edbc33e7c7bb1c593af477abad825b2cfe2fe DIST ipython-9.11.0.tar.gz.provenance 9388 BLAKE2B 1e2d8a8d1af398f252508959a622eba27ab4d4b88c31d359c9734aeaf750b180e0a7d1ca541047cdad16c4f909bed2969dfee8536ba315c113bb9cdeb92116a0 SHA512 a264c29635b73430b869fd83a080958ad61bc30bc989ef9d109f2a5217dedbec579f735567daac23b853c13b2a5691872cccebf1169c31d4586390c3458b2b84 +DIST ipython-9.12.0.tar.gz 4428879 BLAKE2B 288a8b0b3c10c8b6bcc39378c830845611da223ad452114b5c3a8b6c5152007689725897aa852e7e3f11af43113315303a6859e3a8ac29a125b62a712cff9549 SHA512 142d5f994df287f09904ba1582c75336dd375947b92c6b39eeeb41578e6b1c1b8aaa06f36972dda9cf1435be29cc96feb8ed5a6ba0baf4fc14b21525ff04efcc +DIST ipython-9.12.0.tar.gz.provenance 9426 BLAKE2B 2b46d1c0724fa300a77f9907fbc9d7aeef058e16532e27394d411c5cdcc328cdb9b19502dceee7e27f9cc008ec84ea2a4aa89e3ed186cca796147eef311705f4 SHA512 b999d9f8054eaaa760cfe0b0dd90ff17697dc2ecda7e7685c008fd0826448b56720e76f89029d56784117ebc8c9c4034463c3af43a26dbc396f7309d4e080fe1 DIST ipython-9.9.0.tar.gz 4425043 BLAKE2B 8bd87dbad423722ff878875651fa263be2bae2fcabafb03a9e7e7125c2d350ead453187f370c978067509a7433a007757dc0b79d18f376bbe683bc9b9dc3746b SHA512 f381764a71f73b2b565996565d26d43c587c9cd21e9286c317950b3ee3a41fb9f2fc79022e5c99560f39e90e7bcfb166f54cfbe0113f0b36523578cf6aaaca8b DIST ipython-9.9.0.tar.gz.provenance 9253 BLAKE2B 6d989e199d4f6afb9fa7b6f3d3c249cfdc7c86f289a907808e5b2f13a723a43c28f1284f582c7fde2c1f1e9279c9a6dbf9caacae994e9d580d4e8a90a7bbe73c SHA512 70bf51ed1a544c867e21711af0e5602d33e1d6505d9ef3295dcdb5253ad3d456f49cfb2e9de2d9a92117a52642f2cf26ea9eca790f67f0824e9d7a0f8175a845 EBUILD ipython-9.10.0.ebuild 4655 BLAKE2B 65e405c66e4fe8754fe459d6ab2acc0140355cd00c856c40d3c36af6c19fea4619de252f1144a4a47c9e20f3ce186eb1e2fad77d32e0e7df085181b216e0e1c9 SHA512 3289f506a7c4d3ebde5a70a3aa5d9ee80d7dc564d9dce4588cb4796736b24ae0b5bbff6b96fa813664d935245bd5d5e1976ebbf71639f0937a16940b20b79671 EBUILD ipython-9.11.0.ebuild 4591 BLAKE2B 86296765bdd6124cf26050c1f7643cab88f9fa0b40b024c4dcac8e8f32cacd85272ec53e624dc717c85481da7a4f50a007ff4f3c976cb6f7ee29666b36426a89 SHA512 d961448c458c6c5a9cd15b33e0cccdc5ca1b8c2a93df9246d28b3a85a51a48d1419755728f6a884af2c55f2e29a86eee7b6074c170f8382cd76704a0f1fef976 +EBUILD ipython-9.12.0.ebuild 4591 BLAKE2B 86296765bdd6124cf26050c1f7643cab88f9fa0b40b024c4dcac8e8f32cacd85272ec53e624dc717c85481da7a4f50a007ff4f3c976cb6f7ee29666b36426a89 SHA512 d961448c458c6c5a9cd15b33e0cccdc5ca1b8c2a93df9246d28b3a85a51a48d1419755728f6a884af2c55f2e29a86eee7b6074c170f8382cd76704a0f1fef976 EBUILD ipython-9.9.0.ebuild 4649 BLAKE2B 3ef18dfb0a2934d2f67039c3a841e3e1121ef0b91e8116b1493adb749f00afb8b1b6bc3213847571fd1cca47beb56ed10527fb6e598b412f78969a4718919a46 SHA512 4cabe073a748b61587a55cf16a53d8b0c4cd821c7eb54765e6eaf49de8d142afda7201357059fd1df19e70f751b5d57b0d5f0b5e15788ecd21e4b684886f3458 MISC metadata.xml 2802 BLAKE2B 2fb6773ad4ef10d531f978e3ed40f6d99cf1586ec6d7cf2bf7e60fd5d640d082a0946651e0a066993320ffeaace3426066ca24c325926b62125ae91816707128 SHA512 965c3e36e05475d9454af8219b84e080d4c83d775f8a7e20a4951a82246d672c46fd3cb1fff5f8664d0ce8e8fcb846de6f15abc4575db3a6b7d87209194bcecc diff --git a/dev-python/ipython/ipython-9.12.0.ebuild b/dev-python/ipython/ipython-9.12.0.ebuild new file mode 100644 index 0000000000..7fa07c63ca --- /dev/null +++ b/dev-python/ipython/ipython-9.12.0.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_VERIFY_REPO=https://github.com/ipython/ipython +PYTHON_COMPAT=( python3_{12..14} ) +PYTHON_REQ_USE='readline(+),sqlite,threads(+)' + +inherit distutils-r1 optfeature toolchain-funcs pypi virtualx + +DESCRIPTION="Advanced interactive shell for Python" +HOMEPAGE=" + https://ipython.org/ + https://github.com/ipython/ipython/ + https://pypi.org/project/ipython/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="examples gui notebook nbconvert +smp test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/decorator-5.1.0[${PYTHON_USEDEP}] + >=dev-python/ipython-pygments-lexers-1.0.0[${PYTHON_USEDEP}] + >=dev-python/jedi-0.18.2[${PYTHON_USEDEP}] + >=dev-python/matplotlib-inline-0.1.6[${PYTHON_USEDEP}] + >=dev-python/pexpect-4.7[${PYTHON_USEDEP}] + >=dev-python/prompt-toolkit-3.0.41[${PYTHON_USEDEP}] + <dev-python/prompt-toolkit-3.1[${PYTHON_USEDEP}] + >=dev-python/pygments-2.14.0[${PYTHON_USEDEP}] + >=dev-python/stack-data-0.6.0[${PYTHON_USEDEP}] + >=dev-python/traitlets-5.13.0[${PYTHON_USEDEP}] +" + +BDEPEND=" + >=dev-python/setuptools-80[${PYTHON_USEDEP}] + test? ( + app-text/dvipng[truetype] + >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] + >=dev-python/matplotlib-3.9[${PYTHON_USEDEP}] + dev-python/nbformat[${PYTHON_USEDEP}] + >=dev-python/numpy-2.0[${PYTHON_USEDEP}] + dev-python/matplotlib-inline[${PYTHON_USEDEP}] + >=dev-python/packaging-23.0.0[${PYTHON_USEDEP}] + dev-python/pickleshare[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + >=dev-python/testpath-0.2[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-asyncio ) +distutils_enable_tests pytest + +RDEPEND+=" + nbconvert? ( + dev-python/nbconvert[${PYTHON_USEDEP}] + ) +" +PDEPEND=" + $(python_gen_cond_dep ' + gui? ( dev-python/qtconsole[${PYTHON_USEDEP}] ) + ' 'python*') + $(python_gen_cond_dep ' + notebook? ( + dev-python/notebook[${PYTHON_USEDEP}] + dev-python/ipywidgets[${PYTHON_USEDEP}] + dev-python/widgetsnbextension[${PYTHON_USEDEP}] + ) + ' 3.{12..14}) + smp? ( + >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] + >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}] + ) +" + +python_prepare_all() { + # Rename the test directory to reduce sys.path pollution + # https://github.com/ipython/ipython/issues/12892 + mv IPython/extensions/{,ipython_}tests || die + + distutils-r1_python_prepare_all +} + +src_test() { + virtx distutils-r1_src_test +} + +python_test() { + local -x IPYTHON_TESTING_TIMEOUT_SCALE=20 + local EPYTEST_DESELECT=() + + case ${EPYTHON} in + pypy3*) + EPYTEST_DESELECT+=( + # https://github.com/ipython/ipython/issues/14244 + tests/test_display.py::TestAudioDataWithoutNumpy + # minor exception message mismatch + # https://github.com/ipython/ipython/issues/14976 + tests/test_ultratb.py::ExceptionMessagePreferenceTest::test_jsondecodeerror_message + ) + ;; + esac + + if [[ $(tc-get-ptr-size) == 4 ]] ; then + EPYTEST_DESELECT+=( + # https://github.com/ipython/ipython/issues/15107 + IPython/extensions/ipython_tests/test_deduperreload.py::DecoratorPatchingSuite::test_function_decorator_from_other_module + IPython/extensions/ipython_tests/test_deduperreload.py::DecoratorPatchingSuite::test_function_decorators + IPython/extensions/tests/test_deduperreload.py::DecoratorPatchingSuite::test_method_decorator + ) + fi + + # nonfatal implied by virtx + nonfatal epytest || die "Tests failed on ${EPYTHON}" +} + +python_install() { + distutils-r1_python_install + + # Create ipythonX.Y symlinks. + # TODO: + # 1. do we want them for pypy? + # 2. handle it in the eclass instead (use _python_ln_rel). + # With pypy not an option the dosym becomes unconditional + # TODO2: figure out what TODO meant. + dosym ../lib/python-exec/${EPYTHON}/ipython \ + /usr/bin/ipython${EPYTHON#python} +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + dodoc -r examples + docompress -x /usr/share/doc/${PF}/examples + fi +} + +pkg_postinst() { + optfeature "code formatting" dev-python/black + optfeature "sympyprinting" dev-python/sympy + optfeature "cythonmagic" dev-python/cython + optfeature "%lprun magic command" dev-python/line-profiler + optfeature "%matplotlib magic command" dev-python/matplotlib-inline + + if use nbconvert; then + if ! has_version virtual/pandoc ; then + einfo "Node.js will be used to convert notebooks to other formats" + einfo "like HTML. Support for that is still experimental. If you" + einfo "encounter any problems, please use app-text/pandoc instead." + fi + fi +} |
