1{ buildPythonPackage
2, fetchPypi
3, futures
4, isPy3k
5, isPyPy
6, jinja2
7, lib
8, mock
9, numpy
10, nodejs
11, pillow
12, pytest
13, python
14, python-dateutil
15, pyyaml
16, selenium
17, six
18, substituteAll
19, tornado
20}:
21
22buildPythonPackage rec {
23 pname = "bokeh";
24 version = "1.3.4";
25
26 src = fetchPypi {
27 inherit pname version;
28 sha256 = "0m27j29jpi977y95k272xc24qkl5bkniy046cil116hrbgnppng2";
29 };
30
31 patches = [
32 (substituteAll {
33 src = ./hardcode-nodejs-npmjs-paths.patch;
34 node_bin = "${nodejs}/bin/node";
35 npm_bin = "${nodejs}/bin/npm";
36 })
37 ];
38
39 disabled = isPyPy;
40
41 checkInputs = [ mock pytest pillow selenium ];
42
43 propagatedBuildInputs = [
44 pillow
45 jinja2
46 python-dateutil
47 six
48 pyyaml
49 tornado
50 numpy
51 ]
52 ++ lib.optionals ( !isPy3k ) [ futures ];
53
54 checkPhase = ''
55 ${python.interpreter} -m unittest discover -s bokeh/tests
56 '';
57
58 meta = {
59 description = "Statistical and novel interactive HTML plots for Python";
60 homepage = https://github.com/bokeh/bokeh;
61 license = lib.licenses.bsd3;
62 maintainers = with lib.maintainers; [ orivej ];
63 };
64}