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>

Reply via email to