-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WebIO not detected in jupyterlab #315
Comments
Do you have more than one version of Jupyter Lab (e.g. one on your system and the one installed by IJulia)? |
yes and no: I get the same error on my laptop where I only have |
Can you We try to find the best JupyterLab to use; it defaults to the one in your path and if there is none it tries to use the one IJulia installs (if any). |
I get identical result to screenshot above, after (including the jupyterlab() Info so you see which one is run) (v1.1) pkg> build WebIO
Building MbedTLS → `~/.julia/packages/MbedTLS/X4xar/deps/build.log`
Building WebIO ──→ `~/.julia/packages/WebIO/9qsL8/deps/build.log`
julia> using IJulia
[ Info: Recompiling stale cache file /Users/abradley/.julia/compiled/v1.1/IJulia/nfu7T.ji for IJulia [7073ff75-c697-5162-941a-fcdaad2a7d2a]
julia> jupyterlab()
[ Info: running setenv(`/Users/abradley/.julia/conda/3/bin/jupyter lab`,["XPC_FLAGS=0x0", "VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.6/bin/python3", "PATH=/Users/abradley/.julia/conda/3/bin:/Applications/OpenSCAD.app/Contents/MacOS/:/Applications/Julia-1.1.app/Contents/Resources/julia/bin/:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin:/usr/local/texlive/2016/bin/x86_64-darwin:/Users/abradley/Library/Python/3.6/bin:", "PWD=/Users/abradley", "VIRTUALENVWRAPPER_PROJECT_FILENAME=.project", "XPC_SERVICE_NAME=0", "TERM_PROGRAM=Apple_Terminal", "DISPLAY=/private/tmp/com.apple.launchd.kqoUxZCAzq/org.macosforge.xquartz:0", "SHELL=/bin/bash", "VIRTUALENVWRAPPER_SCRIPT=/Users/abradley/Library/Python/3.6/bin/virtualenvwrapper.sh", "__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0", "TMPDIR=/var/folders/3l/7hpnhzns3qgbwvmqzm23bqtc0000gn/T/", "BROWSER=open", "LANG=en_NZ.UTF-8", "SHLVL=0", "LOGNAME=abradley", "TERM_SESSION_ID=C95D59EA-0EB4-4571-BC47-5BE52908AD53", "SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.HJBe7By2Bw/Listeners", "VIRTUALENVWRAPPER_WORKON_CD=1", "Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.3WjyJ6GDeZ/Render", "USER=abradley", "VIRTUALENVWRAPPER_HOOK_DIR=/Users/abradley/.virtualenvs", "PROJECT_HOME=/Users/abradley/sites", "TERM=xterm-256color", "HOME=/Users/abradley", "TERM_PROGRAM_VERSION=404.1", "JULIA_NUM_THREADS=8", "WORKON_HOME=/Users/abradley/.virtualenvs", "OPENBLAS_MAIN_FREE=1"]) (v1.1) pkg> status WebIO
Status `~/.julia/environments/v1.1/Project.toml`
[0f1e0344] WebIO v0.8.6
(v1.1) pkg> status IJulia
Status `~/.julia/environments/v1.1/Project.toml`
[7073ff75] IJulia v1.18.1
julia> versioninfo()
Julia Version 1.1.0
Commit 80516ca202 (2019-01-21 21:24 UTC)
Platform Info:
OS: macOS (x86_64-apple-darwin14.5.0)
CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
Environment:
JULIA_NUM_THREADS = 8 |
I think there is an issue with the JS packages rn (the build fails on Travis). I'll (try to) look into this tonight. |
Same error here.. Due to undetected WebIO, it is not possible to use I've added Pkg.add("IJulia"), Pkg.add("WebIO")
In the command prompt, the output of
I hope someone give me a hint... |
Curiously, the above report by @AshtonSBradley did not raise any issue here... |
When I try to install the labextension I get julia> using WebIO, IJulia
julia> WebIO.install_jupyter_labextension()
ERROR: IOError: could not spawn `/usr/local/bin/jupyter labextension link --no-build /Users/abradley/.julia/packages/WebIO/9qsL8/packages/webio`: no such file or directory (ENOENT)
Stacktrace:
[1] _spawn_primitive(::String, ::Cmd, ::Array{Any,1}) at ./process.jl:400
[2] #505 at ./process.jl:413 [inlined]
[3] setup_stdios(::getfield(Base, Symbol("##505#506")){Cmd}, ::Array{Any,1}) at ./process.jl:497
[4] _spawn at ./process.jl:412 [inlined]
[5] #run#515(::Bool, ::Function, ::Cmd) at ./process.jl:725
[6] run at ./process.jl:724 [inlined]
[7] install_jupyter_labextension(::Cmd) at /Users/abradley/.julia/packages/WebIO/9qsL8/deps/jupyter.jl:132
[8] install_jupyter_labextension() at /Users/abradley/.julia/packages/WebIO/9qsL8/deps/jupyter.jl:131
[9] top-level scope at none:0 |
@travigd Seems like |
I'm working on some things to try to fix it right now (see #319). For now, this should work: |
works Julia 1.1! (not 1.0) |
Should be closed by #319. |
I fought with this issue for quite some time. Finally solved it with: |
Glad it worked! WebIO defaults to the first Jupyter in the path (though you can change this by passing in the path to the executable as the first argument) and if it can't find any, it uses the one installed by Conda.jl (as part of IJulia, usually). We're working on documentation to make things as easy as possible too. |
Ok. Fresh install on MacOS Mojave, with |
How do you launch Jupyter? What does |
That error message also needs to be updated because it's not done automagically anymore. Can you include the output of run(`$(WebIO.find_jupyter_cmd()) labextension list`)
run(`$(WebIO.find_jupyter_cmd()) nbextension list`) as well as the output from the |
julia> using WebIO
julia> run(`$(WebIO.find_jupyter_cmd()) labextension list`)
JupyterLab v1.0.2
Known labextensions:
app dir: /Users/abradley/.julia/conda/3/share/jupyter/lab
@webio/jupyter-lab-provider v0.8.8 enabled OK
Process(`/Users/abradley/.julia/conda/3/bin/jupyter labextension list`, ProcessExited(0))
julia> run(`$(WebIO.find_jupyter_cmd()) nbextension list`)
Known nbextensions:
config dir: /Users/abradley/.jupyter/nbconfig
notebook section
webio-jupyter-notebook enabled
- Validating: OK
Process(`/Users/abradley/.julia/conda/3/bin/jupyter nbextension list`, ProcessExited(0))
julia> WebIO.install_jupyter_labextension()
[ Info: Using default Jupyter executable at `/Users/abradley/.julia/conda/3/bin/jupyter`; to use a different executable, see the documentation by running `?WebIO.install_jupyter_labextension`.
[LabBuildApp] JupyterLab 1.0.2
[LabBuildApp] Building in /Users/abradley/.julia/conda/3/share/jupyter/lab
[LabBuildApp] Building jupyterlab assets
Process(`/Users/abradley/.julia/conda/3/bin/jupyter lab build`, ProcessExited(0))
julia> WebIO.install_jupyter_nbextension()
[ Info: Installing Jupyter WebIO extension...
Up to date: /Users/abradley/Library/Jupyter/nbextensions/webio-jupyter-notebook.js
To initialize this nbextension in the browser every time the notebook (or other app) loads:
jupyter nbextension enable <the entry point> --user
Enabling notebook extension webio-jupyter-notebook...
- Validating: OK
Process(`/Users/abradley/.julia/conda/3/bin/jupyter nbextension enable --user webio-jupyter-notebook`, ProcessExited(0)) |
Have you refreshed the window and/or restarted Jupyter? Does the toy example that you opened this issue with work? How about |
I have this issue in JupyterLab 1.0 It is possible to install the jupyter lab provider extension, however WebIO claims afterwards: I tried uninstalling everything, running jupyter lab clean, and running WebIO.install_jupyter_serverextension and WebIO.install_jupyter_labextension and verifying the jupyter location is correct. There are no errors in the JavaScript browser console, and |
I can reproduce this. This is likely related to changes in the latest version of WebIO. Will debug. |
I'm getting an error on master when trying
The log file is
|
What a terribly unhelpful log message:
Can you make sure you run
(the |
julia> versioninfo()
Julia Version 1.1.1
Commit 55e36cc (2019-05-16 04:10 UTC)
Platform Info:
OS: macOS (x86_64-apple-darwin15.6.0)
CPU: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-6.0.1 (ORCJIT, skylake) |
Unfortunately I can't reproduce this. I suspect you might be infected by the previous "bad" (i.e. not-working/buggy) WebIO jupyterlab extension. Can you try nuking conda and see if that fixes things? run(`rm -rf ~/.julia/dev/conda`)
using Pkg
Pkg.build("Conda")
using IJulia, WebIO
WebIO.install_jupyter_labextension()
jupyterlab() |
The first one is (probably) because you have Jupyter notebook installed through pip or homebrew. You can specify force_conda_jupyter to make WebIO use the one installed by IJulia (assuming that's how you launch jupyterlab). The second one will require you to upgrade jupyterlab. You should be able to There seem to be some issues with jupyterlab ATM concerning the initial render. Usually refreshing makes things work. |
In the first one, this is just a standard install on a new machine, following the IJulia install, so I don't think that is it. If I try to force it, how and to what do I supply the The second one initially seemed fixed by your suggestion, but then on restart, sliders no longer update, as for the first one. |
WebIO uses the first WebIO.install_jupyter_labextension(; force_conda_jupyter=true) I don't have a fix for the second other than just "refresh until it works." Hopefully I'll have some time to look into that soon. |
Checking the third one (all I have access to atm) using this gives a slightly different error shell> rm -rf ~/.julia/dev/conda
(v1.1) pkg> build Conda
Building Conda → `~/.julia/packages/Conda/kLXeC/deps/build.log`
julia> using IJulia, WebIO
julia> WebIO.install_jupyter_labextension(;force_conda_jupyter=true)
[ Info: Using default Jupyter executable at `/Users/abradley/.julia/conda/3/bin/jupyter`; to use a different executable, see the documentation by running `?WebIO.install_jupyter_labextension`.
Errored, use --debug for full output:
ValueError: No linked package for @webio/webio
Node v12.5.0
No labextension named "@webio/jupyter-lab-provider" installed
Node v12.5.0
> /usr/local/bin/npm pack @webio/jupyter-lab-provider@0.8.9
npm notice
npm notice 📦 @webio/jupyter-lab-provider@0.8.9
npm notice === Tarball Contents ===
npm notice 16.6kB dist/labextension.js
npm notice 957B package.json
npm notice 438B README.md
npm notice === Tarball Details ===
npm notice name: @webio/jupyter-lab-provider
npm notice version: 0.8.9
npm notice filename: webio-jupyter-lab-provider-0.8.9.tgz
npm notice package size: 5.3 kB
npm notice unpacked size: 18.0 kB
npm notice shasum: 6515884136f4969862ea1184ad5f32aee4413178
npm notice integrity: sha512-x3N+WghI7hSGR[...]0pQeyr/awc6MA==
npm notice total files: 3
npm notice
webio-jupyter-lab-provider-0.8.9.tgz
Errored, use --debug for full output:
ValueError:
"@webio/[email protected]" is not compatible with the current JupyterLab
Conflicting Dependencies:
JupyterLab Extension Package
>=0.19.1 <0.20.0 >=1.0.1 <2.0.0 @jupyterlab/application
>=0.19.1 <0.20.0 >=1.0.1 <2.0.0 @jupyterlab/docmanager
>=0.19.2 <0.20.0 >=1.0.1 <2.0.0 @jupyterlab/notebook
>=0.19.1 <0.20.0 >=1.0.1 <2.0.0 @jupyterlab/rendermime
>=3.2.1 <4.0.0 >=4.0.1 <5.0.0 @jupyterlab/services
ERROR: failed process: Process(`/Users/abradley/.julia/conda/3/bin/jupyter labextension install --no-build @webio/[email protected]`, ProcessExited(1)) [1]
Stacktrace:
[1] error(::String, ::Base.Process, ::String, ::Int64, ::String) at ./error.jl:42
[2] pipeline_error at ./process.jl:785 [inlined]
[3] #run#515(::Bool, ::Function, ::Cmd) at ./process.jl:726
[4] run at ./process.jl:724 [inlined]
[5] #install_jupyter_labextension#66(::Bool, ::Bool, ::Function, ::Nothing) at /Users/abradley/.julia/packages/WebIO/n3Ii6/deps/jupyter.jl:159
[6] #install_jupyter_labextension at ./none:0 [inlined] (repeats 2 times)
[7] top-level scope at none:0 |
On the third one (macOS Mojave 10.14.6) I no longer get a major error after nuking
Then the sliders come appear (WebIO not detected is no longer the issue), but again, they don't update when slid ... Should I open a new issue? |
I have the same problem shown in the message above on Ubuntu 18.04.
Anyway to fix this problem? Thank you. |
@jzazo did you ever get this working? |
Well, I was using ECharts.jl to plot some figures and I could not get it to work on Jupyter nor Atom. However it did work using Blink.jl on terminal, and that sufficed to me. Sorry I cannot help, it didn't work for me. |
I seem to have made some progress on this, though I'm running Jupyter Lab in a docker container on Debian. For me, the reason none of this was working (Specifically that WebIO couldn't be found) was because I was mounting/using a custom Jupyter config file. It turns out, during the container build, What I've had to do is edit the As a note, I do still get the |
I should also add the output of
|
Haha what's that? Yeah this situation sounds a bit out of our control. Although running the install command after your Dockerfile is done setting up (like at the very end) should work too. |
My thought in posting was less about Docker (because obviously that's not WebIO's problem :P) but more sharing what I found was the hang up. Maybe some of the people for whom this isn't working aren't having the right lines added to their Jupyter Config or perhaps they're overwriting the one created by the WebIO installation procedure without realizing it? |
Hello, I'd like to share with everyone the solution that helped me get out of this problem of not being able to use Interact because of the said error: WebIO not detected in jupyterlab After All my troubleshooting, removing and reinstalling Julia, IJulia, Interact and etc, what helped me was as simple as running from "Anaconda PowerShell Prompt (3)" the next code:
NOTE: It doesn't matters if you have it already installed from IJulia, I saw no conflict at the time of using this command. This worked on my case, but I'm not 100% sure that it'll do the same in every case. |
Can confirm, both Interact.jl and PlotlyJS.jl have the same problem in Windows and Linux. I have been trying for 2 days to sort it :/ It would be nice if documentation could be expanded a little and to include a simple test to debug what may be going on with WebIO and Juypyterlab detecting it. |
I know of no solution. I found this so disheartening when dealing with large student groups that I gave up on jupyterlab and moved to Pluto several years ago. For me this proven a highly robust solution to the problem. |
I don't know if this helps debugging this issue but on brand new systemwide installation of jupyterlab via The module 'jupyter_nbextensions_configurator' could not be found (No module named 'jupyter_nbextensions_configurator'). Are you sure the extension is installed?
Traceback (most recent call last):
File "/Users/ctl/.pyenv/versions/3.10.9/lib/python3.10/site-packages/jupyter_server/extension/manager.py", line 322, in add_extension
extpkg = ExtensionPackage(name=extension_name, enabled=enabled)
File "/Users/ctl/.pyenv/versions/3.10.9/lib/python3.10/site-packages/jupyter_server/extension/manager.py", line 186, in __init__
self._load_metadata()
File "/Users/ctl/.pyenv/versions/3.10.9/lib/python3.10/site-packages/jupyter_server/extension/manager.py", line 201, in _load_metadata
raise ExtensionModuleNotFound(msg) from None
jupyter_server.extension.utils.ExtensionModuleNotFound: The module 'jupyter_nbextensions_configurator' could not be found (No module named 'jupyter_nbextensions_configurator'). Are you sure the extension is installed?
[W 2023-12-04 22:59:20.748 ServerApp] webio_jupyter_extension.serverextension | error adding extension (enabled: True): The module 'webio_jupyter_extension.serverextension' could not be found (No module named 'notebook'). Are you sure the extension is installed?
Traceback (most recent call last):
File "/Users/ctl/.pyenv/versions/3.10.9/lib/python3.10/site-packages/jupyter_server/extension/manager.py", line 322, in add_extension
extpkg = ExtensionPackage(name=extension_name, enabled=enabled)
File "/Users/ctl/.pyenv/versions/3.10.9/lib/python3.10/site-packages/jupyter_server/extension/manager.py", line 186, in __init__
self._load_metadata()
File "/Users/ctl/.pyenv/versions/3.10.9/lib/python3.10/site-packages/jupyter_server/extension/manager.py", line 201, in _load_metadata
raise ExtensionModuleNotFound(msg) from None
jupyter_server.extension.utils.ExtensionModuleNotFound: The module 'webio_jupyter_extension.serverextension' could not be found (No module named 'notebook'). Are you sure the extension is installed?
[I 2023-12-04 22:59:20.748 ServerApp] notebook_shim | extension was successfully linked.
[I 2023-12-04 22:59:20.774 ServerApp] notebook_shim | extension was successfully loaded.
[I 2023-12-04 22:59:20.775 ServerApp] jupyter_lsp | extension was successfully loaded.
[I 2023-12-04 22:59:20.776 ServerApp] jupyter_server_terminals | extension was successfully loaded.
[I 2023-12-04 22:59:20.778 LabApp] JupyterLab extension loaded from /Users/ctl/.pyenv/versions/3.10.9/lib/py Also, I don't get WebIO not detected -although I do if jupyter runs within vscode- |
@ctrebbau did you end up fixing this or finding an alternative? I am at the same place and a fear that I may just have to abandon my old notebooks :( |
The bug
When using
Interact.jl
in jupyterlab, specifically@manipulate
, one gets the message"WebIO not detected."
and no output is produced.
Context
Your context here.
Using
jupyterlab
. I don't know how to runjupyter labextension list
for the containerizedjupyterlab
installed byIJulia
. Possibly I am just missing an extension?It works fine in the
jupyter
notebook fromIJulia
.The text was updated successfully, but these errors were encountered: