timkpaine / jupyterlab_iframe Goto Github PK
View Code? Open in Web Editor NEWView html as an embedded iframe in JupyterLab
License: Apache License 2.0
View html as an embedded iframe in JupyterLab
License: Apache License 2.0
JupyterLab 2.0.0 is out, and this extension have conflicting dependencies with its core packages.
Conflicting Dependencies:
JupyterLab Extension Package
>=2.0.0 <2.1.0 >=1.0.0 <2.0.0 @jupyterlab/application
>=2.0.0 <2.1.0 >=1.0.0 <2.0.0 @jupyterlab/apputils
>=4.0.0 <4.1.0 >=3.0.0 <4.0.0 @jupyterlab/coreutils
>=2.0.0 <2.1.0 >=1.0.0 <2.0.0 @jupyterlab/docmanager
Following the naming convention would be nice :)
Running
$ pip install jupyterlab_iframe
shows the following error:
running install_scripts
error: [Errno 2] No such file or directory: 'LICENSE'
----------------------------------------
Failed building wheel for jupyterlab-iframe
Running setup.py clean for jupyterlab-iframe
Failed to build jupyterlab-iframe
With the requirement of tornado 6.x the version 0.0.12 is limited to jupyter installations which can handle tornado 6.x by all its extensions. We tried to switch with our setup to tornado 6.x and see quite some issues. Now we are back on tornado 5.1.1 again.
Is it possible to avoid the requirement of tornado>=6 for your extension?
For a notebook with a link to some reference documentation it would be nice if by default the web page was opened in jupyterlab_iframe
so you could use the powerful phosphor layout capabilities to place it where you want rather than have it open in a new tab.
Ctrl-click could then as usual open in a new tab and there could be a context menu item for that too.
Hi timkpaine,
I love the welcome page of jupyterlab_iframe.
For some reason the generated HTML-code for the welcome page includes "iframes/proxy?path". I can reproduce it with jupyterlab_iframe 0.0.11 installed with jupyter 0.35.6 .
The HTML-code reads like this:
<iframe baseuri="http://localhost:8888/" src="iframes/proxy?path=http://www.fz-juelich.de/jsc"></iframe> but should be <iframe baseuri="http://localhost:8888/" src="http://www.fz-juelich.de/jsc"></iframe>don't open #12 on page refresh
jupyterlab_iframe/src/index.ts
Line 148 in 8289126
The ujson
dependency requires gcc to be install as it is a c based library. This adds unnecessary overhead if the compilers are not available. I don't want to have to install build tools just for a simple JupyterLab widget.
Given that ujson
is designed for performance, and the only place in this library that it is used is to stringify a very simple dictionary I would recommend switching it to the regular json
package from the standard library.
This would also resolve #11.
(Not really an issue for me, I am fine using a virtualenv ...)
Using python 3
virtual_env_install.log
conda_info.txt
conda_install.log
Let me know if you need any more info.
Thanks
Looks like @ian-r-rose is implementing this upstream:
jupyterlab/jupyterlab#5855
Possibly as an alternative to #8
https://www.google.com
I see...My browser end up trying to access something on my domain, that is in reality located on www.google.com domain, after a link referenced /something
that resides on www.google.com.
<iframe src="https://my-jupyterhub.com/user/erik/iframes/proxy?path=https://www.google.com">
<!--
The link below is making my browser attempt to fetch:
https://my-jupyterhub.com/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png
It should in this case instead try to fetch the same image but on the google.com domain.
-->
<img src="/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png">
<!-- ... -->
</iframe>
I'm not sure if this relates to #40 or not, so I decided to open a new issue. I'm also not sure if there is a good method to manage this situation in a sustainable way, perhaps sometimes links should act like this, but perhaps not always, I'm not sure.
Background info: Im running JupyterLab v1.2.0 on Ubuntu and followed the jupyterlab_iframe installation instructions. I have not done the optional update to jupyter_notebook_config.py
When I enter a URL into the "Open IFrame" menu option, (ie http://tim.paine.nyc/), I only receive 404 not found errors. From looking at the output of a locally running (flask based) site when I try connecting to it (http://localhost:5000), I dont see any attempt to connect. However, wget http://localhost:5000
works as expected.
any thoughts where to start with debugging this?
I am having difficulty installing the extension and assume it has to do with the version of Jupyterlab that I have installed.
(Python3.6) root@988ed40b16c7:~/HDD/SignalProcessing/notebooks# jupyter labextension install jupyterlab_iframe
Node v10.8.0
> /opt/conda/bin/npm pack jupyterlab_iframe
npm notice
npm notice ๐ฆ [email protected]
npm notice === Tarball Contents ===
npm notice 810B package.json
npm notice 11.4kB LICENSE
npm notice 1.2kB README.md
npm notice 164B lib/index.d.ts
npm notice 6.5kB lib/index.js
npm notice 117B style/index.css
npm notice === Tarball Details ===
npm notice name: jupyterlab_iframe
npm notice version: 0.1.8
npm notice filename: jupyterlab_iframe-0.1.8.tgz
npm notice package size: 6.9 kB
npm notice unpacked size: 20.2 kB
npm notice shasum: 1a36ac05d014d0800f16a710f0682f24faa802c3
npm notice integrity: sha512-XYwrEuDq6xEK9[...]VX+Ueh72XiULA==
npm notice total files: 6
npm notice
jupyterlab_iframe-0.1.8.tgz
Errored, use --debug for full output:
ValueError: This extension does not yet support the current version of JupyterLab.
Conflicting Dependencies:
JupyterLab Extension Package
>=0.19.1 <0.20.0 >=0.18.0 <0.19.0 @jupyterlab/application
>=0.19.1 <0.20.0 >=0.18.0 <0.19.0 @jupyterlab/apputils
>=0.19.1 <0.20.0 >=0.18.0 <0.19.0 @jupyterlab/docmanager
(Python3.6) root@988ed40b16c7:~/HDD/SignalProcessing/notebooks#
(Python3.6) root@988ed40b16c7:~/HDD/SignalProcessing/notebooks# jupyter labextension listJupyterLab v0.35.1
Known labextensions:
app dir: /opt/conda/share/jupyter/lab
@jupyter-widgets/jupyterlab-manager v0.38.1 enabled OK
@jupyterlab/celltags v0.1.4 enabled OK
@jupyterlab/fasta-extension v0.18.0 enabled OK
@jupyterlab/geojson-extension v0.18.0 enabled OK
@jupyterlab/git v0.4.2 enabled OK
@jupyterlab/katex-extension v0.19.1 enabled OK
@jupyterlab/latex v0.6.0 enabled OK
@jupyterlab/mathjax3-extension v0.3.0 enabled OK
@jupyterlab/plotly-extension v0.18.0 enabled OK
@jupyterlab/toc v0.6.0 enabled OK
@jupyterlab/vega2-extension v0.18.0 enabled OK
@jupyterlab/vega3-extension v0.18.0 enabled OK
@jupyterlab/xkcd-extension v0.6.0 enabled OK
@mflevine/jupyterlab_html v0.1.4 enabled OK
jupyterlab_bokeh v0.2.0 enabled OK
(Python3.6) root@988ed40b16c7:~/HDD/SignalProcessing/notebooks#
Hello!
After doing:
jupyter labextension install jupyterlab_iframe
I have this log error
raceback (most recent call last):
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/commands.py", line 1657, in _node_check
output = subprocess.check_output([node, 'node-version-check.js'], cwd=HERE)
File "/opt/anaconda3/lib/python3.7/subprocess.py", line 395, in check_output
**kwargs).stdout
File "/opt/anaconda3/lib/python3.7/subprocess.py", line 487, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['/opt/anaconda3/bin/node', 'node-version-check.js']' returned non-zero exit status 1.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/debuglog.py", line 47, in debug_logging
yield
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/labextensions.py", line 93, in start
ans = self.run_task()
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/labextensions.py", line 147, in run_task
for i, arg in enumerate(self.extra_args)
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/labextensions.py", line 147, in <listcomp>
for i, arg in enumerate(self.extra_args)
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/commands.py", line 319, in install_extension
_node_check(logger)
File "/opt/anaconda3/lib/python3.7/site-packages/jupyterlab/commands.py", line 1660, in _node_check
data = CoreConfig()._data
NameError: name 'CoreConfig' is not defined
Exiting application: jupyter
This is my system:
JupyterLab v1.1.4
Known labextensions:
app dir: /opt/anaconda3/share/jupyter/lab
@jpmorganchase/perspective-jupyterlab v0.2.23 enabled OK
@jupyter-widgets/jupyterlab-manager v1.0.2 enabled OK
@jupyterlab/github v1.0.1 enabled OK
@jupyterlab/hub-extension v1.1.3 enabled OK
@jupyterlab/toc v1.0.1 enabled OK
@lckr/jupyterlab_variableinspector v0.3.0 enabled OK
@ryantam626/jupyterlab_code_formatter v0.5.0 enabled OK
dask-labextension v1.0.1 disabled OK
ipysheet v0.4.3 enabled OK
jupyter-matplotlib v0.4.2 enabled OK
jupyterlab-datawidgets v6.2.0 enabled OK
jupyterlab-drawio v0.6.0 enabled OK
jupyterlab-logout v0.4.0 enabled OK
jupyterlab-nvdashboard v0.1.9 disabled OK
jupyterlab-spreadsheet v0.2.0 enabled OK
jupyterlab-system-monitor v0.4.1 enabled OK
jupyterlab-theme-toggle v0.4.2 enabled OK
jupyterlab-topbar-extension v0.4.0 enabled OK
jupyterlab-topbar-text v0.4.0 enabled OK
jupyterlab_bokeh v1.0.0 enabled OK
jupyterlab_tensorboard v0.1.6 disabled OK
k3d v2.6.9 enabled OK
plotlywidget v1.1.1 enabled OK
qgrid v1.1.1 enabled OK
$PATH:
/opt/anaconda3/bin
/opt/anaconda3/condabin
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/snap/bin
sys.path:
/opt/anaconda3/bin
/opt/anaconda3/lib/python37.zip
/opt/anaconda3/lib/python3.7
/opt/anaconda3/lib/python3.7/lib-dynload
/opt/anaconda3/lib/python3.7/site-packages
sys.executable:
/opt/anaconda3/bin/python3.7
sys.version:
3.7.4 (default, Aug 13 2019, 20:35:49)
[GCC 7.3.0]
platform.platform():
Linux-4.15.0-47-generic-x86_64-with-debian-buster-sid
which -a jupyter:
/opt/anaconda3/bin/jupyter
/usr/local/bin/jupyter
pip list:
Package Version
----------------------------- ---------
absl-py 0.8.0
aiohttp 3.6.1
alabaster 0.7.12
alembic 1.2.0
anaconda-client 1.7.2
anaconda-navigator 1.9.7
appdirs 1.4.3
apptools 4.4.0
asn1crypto 1.0.1
astor 0.8.0
astroid 2.3.1
async-generator 1.10
async-timeout 3.0.1
attrs 19.2.0
Babel 2.7.0
backcall 0.1.0
backports.functools-lru-cache 1.5
backports.tempfile 1.0
backports.weakref 1.0.post1
beautifulsoup4 4.8.0
bibtexparser 1.1.0
black 19.3b0
bleach 3.1.0
blinker 1.4
bokeh 1.3.4
boto 2.49.0
boto3 1.9.243
botocore 1.12.243
bqplot 0.11.8
Brian2 2.2.2.1
bs4 0.0.1
bz2file 0.98
caiman 1.0
certifi 2019.9.11
certipy 0.1.3
cffi 1.12.3
chardet 3.0.4
Click 7.0
cloudpickle 1.2.2
clyent 1.2.2
colorcet 2.0.2
colorlover 0.3.0
conda 4.7.12
conda-build 3.18.9
conda-package-handling 1.6.0
conda-verify 3.4.2
configobj 5.0.6
connected-components-3d 1.4.1
cryptography 2.7
cufflinks 0.16
cupy-cuda101 6.3.0
cycler 0.10.0
Cython 0.29.13
cytoolz 0.10.0
dask 2.5.2
dask-labextension 1.0.3
datashader 0.7.0
datashape 0.5.4
decorator 4.4.0
defusedxml 0.6.0
distributed 2.5.2
docutils 0.15.2
elephant 0.6.3
entrypoints 0.3
envisage 4.8.0
Faker 2.0.2
fastrlock 0.4
filelock 3.0.12
finance-enums 0.1.0
fsspec 0.5.2
future 0.17.1
gast 0.3.2
gensim 3.8.1
glob2 0.7
google-pasta 0.1.7
grpcio 1.16.1
h5py 2.9.0
hdbscan 0.8.22
hdmf 1.2.0
HeapDict 1.0.1
holoviews 1.12.5
idna 2.8
imageio 2.6.0
imagesize 1.1.0
ipydatawidgets 4.0.1
ipykernel 5.1.2
ipympl 0.3.3
ipyparallel 6.2.4
ipyscales 0.3.0
ipysheet 0.4.3
ipython 7.8.0
ipython-genutils 0.2.0
ipywidgets 7.5.1
isbnlib 3.9.8
isort 4.3.21
itk-core 5.0.1
itk-filtering 5.0.1
itk-io 5.0.1
itk-numerics 5.0.1
itk-registration 5.0.1
itk-segmentation 5.0.1
itkwidgets 0.20.0
jedi 0.15.1
jeepney 0.4.1
Jinja2 2.10.3
jmespath 0.9.4
joblib 0.13.2
json5 0.8.5
jsonschema 3.0.2
jupyter 1.0.0
jupyter-client 5.3.3
jupyter-console 6.0.0
jupyter-core 4.5.0
jupyter-rsession-proxy 1.0b6
jupyter-server-proxy 1.1.0
jupyter-tensorboard 0.1.10
jupyterhub 1.0.0
jupyterhub-dummyauthenticator 0.3.1
jupyterlab 1.1.4
jupyterlab-code-formatter 0.5.0
jupyterlab-iframe 0.2.1
jupyterlab-nvdashboard 0.1.9
jupyterlab-server 1.0.6
K3D 2.6.9
Keras 2.2.5
Keras-Applications 1.0.8
Keras-Preprocessing 1.1.0
keyring 18.0.0
kiwisolver 1.1.0
latexcodec 1.0.7
lazy-object-proxy 1.4.2
libarchive-c 2.8
lief 0.9.0
lineup-widget 1.0.7
livereload 2.6.1
llvmlite 0.29.0
locket 0.2.0
Mako 1.1.0
Markdown 3.1.1
MarkupSafe 1.1.1
matplotlib 3.1.1
mayavi 4.6.2
mccabe 0.6.1
mimesis 3.3.0
mistune 0.8.4
mkdocs 1.0.4
mkdocs-cinder 0.17.0
mne 0.16.2
mpmath 1.1.0
msgpack 0.6.1
multidict 4.5.2
multipledispatch 0.6.0
mypy 0.720
mypy-extensions 0.4.1
natsort 6.0.0
navigator-updater 0.2.1
nbconvert 5.6.0
nbformat 4.4.0
nbresuse 0.3.2
nbserverproxy 0.8.8
neo 0.7.2
networkx 2.3
nibabel 2.5.1
nltk 3.4.5
nose 1.3.7
notebook 6.0.1
numba 0.45.1
numpy 1.17.2
numpydoc 0.9.1
oauthlib 3.1.0
olefile 0.46
opencv-python 4.1.1.26
opencv-rolling-ball 1.0.1
packaging 19.2
pamela 1.0.0
pandas 0.25.1
pandocfilters 1.4.2
param 1.9.1
parso 0.5.1
partd 1.0.0
patsy 0.5.1
PeakUtils 1.3.2
perspective-python 0.1.11
pexpect 4.7.0
pickleshare 0.7.5
Pillow 6.2.0
PIMS 0.4.1
pip 19.2.3
pkginfo 1.5.0.1
plotly 3.10.0
progress 1.5
prometheus-client 0.7.1
prompt-toolkit 2.0.10
protobuf 3.9.2
pscript 0.7.1
psutil 5.6.3
ptyprocess 0.6.0
pycodestyle 2.5.0
pycosat 0.6.3
pycparser 2.19
pyct 0.4.6
pycurl 7.43.0.3
pydicom 1.3.0
pyEDFlib 0.1.14
pyface 6.1.2
pyflakes 2.1.1
Pygments 2.4.2
PyJWT 1.7.1
pylint 2.4.2
pymdown-extensions 6.0
pynvml 8.0.3
pynwb 1.1.0
pyOpenSSL 19.0.0
pyparsing 2.4.2
PyQt5 5.12.2
PyQt5-sip 4.19.19
pyqtgraph 0.10.0
pyrsistent 0.15.4
pyscap 0.0.33
PySocks 1.7.1
pysurfer 0.8.0
python-dateutil 2.8.0
python-editor 1.0.4
python-magic 0.4.15
pytz 2019.3
pyviz-comms 0.7.2
PyWavelets 1.0.3
PyYAML 5.1.2
pyzmq 18.1.0
qgrid 1.1.1
QtAwesome 0.6.0
qtconsole 4.5.5
QtPy 1.9.0
quantities 0.12.3
rastermap 0.0.6
requests 2.22.0
retrying 1.3.3
rope 0.14.0
rsconnect-jupyter 1.2.1.93
ruamel-yaml 0.15.46
ruamel.yaml 0.16.5
ruamel.yaml.clib 0.1.2
s3transfer 0.2.1
scikit-image 0.15.0
scikit-learn 0.21.3
scipy 1.3.1
seaborn 0.9.0
SecretStorage 3.1.1
Send2Trash 1.5.0
setuptools 41.4.0
sidecar 0.3.0
simpervisor 0.3
six 1.12.0
slicerator 1.0.0
smart-open 1.8.4
snowballstemmer 2.0.0
sortedcontainers 2.1.0
soupsieve 1.9.3
Sphinx 2.2.0
sphinxcontrib-applehelp 1.0.1
sphinxcontrib-devhelp 1.0.1
sphinxcontrib-htmlhelp 1.0.2
sphinxcontrib-jsmath 1.0.1
sphinxcontrib-qthelp 1.0.2
sphinxcontrib-serializinghtml 1.1.3
spyder 3.3.6
spyder-kernels 0.5.2
SQLAlchemy 1.3.9
statsmodels 0.10.1
suite2p 0.5.5
sympy 1.4
tblib 1.4.0
tensorboard 1.14.0
tensorflow 1.14.0
tensorflow-estimator 1.14.0
termcolor 1.1.0
terminado 0.8.2
testpath 0.4.2
text-unidecode 1.3
tifffile 0.15.1
toml 0.10.0
toolz 0.10.0
tornado 6.0.3
tqdm 4.36.1
traitlets 4.3.3
traits 5.1.2
traitsui 6.1.3
traittypes 0.2.1
typed-ast 1.4.0
typing-extensions 3.7.4
ujson 1.35
urllib3 1.24.2
vtk 8.2.0
vtkplotter 2019.4.5
wcwidth 0.1.7
webencodings 0.5.1
websocket-client 0.56.0
Werkzeug 0.16.0
wheel 0.33.6
widgetsnbextension 3.5.1
wrapt 1.11.2
wurlitzer 1.0.3
xarray 0.13.0
xlrd 1.2.0
yarl 1.3.0
zict 1.0.0
zstandard 0.12.0
conda list:
# packages in environment at /opt/anaconda3:
#
# Name Version Build Channel
_ipyw_jlab_nb_ext_conf 0.1.0 py37_0
_libgcc_mutex 0.1 main
_tflow_select 2.3.0 mkl
absl-py 0.8.0 py37_0
aiohttp 3.6.1 pypi_0 pypi
alabaster 0.7.12 py37_0
alembic 1.2.0 py_0
anaconda-client 1.7.2 py37_0
anaconda-navigator 1.9.7 py37_0
appdirs 1.4.3 py37h28b3542_0
apptools 4.4.0 py37_1
asn1crypto 1.0.1 py37_0
astor 0.8.0 py37_0
astroid 2.3.1 py37_0
async-timeout 3.0.1 pypi_0 pypi
async_generator 1.10 py37h28b3542_0
attrs 19.2.0 py_0
babel 2.7.0 py_0
backcall 0.1.0 py37_0
backports 1.0 py_2
backports.functools_lru_cache 1.5 py_2
backports.tempfile 1.0 py_1
backports.weakref 1.0.post1 py_1
beautifulsoup4 4.8.0 py37_0
bibtexparser 1.1.0 pypi_0 pypi
black 19.3b0 py_0
blas 2.12 openblas conda-forge
bleach 3.1.0 py37_0
blinker 1.4 py37_0
bokeh 1.3.4 py37_0
boto 2.49.0 pypi_0 pypi
boto3 1.9.243 pypi_0 pypi
botocore 1.12.243 pypi_0 pypi
bqplot 0.11.8 py_0 conda-forge
brian2 2.2.2.1 pypi_0 pypi
bs4 0.0.1 pypi_0 pypi
bz2file 0.98 py37_1
bzip2 1.0.8 h7b6447c_0
c-ares 1.15.0 h7b6447c_1001
ca-certificates 2019.8.28 0
caiman 1.6 py37hb3f55d8_0 conda-forge
cairo 1.16.0 h18b612c_1001 conda-forge
certifi 2019.9.11 py37_0
certipy 0.1.3 py_0
cffi 1.12.3 py37h2e261b9_0
chardet 3.0.4 py37_1003
click 7.0 py37_0
cloudpickle 1.2.2 py_0
clyent 1.2.2 py37_1
colorcet 2.0.2 py_0
colorlover 0.3.0 pypi_0 pypi
conda 4.7.12 py37_0
conda-build 3.18.9 py37_3
conda-env 2.6.0 1
conda-package-handling 1.6.0 py37h7b6447c_0
conda-verify 3.4.2 py_1
configobj 5.0.6 py37_1
configurable-http-proxy 4.0.1 node6_0
connected-components-3d 1.4.1 pypi_0 pypi
cryptography 2.7 py37h1ba5d50_0
cudatoolkit 10.1.168 0
cufflinks 0.16 pypi_0 pypi
cupy-cuda101 6.3.0 pypi_0 pypi
curl 7.65.3 hbc83047_0
cycler 0.10.0 py37_0
cython 0.29.13 pypi_0 pypi
cytoolz 0.10.0 py37h7b6447c_0
dask 2.5.2 py_0
dask-core 2.5.2 py_0
dask-labextension 1.0.3 pypi_0 pypi
datashader 0.7.0 py_0
datashape 0.5.4 py37_1
dbus 1.13.6 he372182_0 conda-forge
decorator 4.4.0 py37_1
defusedxml 0.6.0 py_0
distributed 2.5.2 py_0
docutils 0.15.2 py37_0
elephant 0.6.3 pypi_0 pypi
entrypoints 0.3 py37_0
envisage 4.8.0 py_0
expat 2.2.6 he6710b0_0
faker 2.0.2 pypi_0 pypi
fastrlock 0.4 pypi_0 pypi
ffmpeg 4.1.3 h167e202_0 conda-forge
filelock 3.0.12 py_0
finance-enums 0.1.0 pypi_0 pypi
fontconfig 2.13.1 he4413a7_1000 conda-forge
freetype 2.9.1 h8a8886c_1
fsspec 0.5.2 py_0
future 0.17.1 py37_0
gast 0.3.2 py_0
gensim 3.8.1 pypi_0 pypi
gettext 0.19.8.1 hd7bead4_3
giflib 5.1.4 h14c3975_1
glib 2.58.3 h6f030ca_1002 conda-forge
glob2 0.7 py_0
gmp 6.1.2 h6c8ec71_1
gnutls 3.6.5 hd3a4fd2_1002 conda-forge
google-pasta 0.1.7 py_0
graphite2 1.3.13 h23475e2_0
grpcio 1.16.1 py37hf8bcb03_1
gst-plugins-base 1.14.5 h0935bb2_0 conda-forge
gstreamer 1.14.5 h36ae1b5_0 conda-forge
h5py 2.9.0 py37h7918eee_0
harfbuzz 2.4.0 h37c48d4_1 conda-forge
hdbscan 0.8.22 py37hd352d35_1 conda-forge
hdf4 4.2.13 h3ca952b_2
hdf5 1.10.4 hb1b8bf9_0
hdmf 1.2.0 py_0 conda-forge
heapdict 1.0.1 py_0
holoviews 1.12.5 py_0
icu 58.2 h9c2bf20_1
idna 2.8 py37_0
imageio 2.6.0 py37_0
imagesize 1.1.0 py37_0
ipydatawidgets 4.0.1 py_0 conda-forge
ipykernel 5.1.2 py37h39e3cac_0
ipympl 0.3.3 py_0
ipyparallel 6.2.4 py37_0
ipyscales 0.3.0 py_0 conda-forge
ipysheet 0.4.3 py_0 conda-forge
ipython 7.8.0 py37h39e3cac_0
ipython_genutils 0.2.0 py37_0
ipywidgets 7.5.1 py_0
isbnlib 3.9.8 pypi_0 pypi
isort 4.3.21 py37_0
itk 5.0.1 py37_0 conda-forge
itk-core 5.0.1 pypi_0 pypi
itk-filtering 5.0.1 pypi_0 pypi
itk-numerics 5.0.1 pypi_0 pypi
itk-registration 5.0.1 pypi_0 pypi
itk-segmentation 5.0.1 pypi_0 pypi
itkwidgets 0.20.0 py37_0 conda-forge
jasper 1.900.1 hd497a04_4
jedi 0.15.1 py37_0
jeepney 0.4.1 py_0
jinja2 2.10.3 py_0
jmespath 0.9.4 pypi_0 pypi
joblib 0.13.2 py37_0
jpeg 9c h14c3975_1001 conda-forge
json5 0.8.5 py_0
jsoncpp 1.8.4 hfd86e86_0
jsonschema 3.0.2 py37_0
jupyter 1.0.0 py37_7
jupyter-rsession-proxy 1.0b6 pypi_0 pypi
jupyter-server-proxy 1.1.0 pypi_0 pypi
jupyter-tensorboard 0.1.10 pypi_0 pypi
jupyter_client 5.3.3 py37_1
jupyter_console 6.0.0 py37_0
jupyter_core 4.5.0 py_0
jupyterhub 1.0.0 py37_0
jupyterhub-dummyauthenticator 0.3.1 pypi_0 pypi
jupyterlab 1.1.4 pyhf63ae98_0
jupyterlab-iframe 0.2.1 pypi_0 pypi
jupyterlab-nvdashboard 0.1.9 pypi_0 pypi
jupyterlab_code_formatter 0.5.0 py_0 conda-forge
jupyterlab_server 1.0.6 py_0
k3d 2.6.9 py_0 conda-forge
keras 2.2.5 pypi_0 pypi
keras-applications 1.0.8 py_0
keras-preprocessing 1.1.0 py_1
keyring 18.0.0 py37_0
kiwisolver 1.1.0 py37he6710b0_0
krb5 1.16.1 h173b8e3_7
lame 3.100 h14c3975_1001 conda-forge
latexcodec 1.0.7 pypi_0 pypi
lazy-object-proxy 1.4.2 py37h7b6447c_0
libarchive 3.3.3 h5d8350f_5
libblas 3.8.0 12_openblas conda-forge
libcblas 3.8.0 12_openblas conda-forge
libcurl 7.65.3 h20c2e04_0
libedit 3.1.20181209 hc058e9b_0
libffi 3.2.1 hd88cf55_4
libgcc 7.2.0 h69d50b8_2
libgcc-ng 9.1.0 hdf63c60_0
libgfortran-ng 7.3.0 hdf63c60_0
libiconv 1.15 h63c8f33_5
liblapack 3.8.0 12_openblas conda-forge
liblapacke 3.8.0 12_openblas conda-forge
liblief 0.9.0 h7725739_2
libnetcdf 4.6.1 h11d0813_2
libogg 1.3.2 h7b6447c_0
libopenblas 0.3.7 h6e990d7_1 conda-forge
libpng 1.6.37 hbc83047_0
libprotobuf 3.9.2 hd408876_0
libsodium 1.0.16 h1bed415_0
libssh2 1.8.2 h1ba5d50_0
libstdcxx-ng 9.1.0 hdf63c60_0
libtheora 1.1.1 h5ab3b9f_1
libtiff 4.0.10 h2733197_2
libuuid 2.32.1 h14c3975_1000 conda-forge
libvorbis 1.3.6 h7b6447c_0
libwebp 1.0.1 h8e7db2f_0
libxcb 1.13 h1bed415_1
libxml2 2.9.9 hea5a465_1
lineup-widget 1.0.7 pypi_0 pypi
livereload 2.6.1 py_0 conda-forge
llvmlite 0.29.0 py37hd408876_0
locket 0.2.0 py37_1
lz4-c 1.8.1.2 h14c3975_0
lzo 2.10 h49e0be7_2
mako 1.1.0 py_0
markdown 3.1 pypi_0 pypi
markupsafe 1.1.1 py37h7b6447c_0
matplotlib 3.1.1 py37h5429711_0
mayavi 4.6.2 py37hcf37d21_4
mccabe 0.6.1 py37_1
mimesis 3.3.0 pypi_0 pypi
mistune 0.8.4 py37h7b6447c_0
mkdocs 1.0.4 py_0 conda-forge
mkdocs-cinder 0.17.0 pypi_0 pypi
mne 0.16.2 py_0 conda-forge/label/gcc7
mpmath 1.1.0 pypi_0 pypi
msgpack-python 0.6.1 py37hfd86e86_1
multidict 4.5.2 pypi_0 pypi
multipledispatch 0.6.0 py37_0
mypy 0.720 py_0
mypy_extensions 0.4.1 py37_0
natsort 6.0.0 pypi_0 pypi
navigator-updater 0.2.1 py37_0
nbconvert 5.6.0 py37_1
nbformat 4.4.0 py37_0
nbresuse 0.3.2 pypi_0 pypi
nbserverproxy 0.8.8 pypi_0 pypi
ncurses 6.1 he6710b0_1
neo 0.7.2 pypi_0 pypi
nettle 3.4.1 h1bed415_1002 conda-forge
networkx 2.3 py_0
nibabel 2.5.1 py_0 conda-forge
nltk 3.4.5 pypi_0 pypi
nodejs 6.11.2 h3db8ef7_0
nose 1.3.7 py37_2
notebook 6.0.1 py37_0
numba 0.45.1 py37h962f231_0
numpy 1.17.2 py37hf9bf1b6_0
numpy-base 1.17.2 py37h2f8d375_0
numpydoc 0.9.1 py_0
oauthlib 3.1.0 py_0
olefile 0.46 py37_0
opencv 4.1.0 py37h4a2692f_3 conda-forge
opencv-python 4.1.1.26 pypi_0 pypi
opencv-rolling-ball 1.0.1 pypi_0 pypi
openh264 1.8.0 hdbcaa40_1000 conda-forge
openssl 1.1.1d h7b6447c_2
packaging 19.2 py_0
pamela 1.0.0 py_0
pandas 0.25.1 py37he6710b0_0
pandoc 2.2.3.2 0
pandocfilters 1.4.2 py37_1
param 1.9.1 py_0
parso 0.5.1 py_0
partd 1.0.0 py_0
patchelf 0.9 he6710b0_3
patsy 0.5.1 py37_0
pcre 8.43 he6710b0_0
peakutils 1.3.2 py_0 conda-forge
perspective-python 0.1.11 pypi_0 pypi
pexpect 4.7.0 py37_0
pickleshare 0.7.5 py37_0
pillow 6.2.0 py37h34e0f95_0
pims 0.4.1 py_1 conda-forge
pip 19.2.3 py37_0
pixman 0.38.0 h7b6447c_0
pkginfo 1.5.0.1 py37_0
plotly 3.10.0 pypi_0 pypi
progress 1.5 py37_0
prometheus_client 0.7.1 py_0
prompt_toolkit 2.0.10 py_0
protobuf 3.9.2 py37he6710b0_0
pscript 0.7.1 py_0
psutil 5.6.3 py37h7b6447c_0
ptyprocess 0.6.0 py37_0
py-lief 0.9.0 py37h7725739_2
pycodestyle 2.5.0 py37_0
pycosat 0.6.3 py37h14c3975_0
pycparser 2.19 py37_0
pyct 0.4.6 py37_0
pycurl 7.43.0.3 py37h1ba5d50_0
pydicom 1.3.0 py_0 conda-forge
pyedflib 0.1.14 py37h3010b51_1003 conda-forge
pyface 6.1.2 py37_0
pyflakes 2.1.1 py37_0
pygments 2.4.2 py_0
pyjwt 1.7.1 py37_0
pylint 2.4.2 py37_0
pymdown-extensions 6.0 pypi_0 pypi
pynvml 8.0.3 py_0 conda-forge
pynwb 1.1.0 py_0 conda-forge
pyopenssl 19.0.0 py37_0
pyparsing 2.4.2 py_0
pyqt 5.9.2 py37h05f1152_2
pyqt5 5.12.2 pypi_0 pypi
pyqt5-sip 4.19.19 pypi_0 pypi
pyqtgraph 0.10.0 py37h28b3542_3
pyrsistent 0.15.4 py37h7b6447c_0
pyscap 0.0.33 py37_0 local
pysocks 1.7.1 py37_0
pysurfer 0.8.0 py_1 conda-forge/label/gcc7
python 3.7.4 h265db76_1
python-dateutil 2.8.0 py37_0
python-editor 1.0.4 py_0
python-libarchive-c 2.8 py37_13
python-magic 0.4.15 pypi_0 pypi
pytz 2019.3 py_0
pyviz_comms 0.7.2 py_0
pywavelets 1.0.3 py37hdd07704_1
pyyaml 5.1.2 py37h7b6447c_0
pyzmq 18.1.0 py37he6710b0_0
qgrid 1.1.1 pypi_0 pypi
qt 5.9.7 h52cfd70_2 conda-forge
qtawesome 0.6.0 py_0
qtconsole 4.5.5 py_0
qtpy 1.9.0 py_0
quantities 0.12.3 pypi_0 pypi
rastermap 0.0.6 pypi_0 pypi
readline 7.0 h7b6447c_5
requests 2.22.0 py37_0
retrying 1.3.3 pypi_0 pypi
ripgrep 0.10.0 hc07d326_0
rope 0.14.0 py_0
rsconnect-jupyter 1.2.1.93 pypi_0 pypi
ruamel.yaml 0.16.5 py37h516909a_1 conda-forge
ruamel.yaml.clib 0.1.2 py37h516909a_0 conda-forge
ruamel_yaml 0.15.46 py37h14c3975_0
s3transfer 0.2.1 pypi_0 pypi
scikit-image 0.15.0 py37he6710b0_0
scikit-learn 0.21.3 py37h22eb022_0
scipy 1.3.1 py37he2b7bc3_0
seaborn 0.9.0 py37_0
secretstorage 3.1.1 py37_0
send2trash 1.5.0 py37_0
setuptools 41.4.0 py37_0
sidecar 0.3.0 pypi_0 pypi
simpervisor 0.3 pypi_0 pypi
sip 4.19.8 py37hf484d3e_0
six 1.12.0 py37_0
slicerator 1.0.0 py_0 conda-forge
smart-open 1.8.4 pypi_0 pypi
snowballstemmer 2.0.0 py_0
sortedcontainers 2.1.0 py37_0
soupsieve 1.9.3 py37_0
sphinx 2.2.0 py_0
sphinxcontrib-applehelp 1.0.1 py_0
sphinxcontrib-devhelp 1.0.1 py_0
sphinxcontrib-htmlhelp 1.0.2 py_0
sphinxcontrib-jsmath 1.0.1 py_0
sphinxcontrib-qthelp 1.0.2 py_0
sphinxcontrib-serializinghtml 1.1.3 py_0
spyder 3.3.6 py37_0
spyder-kernels 0.5.2 py37_0
sqlalchemy 1.3.9 py37h7b6447c_0
sqlite 3.30.0 h7b6447c_0
statsmodels 0.10.1 py37hdd07704_0
suite2p 0.5.5 pypi_0 pypi
sympy 1.4 pypi_0 pypi
tbb 2019.4 hfd86e86_0
tblib 1.4.0 py_0
tensorboard 1.14.0 py37hf484d3e_0
tensorflow 1.14.0 mkl_py37h45c423b_0
tensorflow-base 1.14.0 mkl_py37h7ce6ba3_0
tensorflow-estimator 1.14.0 py_0
termcolor 1.1.0 py37_1
terminado 0.8.2 py37_0
testpath 0.4.2 py37_0
text-unidecode 1.3 pypi_0 pypi
tifffile 0.15.1 py37h3010b51_1001 conda-forge
tk 8.6.8 hbc83047_0
toml 0.10.0 py37h28b3542_0
toolz 0.10.0 py_0
tornado 6.0.3 py37h7b6447c_0
tqdm 4.36.1 py_0
traitlets 4.3.3 py37_0
traits 5.1.2 py37h7b6447c_0
traitsui 6.1.3 py_0
traittypes 0.2.1 py_1 conda-forge
typed-ast 1.4.0 py37h7b6447c_0
typing_extensions 3.7.4 py37_0
ujson 1.35 pypi_0 pypi
urllib3 1.24.2 py37_0
vtk 8.2.0 py37haa4764d_200
vtkplotter 2019.4.5 pypi_0 pypi
wcwidth 0.1.7 py37_0
webencodings 0.5.1 py37_1
websocket-client 0.56.0 pypi_0 pypi
werkzeug 0.16.0 py_0
wheel 0.33.6 py37_0
widgetsnbextension 3.5.1 py37_0
wrapt 1.11.2 py37h7b6447c_0
wurlitzer 1.0.3 py37_0
x264 1!152.20180806 h14c3975_0 conda-forge
xarray 0.13.0 py_0
xlrd 1.2.0 py37_0
xorg-kbproto 1.0.7 h14c3975_1002 conda-forge
xorg-libice 1.0.10 h516909a_0 conda-forge
xorg-libsm 1.2.3 h84519dc_1000 conda-forge
xorg-libx11 1.6.8 h516909a_0 conda-forge
xorg-libxext 1.3.4 h516909a_0 conda-forge
xorg-libxrender 0.9.10 h516909a_1002 conda-forge
xorg-renderproto 0.11.1 h14c3975_1002 conda-forge
xorg-xextproto 7.3.0 h14c3975_1002 conda-forge
xorg-xproto 7.0.31 h14c3975_1007 conda-forge
xz 5.2.4 h14c3975_4
yaml 0.1.7 had09818_2
yarl 1.3.0 pypi_0 pypi
zeromq 4.3.1 he6710b0_3
zict 1.0.0 py_0
zlib 1.2.11 h7b6447c_3
zstandard 0.12.0 py37he1b5a44_0 conda-forge
zstd 1.3.7 h0b5b093_0
Thanks, could it be a problem with the version of Jupyterlab?
When I enter a url the windows opens but it is blank.
Looking at the JS console in chrome I see:
Refused to display 'https://www.google.com/' in a frame because it set 'X-Frame-Options' to 'sameorigin'.
and trying another site I get:
Refused to display 'https://trello.com/' in a frame because it set 'X-Frame-Options' to 'deny'.
Hi timkpaine,
thanks for the very useful extension.
I use it as part of the Jupyter/JupyterHub installation on our HPC clusters.
Is it possible to allow a default page to open in a tab on startup of jupyter using jupyterlab_iframe?
I would like to use this for a welcome page to introduce new users to the possibilities of JupyterLab.
Best,
Jens Henrik
When I open an Iframe (e.g: https://github.com/timkpaine) I can see the web page, but when I click on a link (e.g: paperboy) I have the following issue:
404 : Not Found
You are requesting a page that does not exist!
Note: I use JupyterLab behind an Apache Reverse Proxy.
Is there a solution ?
Other question : How to backward and forward into the web page ?
Thanks
Hello, I just installed the extension by following the steps listed in the README:
pip install jupyterlab_iframe
jupyter labextension install jupyterlab_iframe
jupyter serverextension enable --py jupyterlab_iframe
But the last step failed:
$ jupyter serverextension enable --py jupyterlab_iframe
Enabling: jupyterlab_iframe.extension
- Writing config: C:\Users\cboos\.jupyter
- Validating...
Error loading server extension jupyterlab_iframe.extension
X is jupyterlab_iframe.extension importable?
Looking closer:
$ jupyter serverextension list
config dir: C:\Users\cboos\.jupyter
jupyterlab_iframe.extension enabled
- Validating...
Error loading server extension jupyterlab_iframe.extension
X is jupyterlab_iframe.extension importable?
config dir: c:\dev\python36\etc\jupyter
jupyterlab enabled
- Validating...
jupyterlab ok
$ python
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import jupyterlab_iframe.extension
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Dev\Python36\lib\site-packages\jupyterlab_iframe\extension.py", line 1, in <module>
import ujson
ModuleNotFoundError: No module named 'ujson'
>>> exit()
$ pip install ujson
Collecting ujson
Downloading ujson-1.35.tar.gz (192kB)
100% |โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ| 194kB 936kB/s
Installing collected packages: ujson
Running setup.py install for ujson ... done
Successfully installed ujson-1.35
$ jupyter serverextension list
config dir: C:\Users\cboos\.jupyter
jupyterlab_iframe.extension enabled
- Validating...
jupyterlab_iframe.extension ok
config dir: c:\dev\python36\etc\jupyter
jupyterlab enabled
- Validating...
jupyterlab ok
So it looks like the ujson package should be listed as a required dependency!
After that it worked. Well, sort of! Some URLs display just fine (e.g. Wikipedia), others won't for various reasons:
But it's an useful extension despite of these limitations, so thanks anyway!
add @tornado.web.authenticated
Hello,
I just switched to jupyterlab 2.1.5 (hoping to get jupyterlab-latex running again), but now I get the following error when installing the Python package "jupyterlab_iframe".
== 2020-06-25 16:26:38,161 run.py:593 INFO parse_log_for_error (some may be harmless) regExp (?<![(,-]|\w)(?:error|segmentation fault|failed)(?![(,-]|\.?\w) found:
node_modules/@jupyterlab/observables/lib/modeldb.d.ts(227,9): error TS2416: Property 'changed' in type 'ObservableValue' is not assignable to the same property in base type 'IObservableValue'.
node_modules/@jupyterlab/observables/lib/modeldb.d.ts(231,5): error TS2416: Property 'get' in type 'ObservableValue' is not assignable to the same property in base type 'IObservableValue'.
npm ERR! Failed at the [email protected] build script.
npm ERR! Failed at the [email protected] build:all script.
== 2020-06-25 16:26:38,161 run.py:550 WARNING Found 4 errors in command output (output: node_modules/@jupyterlab/observables/lib/modeldb.d.ts(227,9): error TS2416: Property 'changed' in type 'ObservableValue' is not assignable to the same property in base type 'IObservableValue'.
node_modules/@jupyterlab/observables/lib/modeldb.d.ts(231,5): error TS2416: Property 'get' in type 'ObservableValue' is not assignable to the same property in base type 'IObservableValue'.
npm ERR! Failed at the [email protected] build script.
npm ERR! Failed at the [email protected] build:all script.)
I am not using pip to install, but pure setup.py as pip fails (because PEP 517 has an issue with pip 19.0)
jupyterlab_html
will view the content of a .html
file on disk..welcome
setting does.NOTE: The Adding quicklinks section above is a screenshot!
dask
, it has some dashboard but this isnt exposed directly to the internet, and my jupyterlab is accessed remotely. So while jupyterlab running in the cloud, can access the dashboard, I running from another computer far away on another network, cant.Hi Tim,
I've incorporated your exceedingly useful extension into a Docker Image but have been running into issues while trying to dock/layout iFrame tabs and it appears to be stealing/hogging focus away from other phosphor widgets while it's running.
e.g., I can't reliably re-arrange/tile the workspace and layout tabs if the extension is actively in use and displaying iFrames.
To reproduce:
docker run --rm -it -e ENABLE_SPARK_MONITOR=True -e START_SPARK_HISTORY=True -e START_TENSORBOARD=True
-e START_DASK_DISTRIBUTED=True -e START_RAY_HEAD_NODE=True -p 8080:8080 dcoslabs/dcos-jupyterlab:latest start.sh jupyter lab --NotebookApp.token=
'' --NotebookApp.password=''
Point your browser to http://<hostname>:8080
Now open up iFrames for http://<hostname>:8080/tensorboard
and http://<hostname>:8080/sparkhistory/
(trailing slash is required) and try to tile/arrange the iFrame tabs to have them laid out any which way you like and notice it's very hard to get it to go and stay just where you want them.
In addition, it sometimes becomes hard to re-launch notebooks that are running in the background but not actively being displayed if the extension is in use.
This is a very valuable extension that should ideally become a core part of JupyterLab, thank you very much for putting it together.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.