summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2014-02-12 08:55:14 +0000
committerMichał Górny <mgorny@gentoo.org>2014-02-12 08:55:14 +0000
commitad8ac585493dc71a6307f8aca15c548d3d14b360 (patch)
tree7659464f9ab9f5c3a4d617783ba8e0864a453f36 /dev-python/ipython
parentDepend on virtual/pkgconfig too (diff)
downloadhistorical-ad8ac585493dc71a6307f8aca15c548d3d14b360.tar.gz
historical-ad8ac585493dc71a6307f8aca15c548d3d14b360.tar.bz2
historical-ad8ac585493dc71a6307f8aca15c548d3d14b360.zip
Create versioned IPython symlinks alike Debian, bug #496010.
Package-Manager: portage-2.2.8-r1/cvs/Linux x86_64 Manifest-Sign-Key: 0xEFB4464E!
Diffstat (limited to 'dev-python/ipython')
-rw-r--r--dev-python/ipython/ChangeLog9
-rw-r--r--dev-python/ipython/Manifest21
-rw-r--r--dev-python/ipython/ipython-1.1.0-r2.ebuild221
3 files changed, 245 insertions, 6 deletions
diff --git a/dev-python/ipython/ChangeLog b/dev-python/ipython/ChangeLog
index bfb9f55843dd..f5be180a4bd3 100644
--- a/dev-python/ipython/ChangeLog
+++ b/dev-python/ipython/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-python/ipython
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/ipython/ChangeLog,v 1.131 2013/12/07 19:22:15 pacho Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/ipython/ChangeLog,v 1.132 2014/02/12 08:55:12 mgorny Exp $
+
+*ipython-1.1.0-r2 (12 Feb 2014)
+
+ 12 Feb 2014; Michał Górny <mgorny@gentoo.org> +ipython-1.1.0-r2.ebuild:
+ Create versioned IPython symlinks alike Debian, bug #496010.
07 Dec 2013; Pacho Ramos <pacho@gentoo.org> ipython-1.0.0.ebuild:
x86 stable, bug #488738
diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest
index b01c8b8f01f7..d9348116a8a4 100644
--- a/dev-python/ipython/Manifest
+++ b/dev-python/ipython/Manifest
@@ -16,13 +16,26 @@ EBUILD ipython-0.12-r1.ebuild 3981 SHA256 2cda10555e8f6e5521c1de8922a4354cbb9470
EBUILD ipython-0.13.2.ebuild 5432 SHA256 f822dcab3ca1d5bb5862ad6109396f6280ccc7a43e22649b9c6e969c4e08b082 SHA512 427961107e31b3a9f1a24867acbd2f46f84588fedb315556ddcf0500a0f02443f321ed5c03f4c582f7bc533e07c95768e0189b3e5c7de496ce6cb9c4e876b6ff WHIRLPOOL 642e1bf2b361d4c4d0e80e7d35e8228950989687bd641a37b121e7340ce08fc1adc25a14e54011c5c72b3ee14a632397f788e309db7d6dfc4cba9e169e86ed6d
EBUILD ipython-1.0.0.ebuild 5714 SHA256 7067d92514fd4ccd29de454fd7ecedae851ac92d5d4c2612788cdc5e7c249932 SHA512 be5d39fd4917f1abdd5ad70e36c767647f7de46ae361853b242684ba0c067849c54e232901c035cb635d17cb553dea4270dd75f7716f092a08effce2587d959f WHIRLPOOL dde1b52e1fcaa18ca627bd15e40a20de0e321ed4c1e3ac3988efc0a813f298cc0e2f7868a1c3d729f367a72eca957931385c1c60d92e855d67eee00f4c03ac48
EBUILD ipython-1.1.0-r1.ebuild 5722 SHA256 5537d1837290b6eb326e5bcbd80d56197a28b5ec484157aa6dc791b5f1780edd SHA512 0c2d5938c6958b88f224106c7bce6261d7c45f478c434d85cca6aa82569dad8d0f270b7e48be5db23a8781e4782866ada9364a4995c3280b9313c31636914785 WHIRLPOOL 3cccd6052b794870a25cde1bb39f088388c19772e5be4105dd70d5828250f681ef01aa97365a3d3d1f0ce05edf69280800435db6c5c4506e064c3c2be5611548
+EBUILD ipython-1.1.0-r2.ebuild 5982 SHA256 6e9a4b816ec22bd1ca97bfb14641b80f92b81d2fc6903933e8e90c5a7da75177 SHA512 da9e4f508c75423cab43a38777863da0afc1935115ea012bfcf376d602625ada60bd175a7dcc75e27c069511cde2d5138423fd0a64156954783f4861aa87d90d WHIRLPOOL 642a26705d4447169f4454e8b4c6b05ccf4d0d82f36197690acbe3a687910994c11bda21c2ef0c37f1341ede049a4a892b50968f5c818786c4e9f3bb17e1851e
EBUILD ipython-1.1.0.ebuild 5717 SHA256 f755ee639243fe96eb728fbb4f530bd3fd05cc0e011153463e18e5b49ff99b63 SHA512 6be04744fa3b1bd4ddfcde97e370c28e3b3945377c9c96d3f9261e8836cf5996aeefdfba76e90dbf0272ea7e825dc2b92b0af18635f964e846d2f45e9a2667f6 WHIRLPOOL 87edc3f7f98229b69ee1f2ea562ef0028c6e4a76f6f7faabae4028d077d354147485b6109e59d607305fb60836df2a3287feb8ff420b91d57585a7ebbcacace1
-MISC ChangeLog 19799 SHA256 887d002bb0612603b6806a3e3f08f5269a64a3a9f7d01a89bf2540ec21465e0a SHA512 68458827ae5752457607503f517c2ad6bf009e9ddc10d533fcfb380ad10821f8258050ef98df460f8c97edd92cc141044c56627ec888eac2ce85d071d2ee8b48 WHIRLPOOL f853f8d922282286f90924d34dcf10ca495edb92c0ab1203a0432cfb2999e4a0138d193be24eee274782ead7872b61a9a7c4bfab66c2a056bee54c576e11d478
+MISC ChangeLog 19973 SHA256 ae6f1206a846243f183f9960acfa18d14bdab065b6d59f45c3a3da0a0723682f SHA512 e5192c44a939b856e317f0834c603d3d783a39abacac14bd61a2c873a268189dd62378a68cc1de54b5ba7d3025ddb2334ca4df42a8afc9593e4870a50f7a1679 WHIRLPOOL ca5d06b55496d7ef7e87b7b986c4e114f18ace9cbf35c08a896ef9c87b46f24f0250c44e146c5c9c919747a22760d900cc3058d13e5c91f9d0fbd15812b416fb
MISC metadata.xml 2803 SHA256 6cec3ab4d81eaf8b6019d93d68e53efcbfdc88ccf52588e8dcc447f2d00d999f SHA512 3f4a6296f4d08d149af0dd85b6198134b8b68bd2972c01a148cd091414c1818a01a498d30ade1a3a56d98f4f8fd64f7898f3992500713fe33e59f2527353ac87 WHIRLPOOL 84b96e09a6d40bf77079b12c1c3e8a7e1f56cd52b8e9795cb748c60e295444ed9d9e0e909e9da961c02e76975d0f0f8125bddf90ebe0e0e2f8d8233239749364
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iEYEAREIAAYFAlKjdWkACgkQCaWpQKGI+9RXlACfe6NgGo71IVWR5JEu2KccNEbI
-d58AmgKZR0T2gMHIankvFuG7Iv1NQDEk
-=PlFJ
+iQJ8BAEBCABmBQJS+zbxXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
+ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC
+MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOxDYQAKPXSHX1ho1Mr7nnY/hJAdyS
+L3hiCwiRdqINkA9HMxBeCYJQ6lsCIqZDmDl8m8FgRxT6FfYiMcKfZb3OgcqebQ6P
+BNhc6uTVLS30MciOKaFUgEycxbLiTXFmHQJW2xwzEUEB6Eo0zihkcx7WT1QBF4Bn
+MXtwUK6Wig639V+HhJEkL7rQGmvph2/8Kclv7DClkFi9yQSP0AuNEkGzKtHsKi3j
+TVZ7SjGGVkdW0lxhjQbDiDpfM8Rbe6CDM2uJaMx8p+LTBboAsy/ofA8mTpEItNAl
+18iE+8u19CT5RprKE3B0PNWEuYOO2Xr5IPPtrZkzxBPsHdP42NdXCIy4Zx8H6HGu
+3G16w4fOLIHDpoeBkGw3EKTZMarTK8sQoUfOppdMHMERFzGlguUpb8fifbgksiq7
+d4kSVk+a8vU4iEnaDeyFucS5HgWAAjfETtRcwpSqu71aEYA+vkdprn1gl2K9tr3c
+s2r2JEcSD+J2frU0DAAgs/XX0zp1vSnWQsLoaULkVWJoONbpZ0MlxdQy/wcyXLUe
+vpX21+3VyQP4SdRcHq2eHItMLkMmGaBXQ2Q0Kiy09tlInSLZsqR0GfWd/hgSXXMF
+Vk+tE/Ob+e4S7axom6lSrhIZcex/NVR6w7pdS1VYg5em4pEHx1h4TfSpH1iT5QP+
+hN8BNgkBWb7rA55t8oD1
+=jPDz
-----END PGP SIGNATURE-----
diff --git a/dev-python/ipython/ipython-1.1.0-r2.ebuild b/dev-python/ipython/ipython-1.1.0-r2.ebuild
new file mode 100644
index 000000000000..c3a8dbde8628
--- /dev/null
+++ b/dev-python/ipython/ipython-1.1.0-r2.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/ipython/ipython-1.1.0-r2.ebuild,v 1.1 2014/02/12 08:55:12 mgorny Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
+PYTHON_REQ_USE='readline,sqlite'
+
+inherit distutils-r1 elisp-common eutils virtualx
+
+DISTUTILS_IN_SOURCE_BUILD=1
+
+DESCRIPTION="Advanced interactive shell for Python"
+HOMEPAGE="http://ipython.org/"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/rel-${PV}/${P}.tar.gz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="doc emacs examples matplotlib mongodb notebook nbconvert octave
+ qt4 +smp test wxwidgets"
+
+PY2_USEDEP=$(python_gen_usedep 'python2*')
+
+gen_python_deps() {
+ local flag
+ for flag in $(python_gen_useflags '*'); do
+ echo "${flag}? ( ${1}[${flag}(-)] )"
+ done
+}
+
+CDEPEND="
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/simplegeneric[${PYTHON_USEDEP}]
+ dev-python/pyparsing[${PYTHON_USEDEP}]
+ virtual/python-argparse[${PYTHON_USEDEP}]
+ emacs? ( app-emacs/python-mode virtual/emacs )
+ matplotlib? ( dev-python/matplotlib[${PYTHON_USEDEP}] )
+ mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
+ octave? ( dev-python/oct2py[${PY2_USEDEP}] )
+ smp? ( dev-python/pyzmq[${PYTHON_USEDEP}] )
+ wxwidgets? ( dev-python/wxpython[${PY2_USEDEP}] )"
+RDEPEND="${CDEPEND}
+ notebook? (
+ >=www-servers/tornado-2.1[${PY2_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/pyzmq[${PYTHON_USEDEP}]
+ dev-libs/mathjax
+ $(gen_python_deps dev-python/jinja)
+ )
+ nbconvert? (
+ app-text/pandoc
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ $(gen_python_deps dev-python/jinja)
+ )
+ qt4? ( || ( dev-python/PyQt4[${PYTHON_USEDEP}] dev-python/pyside[${PYTHON_USEDEP}] )
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/pyzmq[${PYTHON_USEDEP}] )"
+DEPEND="${CDEPEND}
+ test? ( dev-python/nose[${PYTHON_USEDEP}] )"
+
+PY2_REQUSE="|| ( $(python_gen_useflags python2* ) )"
+REQUIRED_USE="
+ mongodb? ( ${PY2_REQUSE} )
+ notebook? ( ${PY2_REQUSE} )
+ octave? ( ${PY2_REQUSE} )
+ wxwidgets? ( ${PY2_REQUSE} )"
+
+PATCHES=(
+ "${FILESDIR}/ipython-1.0.0-setuptools.patch"
+)
+
+python_prepare_all() {
+ # fix for gentoo python scripts
+ sed -i \
+ -e "/ipython_cmd/s/ipython3/ipython/g" \
+ IPython/terminal/console/tests/test_console.py \
+ IPython/lib/irunner.py \
+ IPython/testing/tools.py || die
+
+ sed -i \
+ -e "s/find_scripts(True, suffix='3')/find_scripts(True)/" \
+ setup.py || die
+
+ # fix gentoo installation directory for documentation
+ sed -i \
+ -e "/docdirbase = pjoin/s/ipython/${PF}/" \
+ -e "/pjoin(docdirbase,'manual')/s/manual/html/" \
+ setupbase.py || die "sed failed"
+
+ if ! use doc; then
+ sed -i \
+ -e "/(pjoin(docdirbase, 'extensions'), igridhelpfiles),/d" \
+ -e 's/ + manual_files//' \
+ setupbase.py || die
+ fi
+
+ if ! use examples; then
+ sed -i \
+ -e 's/+ example_files//' \
+ setupbase.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ use emacs && elisp-compile docs/emacs/ipython.el
+}
+
+src_test() {
+ # virtualx has trouble with parallel runs.
+ local DISTUTILS_NO_PARALLEL_BUILD=1
+ distutils-r1_src_test
+}
+
+python_test() {
+ # https://github.com/ipython/ipython/issues/2083
+ unset PYTHONWARNINGS
+
+ # ipython skips mongodb tests only if it's not running.
+ # since we want the widest test range, and don't want it to fiddle
+ # with user-running mongodb, we always run it if it's available.
+
+ local DB_IP=127.0.0.1
+ local DB_PORT=-1 # disable
+
+ pushd "${BUILD_DIR}"/../IPython/scripts/ > /dev/null
+
+ if has_version dev-db/mongodb; then
+ # please keep in sync with dev-python/pymongo
+
+ local dbpath=${TMPDIR}/mongo.db
+ local logpath=${TMPDIR}/mongod.log
+
+ # prefer starting with non-default one
+ DB_PORT=27018
+
+ mkdir -p "${dbpath}" || die
+ while true; do
+ ebegin "Trying to start mongod on port ${DB_PORT}"
+
+ LC_ALL=C \
+ mongod --dbpath "${dbpath}" --smallfiles --nojournal \
+ --bind_ip ${DB_IP} --port ${DB_PORT} \
+ --unixSocketPrefix "${TMPDIR}" \
+ --logpath "${logpath}" --fork \
+ && sleep 2
+
+ # Now we need to check if the server actually started...
+ if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then
+ # yay!
+ eend 0
+ break
+ elif grep -q 'Address already in use' "${logpath}"; then
+ # ay, someone took our port!
+ eend 1
+ : $(( DB_PORT += 1 ))
+ continue
+ else
+ eend 1
+ ewarn "Unable to start mongod for tests."
+ break
+ fi
+ done
+ fi
+
+ # No support for DB_IP and DB_PORT.
+ # https://github.com/ipython/ipython/pull/2910
+ sed -i -e "s:Connection(:&host='${DB_IP}', port=${DB_PORT}:" \
+ "${BUILD_DIR}"/lib/IPython/parallel/tests/test_mongodb.py \
+ || die "Unable to sed mongod port into tests"
+
+ local fail
+ run_tests() {
+ # Initialize ~/.ipython directory.
+ "${EPYTHON}" ipython </dev/null >/dev/null || fail=1
+ # Run tests (-v for more verbosity).
+ PYTHONPATH=${PYTHONPATH}:. "${EPYTHON}" iptest -v || fail=1
+ }
+
+ VIRTUALX_COMMAND=run_tests virtualmake
+
+ [[ ${DB_PORT} != -1 ]] && mongod --dbpath "${dbpath}" --shutdown
+ [[ ${fail} ]] && die "Tests fail with ${EPYTHON}"
+}
+
+python_install() {
+ distutils-r1_python_install
+ ln -snf "${EPREFIX}"/usr/share/mathjax \
+ "${D}$(python_get_sitedir)"/IPython/html/static/mathjax || die
+
+ # Create ipythonX.Y symlinks.
+ # TODO:
+ # 1. do we want them for pypy?
+ # 2. handle it in the eclass instead (use _python_ln_rel).
+ if [[ ${EPYTHON} == python* ]]; then
+ dosym ../lib/python-exec/${EPYTHON}/ipython \
+ /usr/bin/ipython${EPYTHON#python}
+ fi
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ if use emacs; then
+ cd docs/emacs || die
+ elisp-install ${PN} ${PN}.el*
+ elisp-site-file-install "${FILESDIR}"/62ipython-gentoo.el
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}