widgetti / ipyvolume

3d plotting for Python in the Jupyter notebook based on IPython widgets using WebGL
MIT License
1.93k stars 234 forks source link

offline=True in embed_html failing to save required file js/jupyter-threejs.js #192

Open GenevieveBuckley opened 5 years ago

GenevieveBuckley commented 5 years ago

The offline=True kwarg in ipyvolume.embed.embed_html() is failing to save the file at https://unpkg.com/jupyter-threejs@2.0.1/dist/index.js locally as js/jupyter-threejs.js

Copying that file manually into js/jupyter-threejs.js fixes the issue and allows offline viewing.

I'm using ipyvolume installed from master branch: 0.5.2-dev.1

GenevieveBuckley commented 5 years ago

It's possible this is wholly or partially resolved by the offline_embed branch here: https://github.com/maartenbreddels/ipyvolume/tree/offline_embed

maartenbreddels commented 5 years ago

That branch is old, I'll remove it. Seems like a legit bug.

GenevieveBuckley commented 5 years ago

Maybe related: I was wondering if it would be of general use to have a no dependencies option for the offline html? It'd be useful in situations where you write many html files to the same location, and care about how fast you can write them to disk. (This is something we're doing at the moment, overwriting a single file with new data, and I think it'd speed up the responsiveness quite a bit if it didn't re-download every dependency each time.)

maartenbreddels commented 5 years ago

Yes, a cache would be nice, I think though it should (optionally) check the CDN for the right version, and if not it should update it. My guess is that the request package can do this. I also hate that it downloads everything every time. It can also do a hardlink to the cached file (for non-windows users).