commit: b6f4fe94c0bf11d823d61e21c82a6c005b90fed0 Author: Witold Pilat <witold.pilat <AT> gmail <DOT> com> AuthorDate: Mon Jul 7 03:40:44 2014 +0000 Commit: Justin Lecher <jlec <AT> gentoo <DOT> org> CommitDate: Mon Jul 7 03:40:44 2014 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=b6f4fe94
dev-python/bokeh: dev-python/bokeh: New version with python3 support for bug #516052 Package-Manager: portage-2.2.10 --- dev-python/bokeh/ChangeLog | 11 +++++ .../{bokeh-0.4.2.ebuild => bokeh-0.4.4.ebuild} | 57 ++++++++++++++++++---- .../bokeh/files/bokeh-0.4.4-fix_test_object.patch | 32 ++++++++++++ dev-python/bokeh/metadata.xml | 3 ++ 4 files changed, 93 insertions(+), 10 deletions(-) diff --git a/dev-python/bokeh/ChangeLog b/dev-python/bokeh/ChangeLog index e69de29..0dac602 100644 --- a/dev-python/bokeh/ChangeLog +++ b/dev-python/bokeh/ChangeLog @@ -0,0 +1,11 @@ +# ChangeLog for dev-python/bokeh +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 +# $Header: $ + +*bokeh-0.4.4 (07 Jul 2014) + + 07 Jul 2014; Witold Pilat (fau) <witold.pi...@gmail.com> +bokeh-0.4.4.ebuild, + +files/bokeh-0.4.4-fix_test_object.patch, -ChangeLog, -Manifest, + -bokeh-0.4.2.ebuild, metadata.xml: + dev-python/bokeh: dev-python/bokeh: New version with python3 support for bug + #516052 diff --git a/dev-python/bokeh/bokeh-0.4.2.ebuild b/dev-python/bokeh/bokeh-0.4.4.ebuild similarity index 52% rename from dev-python/bokeh/bokeh-0.4.2.ebuild rename to dev-python/bokeh/bokeh-0.4.4.ebuild index 8f865c0..22d38c5 100644 --- a/dev-python/bokeh/bokeh-0.4.2.ebuild +++ b/dev-python/bokeh/bokeh-0.4.4.ebuild @@ -4,7 +4,7 @@ EAPI=5 -PYTHON_COMPAT=( python2_7 ) +PYTHON_COMPAT=( python{2_7,3_3,3_4} ) inherit distutils-r1 @@ -15,13 +15,11 @@ SRC_URI="https://github.com/ContinuumIO/${PN}/archive/${PV}.tar.gz -> ${P}.tar.g SLOT="0" LICENSE="BSD" KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="doc test" +IUSE="examples test chaco" +# docs require napoleon sphinx extension which will be included in next sphinx release RDEPEND=" - >=dev-python/chaco-4.4[$(python_gen_usedep 'python2_7')] >=dev-python/flask-0.10.1[${PYTHON_USEDEP}] - >=dev-python/gevent-0.13.8[$(python_gen_usedep 'python2_7')] - >=dev-python/gevent-websocket-0.3.6[$(python_gen_usedep 'python2_7')] >=dev-python/greenlet-0.4.1[${PYTHON_USEDEP}] >=dev-python/itsdangerous-0.23[${PYTHON_USEDEP}] >=dev-python/jinja-2.7[${PYTHON_USEDEP}] @@ -37,25 +35,64 @@ RDEPEND=" >=dev-python/redis-py-2.7.6[${PYTHON_USEDEP}] >=dev-python/requests-1.2.3[${PYTHON_USEDEP}] >=dev-python/six-1.5.2[${PYTHON_USEDEP}] - >=dev-python/traits-4.4[$(python_gen_usedep 'python2_7')] >=dev-python/werkzeug-0.9.1[${PYTHON_USEDEP}] - >=virtual/python-argparse-1[${PYTHON_USEDEP}] -" + $(python_gen_cond_dep '>=dev-python/gevent-1.0[${PYTHON_USEDEP}]' python2_7) + $(python_gen_cond_dep '>=dev-python/gevent-websocket-0.9.2[${PYTHON_USEDEP}]' python2_7) + chaco? ( + $(python_gen_cond_dep '>=dev-python/traits-4.4[${PYTHON_USEDEP}]' python2_7) + $(python_gen_cond_dep '>=dev-python/chaco-4.4[${PYTHON_USEDEP}]' python2_7) + ) +" # testing server: needs websocket not in portage yet # >=dev-python/websocket[${PYTHON_USEDEP}] -DEPEND="${RDEPEND} +# hdf5 backend: needs arraymanagement not in portage yet +DEPEND=" test? ( + ${RDEPEND} + >=dev-python/nose-1.3.0[${PYTHON_USEDEP}] >=dev-python/mock-1.0.1[${PYTHON_USEDEP}] >=dev-python/colorama-0.2.7[${PYTHON_USEDEP}] ) " +DOCS=( CHANGELOG QUICKSTART.md README.md ) + +python_prepare_all() { + # Fix test_references_by_ref_by_value from test_object.py + local PATCHES=( "${FILESDIR}"/${P}-fix_test_object.patch ) + # Remove broken test case + sed -i -e "s:MetaTest:_&:" bokeh/tests/test_bokeh_init.py || die + + if ! use chaco; then + sed -i -e "/'bokeh.chaco_gg'/d" setup.py || die + fi + + distutils-r1_python_prepare_all +} + +python_install_all() { + use examples && local EXAMPLES=( examples/. ) + + distutils-r1_python_install_all +} + python_test() { cd "${BUILD_DIR}"/lib || die # exclude server tests for now nosetests -v \ -e multiuser_auth_test \ - -e wsmanager_test \ -e usermodel_test \ || die } + +pkg_postinst() { + elog "websockets work only with python2_7" + local chaco_msg="chaco useflag doesn't affect python targets other than python2_7" + if use chaco; then + if use python_targets_python2_7; then + elog "${chaco_msg}" + else + ewarn "${chaco_msg}" + fi + fi +} diff --git a/dev-python/bokeh/files/bokeh-0.4.4-fix_test_object.patch b/dev-python/bokeh/files/bokeh-0.4.4-fix_test_object.patch new file mode 100644 index 0000000..24183d8 --- /dev/null +++ b/dev-python/bokeh/files/bokeh-0.4.4-fix_test_object.patch @@ -0,0 +1,32 @@ +commit 9606ae037dbd9ee888f9763a1bd9c6d7fc3b5824 +Author: Bryan Van de Ven <bry...@continuum.io> +Date: Sat Apr 19 10:05:35 2014 -0500 + + fix #548 + +diff --git a/bokeh/plotobject.py b/bokeh/plotobject.py +index 7485d27..92ae2dd 100644 +--- a/bokeh/plotobject.py ++++ b/bokeh/plotobject.py +@@ -220,7 +220,7 @@ class PlotObject(HasProps): + + def references(self): + """Returns all ``PlotObjects`` that this object has references to. """ +- return self.collect_plot_objects(self) ++ return set(self.collect_plot_objects(self)) + + #--------------------------------------------------------------------- + # View Model connection methods +diff --git a/bokeh/tests/test_objects.py b/bokeh/tests/test_objects.py +index 1a17f69..75d5678 100644 +--- a/bokeh/tests/test_objects.py ++++ b/bokeh/tests/test_objects.py +@@ -242,7 +242,7 @@ class TestPlotObject(unittest.TestCase): + x2 = X2(y=y, z2=z2) + + # TODO: self.assertEqual(x1.references(), [t1, y, t2, x1]) +- self.assertEqual(x2.references(), [t1, y, t2, z2, x2]) ++ self.assertEqual(x2.references(), set([t1, y, t2, z2, x2])) + + if __name__ == "__main__": + unittest.main() diff --git a/dev-python/bokeh/metadata.xml b/dev-python/bokeh/metadata.xml index c43dd65..b59e358 100644 --- a/dev-python/bokeh/metadata.xml +++ b/dev-python/bokeh/metadata.xml @@ -9,4 +9,7 @@ style of Protovis/D3, while delivering high-performance interactivity over large data to thin clients. </longdescription> +<use> + <flag name="chaco">Enable interface for implementing qplot and ggplot like functionality using chaco</flag> +</use> </pkgmetadata>