From db7f283451256f94921bd723861f0e82ed7157f2 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 2 Sep 2026 03:04:44 -0500 Subject: Adding metadata --- dev-python/ipython/Manifest | 2 + dev-python/ipython/ipython-9.17.1.ebuild | 145 +++++++++++++++++++++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 dev-python/ipython/ipython-9.17.1.ebuild (limited to 'dev-python/ipython') diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest index a173a38f1135..0b9f8978b6a5 100644 --- a/dev-python/ipython/Manifest +++ b/dev-python/ipython/Manifest @@ -4,3 +4,5 @@ DIST ipython-9.16.1.tar.gz 4515302 BLAKE2B 45412c6eeae21026d701ca75678a2f6b9dbbd DIST ipython-9.16.1.tar.gz.provenance 9689 BLAKE2B 665fb5f17b407b1b6d82459550901892130bc19c6d88ff6d4857702fa6995b2b9d125de448a5501254cb195f5368070438f2d6aaa3ae87312a90d3a4dd06e90b SHA512 ee98b364ff7c94b8b4e2a31e98818fd3646c23a693d1e5221723ddecd66b8fbe8c65b01360e4111f2a765641fc6908a44fb03408b25f3cd643afa4b9507c5e03 DIST ipython-9.17.0.tar.gz 4538547 BLAKE2B a0a935973231b7d4bd49e88a44a1750343e2c97cbdcd1bd9a07a6164298ec2ce6fe9cbc3aa98084c4ad6cff7519315f2d0f929f2f46da38ad1c26671fa05d574 SHA512 c185d5cb7e003c5fbc701bd7c25fb6d250fc82051ebcf57453bfd79c6b7870d54e3869ba371556ad9242e651ffb39cb3ab0291e52331fc822758f7c5572ffadd DIST ipython-9.17.0.tar.gz.provenance 9507 BLAKE2B c1bdf74d20692ec5bc000aef133f8eca717b212b051b24c8218376d5c82480e07df48feec43417b35dd867f1020d14966dad89fd76a5ecc2a8fb3049f375116b SHA512 bda827dfce194894ae0c329adeb675e5b9b2cbd81bd70d05d6446cdb4cd4f1049bc54a00de43c1fc597813217bcb7aceff5a69d49de6d3fde2b4b68312a78d19 +DIST ipython-9.17.1.tar.gz 4539289 BLAKE2B 5e1de4efc83c9d3d8c04b87dc30939690403c81c3b5d36638542c7b4c6109715d6a588cc505435be5c26b2751c0e94e2ce7d2403436ef81d0dab5537c203177a SHA512 bafbb8204920360e99dcb7a0b436b6006650ecdd15d2cf767167d05178010abcbbe3a0733705e0399cff9860aa4fa427b38a299700cd0900a8d5384a7fdcaab7 +DIST ipython-9.17.1.tar.gz.provenance 9644 BLAKE2B 1cec23d63f3b20707475a7b6e9ba524ec549863bfa671a3a5fd6936b8d4d935625b92d92ac545ddd90bffb59ebf6e97981730f65dbcc7b96ad0aae6243df3ed6 SHA512 d0f318e7e51e98f7edc2b33149a152a3d3b281b8134b80494501719c472ba82effc3da0d50e26e88aa369883f98466118aff23407171f24340d1a794dff9189a diff --git a/dev-python/ipython/ipython-9.17.1.ebuild b/dev-python/ipython/ipython-9.17.1.ebuild new file mode 100644 index 000000000000..c5a9237046d7 --- /dev/null +++ b/dev-python/ipython/ipython-9.17.1.ebuild @@ -0,0 +1,145 @@ +# 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_{13..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/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/psutil-7[${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=() + + 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 +} -- cgit v1.3