Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev-python/ipython: bump to 7.14.0; bug #691294 #15674

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions dev-python/ipython/Manifest
@@ -1 +1,2 @@
DIST ipython-7.14.0.tar.gz 5153406 BLAKE2B f032f5c38741b1da897d4fcf596edc4b8cacda863040fd25b0f62bb058d03e01e5557c00d20c35f956635a13986ae72d7e6e0efed680af249202374885952ea7 SHA512 412829d521711e5cb678b8db169d5b8958d742a07c165a656f7e40c776f21f6e436e8116f31e349da555d500c582d3797c846ac0d7efa8c3f2ea11e87fbfc8c6
DIST ipython-7.5.0.tar.gz 5118610 BLAKE2B 3f89babc292ea55724c2333076a673ef7fcd0a7a468e972a50c962194a71a0bc3cc9bdea4f96db4c21fe475b4d79dc87c124bcde53e1bc3ae7066a3c0c136e0d SHA512 564027879e53b3716ebe8cb1ed4b516835c15f326c865fd664aa7a4e5f26e1a78a329ff8e19d4acf6249e2acf7382501114cd2258c38bba89f0f382f7dcda09b
137 changes: 137 additions & 0 deletions dev-python/ipython/ipython-7.14.0.ebuild
@@ -0,0 +1,137 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

PYTHON_COMPAT=( python3_{6,7} )
PYTHON_REQ_USE='readline,sqlite,threads(+)'

inherit distutils-r1 eutils virtualx

DESCRIPTION="Advanced interactive shell for Python"
HOMEPAGE="https://ipython.org/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"

LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~ppc ppc64 x86 ~amd64-linux ~x86-linux"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You don't bump straight to stable.

IUSE="doc examples matplotlib notebook nbconvert qt5 +smp test"
RESTRICT="!test? ( test )"

CDEPEND="
dev-python/backcall[${PYTHON_USEDEP}]
dev-python/decorator[${PYTHON_USEDEP}]
dev-python/jedi[${PYTHON_USEDEP}]
dev-python/pexpect[${PYTHON_USEDEP}]
dev-python/pickleshare[${PYTHON_USEDEP}]
>=dev-python/prompt_toolkit-3.0.2[${PYTHON_USEDEP}]
<dev-python/prompt_toolkit-3.1[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
dev-python/traitlets[${PYTHON_USEDEP}]
matplotlib? ( dev-python/matplotlib[${PYTHON_USEDEP}] )
"

RDEPEND="${CDEPEND}
nbconvert? ( dev-python/nbconvert[${PYTHON_USEDEP}] )"

DEPEND="${CDEPEND}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These go to BDEPEND in EAPI 7. Also, I honestly doubt you need this 'CDEPEND' outside test?

dev-python/setuptools[${PYTHON_USEDEP}]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is redundant now.

test? (
>=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
dev-python/nbformat[${PYTHON_USEDEP}]
dev-python/nose[${PYTHON_USEDEP}]
dev-python/numpy[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-python/testpath[${PYTHON_USEDEP}]
)
doc? (
>=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
>=dev-python/sphinx-2[${PYTHON_USEDEP}]
)"

PDEPEND="
notebook? (
dev-python/notebook[${PYTHON_USEDEP}]
dev-python/ipywidgets[${PYTHON_USEDEP}]
dev-python/widgetsnbextension[${PYTHON_USEDEP}]
)
qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] )
smp? (
>=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
>=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}]
)"

PATCHES=( "${FILESDIR}"/2.1.0-substitute-files.patch )

DISTUTILS_IN_SOURCE_BUILD=1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this still necessary?


python_prepare_all() {
# Remove out of date insource files
rm IPython/extensions/cythonmagic.py || die
rm IPython/extensions/rmagic.py || die

# Prevent un-needed download during build
if use doc; then
sed -e "/^ 'sphinx.ext.intersphinx',/d" -i docs/source/conf.py || die
fi

# Disable network-using test
sed -i 's/^def \(test_embed_svg_url():$\)/def _\1/g' \
IPython/core/tests/test_display.py || die

distutils-r1_python_prepare_all
}

python_compile_all() {
if use doc; then
emake -C docs html_noapi
HTML_DOCS=( docs/build/html/. )
fi
}

src_test() {
virtx distutils-r1_src_test
}

python_test() {
distutils_install_for_testing
pushd "${TEST_DIR}" >/dev/null || die
"${TEST_DIR}"/scripts/iptest || die
popd >/dev/null || die
}

python_install() {
distutils-r1_python_install

# Create ipythonX.Y symlinks.
# TODO:
# 1. do we want them for pypy? No. pypy has no numpy
# 2. handle it in the eclass instead (use _python_ln_rel).
# With pypy not an option the dosym becomes unconditional
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 "sympyprinting" dev-python/sympy
optfeature "cythonmagic" dev-python/cython
optfeature "%lprun magic command" dev-python/line_profiler
optfeature "%mprun magic command" dev-python/memory_profiler

if use nbconvert; then
if ! has_version app-text/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
}