Package name : bokeh Version : 0.5.0 Upstream Author : Continuum Analytics, Inc. URL : http://bokeh.pydata.org/ License : New BSD Programming Lang: Python Description : interactive visualization for web browsers Bokeh is a Python interactive visualization library that targets modern web browsers for presentation. Its goal is to provide elegant, concise construction of novel graphics in the style of D3.js, but also deliver this capability with high-performance interactivity over very large or streaming datasets. Bokeh can help anyone who would like to quickly and easily create interactive plots, dashboards, and data applications. Note for packager: All Python 2/3 dependencies are already in Jessie or on their way. But Bokeh contains also 19 embedded Javascript libraries and some of them are not yet in Debian.
Hello, It looks like Alexander Charykov is planning on packaging Bokeh? How is that going? I had made not debian compliant version of bokeh for myself. https://github.com/detrout/python-bokeh I just tried to update to 0.9.3 and discovered the unit tests want abstract_rendering and blaze. Were you trying to work on those yet, or were you busy with grunt? Diane Trout
I have a packaging tree that I'm using at: https://github.com/detrout/python-bokeh It can't be released to Debian until we find a solution for building BokehJS. (And that it also needs a jquery 2.1.1). But at least its a start. Diane
I updated my packaging recipe to 0.12.3, though it still uses the prebuilt javascript provided when upstream builds the pypi package. I also looked through the bokehjs dependency list Name | | Debian | Version underscore | ^1.5.2 | libjs-underscore | 1.8.3 backbone | ^1.1.0 | libjs-backbone | 1.3.3 es6-promise | 3.0.2 | libjs-es6-promise | 3.2.2 jquery | ^2.1.1 | libjs-jquery | 3.1.1 jquery-mousewheel | ^3.1.12 | libjs-jquery-mousewheel | 11 jquery-ui | ^1.10.5 | libjs-jquery-ui | 1.12.1 jsnlog | ^2.7.5 | | mathutils | 0.0.1 | | rbush | ^1.3.5 | node-rbush | 2.0.1 proj4 | ^2.3.10 | libjs-proj4 | 2.3.15 sprintf | ^0.1.5 | node-sprintf-js? | 1.0.3 timezone | 0.0.38 | | coffee-script | 1.9.3 | coffeescript | 1.10.0 Most of the dependencies seem to be in Debian. The build process seems to use gulp and browserfy. Also there's another key "devDependency" in the package.json of which I have no idea how many are important.
I found the javascript teams tool for tracking javascript dependencies and created a page for bokehjs https://wiki.debian.org/Javascript/Nodejs/Tasks/bokehjs
Le mardi 08 septembre 2015 à 22:25:11-0700, Diane Trout a écrit : Dear Diane, It seems that bokeh 1.3.4 ships a version of BokehJS that is non-minified and ready-to-use. Wouldn't that be a correct solution for an initial packaging, even though one could wish to finish the proper javascript package in a second time? With best regards,
Hello Diane et. al., I am packaging gneiss[1], where one of its dependency is Bokeh. What is the progress of Bokeh at this time? Additionally, is this a WIP? Kind regards, Shayan Doust [1]: https://salsa.debian.org/med-team/gneiss
I would really like to see bokeh packaged for Debian.
FWIW, I have run npm2deb on bokehjs to see which node packages are
missing in Debian. Here is the output:
$ npm2deb depends -b -r bokehjs
Dependencies:
NPM Debian
bokehjs (1.4.0) None
├─ canvas2svg (git+https://github.com/bokeh/canvas2svg.git#v1.0.21)None
├─ es5-ext (^0.10.50) node-es5-ext
(0.10.62+dfsg1+~1.1.0-2)
├─ es6-map (^0.1.5) node-es6-map (0.1.5-3)
├─ es6-promise (4.2.6) node-es6-promise
(4.2.8-12)
├─ es6-set (^0.1.5) node-es6-set (0.1.6-1)
├─ es6-weak-map (^2.0.2) node-es6-weak-map (2.0.3-3)
├─ flatbush (^3.1.1) None
│ └─ flatqueue (^2.0.3) None
├─ gloo2 (git+https://github.com/bokeh/gloo2.git#b41bd5d)None
│ └─ error ({'code': 'E404', 'summary': 'Unpublished on
2021-04-28T09:35:17.607Z', 'detail': "\n 'gloo2' is not in this
registry.\n\nNote that you can also install from a\ntarball, folder,
http url, or git url."})None
├─ hammerjs (^2.0.4) None
├─ nouislider (^10.0.0) node-nouislider
(15.7.1+ds-1)
├─ numbro (git+https://github.com/bokeh/numbro.git#e1b6c52)None
│ └─ bignumber.js (^8 || ^9) None
├─ pikaday
(git+https://github.com/bokeh/pikaday.git#6b7258e)node-pikaday
(1.8.2+~1.7.6-2)
├─ proj4 (<2.4) proj4js (2.3.17+ds-1)
├─ slickgrid (git+https://github.com/bokeh/SlickGrid.git#8e993bf)None
│ └─ sortablejs (^1.15.0) None
├─ sprintf-js (^1.1.2) node-sprintf-js
(1.1.2+ds1+~1.1.2-1)
├─ timezone (^1.0.22) None
├─ tslib (^1.10.0) node-tslib (2.4.1-1)
└─ underscore.template (^0.1.7) None
So basically 8 out 18 node dependencies are missing. From those ones
slickgrid and hemmerjs seem like big ones, the rest maybe not so much,
but of course nobody knows until it is tried out.
Also, trying to check which are the python dependencies, I tried to
create a venv using the system packages and this is what I get:
$ python3 -m venv --system-site-packages my_env
$ . ./my_env/bin/activate
(my_env) $ pip install bokeh
Collecting bokeh
Using cached bokeh-3.3.0-py3-none-any.whl (6.8 MB)
Requirement already satisfied: Jinja2>=2.9 in
/usr/lib/python3/dist-packages (from bokeh) (3.1.2)
Requirement already satisfied: contourpy>=1 in
/usr/lib/python3/dist-packages (from bokeh) (1.0.7)
Requirement already satisfied: numpy>=1.16 in
/usr/lib/python3/dist-packages (from bokeh) (1.24.2)
Requirement already satisfied: packaging>=16.8 in
/usr/lib/python3/dist-packages (from bokeh) (23.0)
Requirement already satisfied: pandas>=1.2 in
/usr/lib/python3/dist-packages (from bokeh) (1.5.3)
Requirement already satisfied: pillow>=7.1.0 in
/usr/lib/python3/dist-packages (from bokeh) (9.4.0)
Requirement already satisfied: PyYAML>=3.10 in
/usr/lib/python3/dist-packages (from bokeh) (6.0)
Requirement already satisfied: tornado>=5.1 in
/usr/lib/python3/dist-packages (from bokeh) (6.2)
Requirement already satisfied: xyzservices>=2021.09.1 in
/usr/lib/python3/dist-packages (from bokeh) (2023.2.0)
Installing collected packages: bokeh
Successfully installed bokeh-3.3.0
Which seems to indicate that all the python dependencies are already in
Debian. Maybe this is too naive and there are embedded dependencies in
bokeh, but from a cursory look at the bokeh sources I could not find it.
I think getting bokeh pacakged would be great, I just lack time and motivation to deal with the javascript packages. Also I think there were times when bokeh was using an unpackaged build system, but they switched to something simpler. Diane
Hi, Am Tue, Sep 08, 2015 at 10:25:11PM -0700 schrieb Diane Trout: Python Team might make sense. I've independently from this RFP (which I was not aware about) createt a repository https://salsa.debian.org/python-team/packages/python-bokeh and merged+updated the packaging code from Diane above. As you can see in the build log[1] there is a failurein creating bokeh.js which becomes obvious if you run the command in setup.py manually: $ node make build node:internal/modules/cjs/loader:1042 throw err; ^ Error: Cannot find module '/build/python-bokeh-3.3.1/make' at Module._resolveFilename (node:internal/modules/cjs/loader:1039:15) at Module._load (node:internal/modules/cjs/loader:885:27) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:23:47 { code: 'MODULE_NOT_FOUND', requireStack: [] } Node.js v18.13.0 This is due to the missing JS packages[2] mentioned here in this bug log. While bokeh would be in fact very helpful for several interesting scientific Python3 packages I personally do not have the power to dive into JS packaging. Kind regards Andreas. [1] https://salsa.debian.org/python-team/packages/python-bokeh/-/jobs/4978289 [2] https://wiki.debian.org/Javascript/Nodejs/Tasks/bokehjs