chesterli29 / jupyterlab_tensorboard

Tensorboard extension for jupyterlab.
MIT License
315 stars 36 forks source link

Support for JupyterLab 1.0 #12

Closed krishnadusad closed 5 years ago

krishnadusad commented 5 years ago

Was getting an error about dependency version discrepancy `JupyterLab Extension Package

=1.0.0-alpha.3 <2.0.0 >=0.19.1 <0.20.0 @jupyterlab/application =1.0.0-alpha.3 <2.0.0 >=0.19.1 <0.20.0 @jupyterlab/apputils =1.0.0-alpha.3 <2.0.0 >=0.19.1 <0.20.0 @jupyterlab/launcher`

Tried building locally and changing the dependency versions to ^1.0.0-alpha.3 and now I seem to be getting errors in type script.

New to this community so might be missing some obvious fix. Any help would be appreciated

juliusvonkohout commented 5 years ago

"dependencies": { "@jupyterlab/application": "^1.0.0-alpha.6", "@jupyterlab/apputils": "^1.0.0-alpha.6", "@jupyterlab/coreutils": "^3.0.0-alpha.6", "@jupyterlab/launcher": "^1.0.0-alpha.6", "@jupyterlab/services": "^4.0.0-alpha.6", "@phosphor/algorithm": "^1.1.2", "@phosphor/coreutils": "^1.3.0", "@phosphor/disposable": "^1.1.2", "@phosphor/domutils": "^1.1.2", "@phosphor/messaging": "^1.2.2", "@phosphor/signaling": "^1.2.2", "@phosphor/widgets": "^1.6.0" } are the dependencies for jupyterlab==1.0.0a3

[julius@localhost jupyterlab_tensorboard-master]$ npm install
npm WARN deprecated core-js@1.2.7: core-js@<2.6.8 is no longer maintained. Please, upgrade to core-js@3 or at least to actual version of core-js@2.

> jupyterlab_tensorboard@0.1.5 prepare /home/julius/Downloads/jupyterlab_tensorboard-master
> npm run clean && npm run build

> jupyterlab_tensorboard@0.1.5 clean /home/julius/Downloads/jupyterlab_tensorboard-master
> rimraf lib

> jupyterlab_tensorboard@0.1.5 build /home/julius/Downloads/jupyterlab_tensorboard-master
> tsc

node_modules/@jupyterlab/apputils/lib/vdom.d.ts:107:13 - error TS8020: JSDoc types can only be used inside documentation comments.

107     value: [SENDER?, ARGS?];
                ~~~~~~~
# i just removed the questionmarks

src/index.ts:2:32 - error TS2305: Module '"/home/julius/Downloads/jupyterlab_tensorboard-master/node_modules/@jupyterlab/application/lib/index"' has no exported member 'JupyterLabPlugin'.

2   ILayoutRestorer, JupyterLab, JupyterLabPlugin
                                 ~~~~~~~~~~~~~~~~
#JupyterLabPlugin => JupyterClientPlugin
#https://github.com/jupyterlab/jupyterlab/commit/199fc9be26d70acf7f6ae61b8e9b3dc2500ac72d#diff-457faa59a5ec6fc44e00a122e66d5abc
#JupyterClientPlugin => JupyterFrontEndPlugin
#https://github.com/jupyterlab/jupyterlab/commit/14802a41bcc8a3391892aa00165ba48c56a7cc3a#diff-457faa59a5ec6fc44e00a122e66d5abc
# Changing this leads to further errors. I have never written typescript or developed jupyterlab extensons before so i will stop here...

src/index.ts:89:13 - error TS2551: Property 'addToLeftArea' does not exist on type 'ILabShell'. Did you mean '_addToLeftArea'?

89   app.shell.addToLeftArea(running, {rank: 300});
               ~~~~~~~~~~~~~

src/index.ts:114:19 - error TS2551: Property 'addToMainArea' does not exist on type 'ILabShell'. Did you mean '_addToMainArea'?

114         app.shell.addToMainArea(tb);
                      ~~~~~~~~~~~~~

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! jupyterlab_tensorboard@0.1.5 build: `tsc`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the jupyterlab_tensorboard@0.1.5 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/julius/.npm/_logs/2019-05-25T19_32_34_755Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! jupyterlab_tensorboard@0.1.5 prepare: `npm run clean && npm run build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the jupyterlab_tensorboard@0.1.5 prepare script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/julius/.npm/_logs/2019-05-25T19_32_34_791Z-debug.log
[julius@localhost jupyterlab_tensorboard-master]$ npm --version
6.4.1
[julius@localhost jupyterlab_tensorboard-master]$ 
chesterli29 commented 5 years ago

well, after jupyterlab release 1.0, not alpha version. I will update this package.

juliusvonkohout commented 5 years ago

well, after jupyterlab release 1.0, not alpha version. I will update this package.

Thank you very much. jupyterlab 1.0 is very close to release (95%) https://github.com/jupyterlab/jupyterlab/milestone/2 and most of the other extensions are already available.

cliffwoolley commented 5 years ago

1.0 has released today : https://pypi.org/project/jupyterlab/1.0.0/

bjtho08 commented 5 years ago

Is it possible (without too much hassle) to update the package myself and install it in 1.0.0?

cliffwoolley commented 5 years ago

Updating all the dependencies is a good start but I still see a couple of build issues, presumably due to interface changes in JupyterLab 1.0.

--- a/package.json
+++ b/package.json
@@ -30,22 +30,22 @@
     "prepare": "npm run clean && npm run build"
   },
   "dependencies": {
-    "@jupyterlab/application": "^0.19.1",
-    "@jupyterlab/apputils": "^0.19.1",
-    "@jupyterlab/coreutils": "^2.1.2",
-    "@jupyterlab/launcher": "^0.19.1",
-    "@jupyterlab/services": "^3.1.2",
-    "@phosphor/algorithm": "^1.1.2",
-    "@phosphor/coreutils": "^1.3.0",
-    "@phosphor/disposable": "^1.1.2",
-    "@phosphor/domutils": "^1.1.2",
-    "@phosphor/messaging": "^1.2.2",
-    "@phosphor/signaling": "^1.2.2",
-    "@phosphor/widgets": "^1.6.0"
+    "@jupyterlab/application": "^1.0.0",
+    "@jupyterlab/apputils": "^1.0.0",
+    "@jupyterlab/coreutils": "^3.0.0",
+    "@jupyterlab/launcher": "^1.0.0",
+    "@jupyterlab/services": "^4.0.0",
+    "@phosphor/algorithm": "^1.1.3",
+    "@phosphor/coreutils": "^1.3.1",
+    "@phosphor/disposable": "^1.2.0",
+    "@phosphor/domutils": "^1.1.3",
+    "@phosphor/messaging": "^1.2.3",
+    "@phosphor/signaling": "^1.2.3",
+    "@phosphor/widgets": "^1.8.0"
   },
   "devDependencies": {
-    "rimraf": "^2.6.1",
-    "typescript": "~2.9.2"
+    "rimraf": "^2.6.3",
+    "typescript": "^3.5.2"
   },
   "jupyterlab": {
     "extension": true

src/index.ts:2:32 - error TS2305: Module '"../node_modules/@jupyterlab/application/lib"' has no exported member 'JupyterLabPlugin'.

2   ILayoutRestorer, JupyterLab, JupyterLabPlugin
                                 ~~~~~~~~~~~~~~~~

src/index.ts:6:20 - error TS2305: Module '"../node_modules/@jupyterlab/apputils/lib"' has no exported member 'InstanceTracker'.

6   ICommandPalette, InstanceTracker, IInstanceTracker, showDialog, Dialog
                     ~~~~~~~~~~~~~~~

src/index.ts:6:37 - error TS2305: Module '"../node_modules/@jupyterlab/apputils/lib"' has no exported member 'IInstanceTracker'.

6   ICommandPalette, InstanceTracker, IInstanceTracker, showDialog, Dialog
                                      ~~~~~~~~~~~~~~~~

src/index.ts:89:13 - error TS2551: Property 'addToLeftArea' does not exist on type 'ILabShell'. Did you mean '_addToLeftArea'?

89   app.shell.addToLeftArea(running, {rank: 300});
               ~~~~~~~~~~~~~

  node_modules/@jupyterlab/application/lib/shell.d.ts:214:13
    214     private _addToLeftArea;
                    ~~~~~~~~~~~~~~
    '_addToLeftArea' is declared here.

src/index.ts:105:35 - error TS7006: Parameter 'value' implicitly has an 'any' type.

105       const widget = tracker.find(value => {
                                      ~~~~~

src/index.ts:114:19 - error TS2551: Property 'addToMainArea' does not exist on type 'ILabShell'. Did you mean '_addToMainArea'?

114         app.shell.addToMainArea(tb);
                      ~~~~~~~~~~~~~

  node_modules/@jupyterlab/application/lib/shell.d.ts:226:13
    226     private _addToMainArea;
                    ~~~~~~~~~~~~~~
    '_addToMainArea' is declared here.

src/index.ts:125:35 - error TS7006: Parameter 'value' implicitly has an 'any' type.

125       const widget = tracker.find(value => {
                                      ~~~~~
juliusvonkohout commented 5 years ago

@bjtho08 @cliffwoolley have a look at https://github.com/jupyterhub/jupyter-server-proxy/pull/134/files . There are interface changes. @chaoleili seems to be busy.

bjtho08 commented 5 years ago

Unfortunately, I don't have any experience with typescript and only limited experience with javascript, so this might be out of my league. @cliffwoolley is this something you can handle or should we just wait for @chaoleili?

chesterli29 commented 5 years ago

HI, everyone, I've updated jupyterlab_tensorboard package for supporting jupyterlab v1.0.0 version.

chesterli29 commented 5 years ago

Close it as it already has done.

bjtho08 commented 5 years ago

I'm getting a 404 Not Found when trying to launch a tensorboard

juliusvonkohout commented 5 years ago

I'm getting a 404 Not Found when trying to launch a tensorboard

it is working for me.

bjtho08 commented 5 years ago

That's odd. This is the lsit of installed extensions:

(base) bjarne@huygens-hpc:~/.pyenv/shims$ jupyter labextension list
JupyterLab v1.0.1
Known labextensions:
   app dir: /home/bjarne/.pyenv/versions/3.6.0/share/jupyter/lab
        @jpmorganchase/perspective-jupyterlab v0.2.23  enabled  OK
        @jupyter-widgets/jupyterlab-manager v1.0.0  enabled  OK
        @jupyter-widgets/jupyterlab-sidecar v0.4.0  enabled  OK
        @jupyterlab/celltags v0.1.4  enabled  OK
        @jupyterlab/toc v1.0.0-rc.0  enabled  OK
        @krassowski/jupyterlab_go_to_definition v0.4.0  enabled  OK
        ipysheet v0.4.1  enabled  OK
        jupyterlab-system-monitor v0.4.0  enabled  OK
        jupyterlab-topbar-extension v0.4.0  enabled  OK
        jupyterlab_tensorboard v0.1.6  enabled  OK
        lineup_widget v1.0.7  enabled  OK
        plotlywidget v0.10.0  enabled  OK
        qgrid v1.1.1  enabled  OK

Am I missing something obvious? I also have jupyter-tensorboard 0.1.10 installed.

chesterli29 commented 5 years ago

@bjtho08 you also need install jupyter_tensorboard and tensorflow with tensorboard.

bjtho08 commented 5 years ago

@chaoleili, below is the complete list from pip (you should be able to find jupyter_tensorboard, tensorflow and tensorboard all in the list). Do they have to be on the same kernel as jupyterlab or the same kernel I actually use for tensorflow? The output is from my Jupyetlab environment, but the kernel I use for computations is running tensorflow 1.12 rather than 1.10

(base) bjarne@huygens-hpc:~/.pyenv/shims$ pip list
Package                   Version
------------------------- -----------
absl-py                   0.5.0
alembic                   1.0.7
appdirs                   1.4.3
astetik                   1.9.8
astor                     0.7.1
astroid                   2.0.4
async-generator           1.10
attrs                     18.2.0
Augmentor                 0.2.3
backcall                  0.1.0
beautifulsoup4            4.7.1
black                     18.6b4
bleach                    2.1.4
bokeh                     1.1.0
boto3                     1.9.19
botocore                  1.12.19
bs4                       0.0.1
certifi                   2018.11.29
chances                   0.1.6
chardet                   3.0.4
click                     6.7
cloudpickle               0.5.6
colorlover                0.3.0
console-progressbar       1.1.1
cufflinks                 0.15
cycler                    0.10.0
dask                      1.1.1
decorator                 4.3.0
defusedxml                0.5.0
dill                      0.2.9
docutils                  0.14
entrypoints               0.2.3
Faker                     1.0.6
finance-enums             0.1.0
future                    0.16.0
gast                      0.2.0
geonamescache             1.0.2
graphviz                  0.10.1
grpcio                    1.15.0
h5py                      2.8.0
html5lib                  1.0.1
idna                      2.8
imageio                   2.5.0
imgaug                    0.2.8
ipykernel                 5.1.1
ipysheet                  0.4.1
ipython                   7.5.0
ipython-genutils          0.2.0
ipywidgets                7.4.2
isort                     4.3.4
javabridge                1.0.18
jedi                      0.12.1
Jinja2                    2.10
jmespath                  0.9.3
json5                     0.8.4
jsonschema                3.0.1
jupyter                   1.0.0
jupyter-client            5.2.3
jupyter-console           5.2.0
jupyter-core              4.4.0
jupyter-tensorboard       0.1.10
jupyterhub                0.9.4
jupyterlab                1.0.1
jupyterlab-code-formatter 0.2.1
jupyterlab-latex          0.4.1
jupyterlab-server         1.0.0
jupyterthemes             0.20.0
keract                    2.3.0
Keras                     2.2.4
Keras-Applications        1.0.7
keras-contrib             2.0.8
Keras-Preprocessing       1.0.9
keras-tqdm                2.0.1
keras-vis                 0.4.1
kerasplotlib              0.1.4
kiwisolver                1.0.1
lazy-object-proxy         1.3.1
lesscpy                   0.13.0
lineup-widget             1.0.7
llvmlite                  0.27.0
Mako                      1.0.7
Markdown                  3.0
MarkupSafe                1.0
matplotlib                3.0.3
mccabe                    0.6.1
mimesis                   3.1.0
mistune                   0.8.3
nbconvert                 5.4.0
nbformat                  4.4.0
nbresuse                  0.3.1
networkx                  2.2
nltk                      3.3
notebook                  5.7.0
numba                     0.42.0
numpy                     1.16.1
opencv-python             4.0.0.21
packaging                 19.0
pamela                    1.0.0
pandas                    0.23.4
pandocfilters             1.4.2
parso                     0.3.1
patsy                     0.5.1
perspective-python        0.1.6
pexpect                   4.6.0
pickleshare               0.7.4
Pillow                    5.2.0
pip                       18.0
plotly                    3.9.0
ply                       3.11
prometheus-client         0.3.1
prompt-toolkit            2.0.9
protobuf                  3.6.1
psutil                    5.6.2
ptyprocess                0.6.0
pydot                     1.2.4
pydot-ng                  2.0.0
pyfaidx                   0.5.5
Pygments                  2.2.0
pylantern                 0.1.2
pylint                    2.1.1
pyparsing                 2.2.1
PyQt5                     5.11.3
PyQt5-sip                 4.19.13
pyrsistent                0.15.2
python-bioformats         1.5.2
python-dateutil           2.7.3
python-editor             1.0.4
python-oauth2             1.1.0
pytz                      2018.5
PyVCF                     0.6.8
PyWavelets                1.0.0
PyYAML                    3.13
pyzmq                     17.1.2
qgrid                     1.1.1
qtconsole                 4.4.1
requests                  2.21.0
retrying                  1.3.3
s3transfer                0.1.13
scikit-image              0.15.0
scikit-learn              0.19.2
scipy                     1.1.0
seaborn                   0.9.0
Send2Trash                1.5.0
setuptools                39.1.0
Shapely                   1.6.4.post2
sidecar                   0.2.0
simplegeneric             0.8.1
six                       1.11.0
sklearn                   0.0
soupsieve                 1.9.1
SQLAlchemy                1.2.18
statsmodels               0.9.0
talos                     0.6.0
tensorboard               1.10.0
tensorflow                1.10.1
tensorflow-fold           0.0.1
tensorflow-gpu            1.10.1
termcolor                 1.1.0
terminado                 0.8.1
testpath                  0.3.1
text-unidecode            1.2
tf-unet                   0.1.1
tflearn                   0.3.2
tifffile                  0.15.1
toml                      0.9.6
toolz                     0.9.0
tornado                   5.1.1
tqdm                      4.26.0
traitlets                 4.3.2
typed-ast                 1.1.0
ujson                     1.35
urllib3                   1.23
wcwidth                   0.1.7
webencodings              0.5.1
websocket-client          0.56.0
Werkzeug                  0.14.1
wheel                     0.31.1
widgetsnbextension        3.4.2
wrangle                   0.6.2
wrapt                     1.10.11
bjtho08 commented 5 years ago

No suggestions for how to fix my issue?