anaconda / nb_conda

Conda environment and package access extension from within Jupyter
BSD 3-Clause "New" or "Revised" License
140 stars 32 forks source link

conda tab doesn't work #23

Closed ijstokes closed 7 years ago

ijstokes commented 8 years ago

I just recorded a screencast of this problem: http://screencast.com/t/jnBVQlce4

In short:

  1. I created a conda env with:

    conda create -n testaen -c anaconda-nb-extensions -c r -c wakari nb_conda nb_conda_kernels r-essentials
  2. I entered that conda environment to run conda:

    source activate testaen
    jupyter notebook
  3. I started Jupyter and then tried to go to the Conda tab. I get the error shown in the 2 minute video above. The full log from the start of Jupyter is below:
$ jupyter notebook
[W 16:03:52.822 NotebookApp] Widgets are unavailable. Please install widgetsnbextension or ipywidgets 4.0
[I 16:03:52.832 NotebookApp] The port 8888 is already in use, trying another port.
[I 16:03:52.843 NotebookApp] Serving notebooks from local directory: /Users/ijstokes/code/aetrial/files/assets
[I 16:03:52.843 NotebookApp] 0 active kernels 
[I 16:03:52.843 NotebookApp] The Jupyter Notebook is running at: http://localhost:8889/
[I 16:03:52.843 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[W 16:04:04.164 NotebookApp] Notebook simon/Flight delays R model.ipynb is not trusted
[I 16:04:04.921 NotebookApp] Kernel started: d0272f60-34bb-4fc8-b256-c51a25cf23a2
[W 16:04:05.358 NotebookApp] 404 GET /nbextensions/widgets/notebook/js/extension.js?v=20160418160352 (::1) 17.64ms referer=http://localhost:8889/notebooks/simon/Flight%20delays%20R%20model.ipynb
[I 16:06:04.761 NotebookApp] Saving file at /simon/Flight delays R model.ipynb
[W 16:06:04.762 NotebookApp] Saving untrusted notebook simon/Flight delays R model.ipynb
[W 16:06:44.134 NotebookApp] 404 GET /environments?_=1461009837436 (::1) 2.19ms referer=http://localhost:8889/tree/simon
[W 16:06:44.136 NotebookApp] 404 GET /packages/available?_=1461009837437 (::1) 0.93ms referer=http://localhost:8889/tree/simon
[W 16:07:08.330 NotebookApp] 404 GET /environments?_=1461009837441 (::1) 1.39ms referer=http://localhost:8889/tree/simon
[W 16:07:08.332 NotebookApp] 404 GET /packages/available?_=1461009837442 (::1) 1.39ms referer=http://localhost:8889/tree/simon
mmarchetti commented 8 years ago

That's weird... from the log, it looks like the front end JS extensions are loading but the back end (python nbserver extensions) aren't.

ijstokes commented 8 years ago

Seems to be linked to nb_delta. After removing nb_delta conda tab works again. @bollwyvl maybe you can suggest what is going on here?

ijstokes commented 8 years ago

Ah, but my command above didn't have nb_delta in it...

ijstokes commented 8 years ago

Nonetheless, I had this exact problem with the Trial VM after installing all the latest notebook extension packages. Weird stuff ensued so I uninstalled nb_delta then the conda tab worked. Mystery!

bollwyvl commented 8 years ago

Good find!

We have talked about setting up a way to re-run the tests for all the extensions with them all installed... Perhaps in the meta package. These are really hard to catch without a browser and the rest of the app running.

ijstokes commented 8 years ago

Just confirmed that I'm still seeing this in the Trial VM:

screenshot 2016-05-09 13 21 19

But in that case I notice another oddity: only the root environment is listed, even though this is inside AEN where the project environment should (I would have thought!) appear, and furthermore be selected as the "default".

Importantly, notice in the screen shot that the URL bar shows http://anaconda-enterprise.trl:8888 however the error message shows http://localhost:8080. That seems pretty weird to me. To be clear about my setup for this particular screenshot (quite different from the screencast in the original issue description above):

ssh -F ~/.ssh/config -l $USER \
                       -L 80:anaconda-enterprise.trl:80 \
                       -L 8080:anaconda-enterprise.trl:8080 \
                       -L 8888:anaconda-enterprise.trl:8888 \
                       -L 8787:anaconda-enterprise.trl:8787 \
                       ijstokes@vagrant.corp.continuum.io
172.31.32.17  anaconda-enterprise.trl

And so that is what I am actually (eventually, after ssh port forwarding) connecting to.

ijstokes commented 8 years ago

The issue I reported immediately above with the error screenshot saying "Could not find URL: http://localhost:8080/..." is due to some combination of https://github.com/conda/conda/issues/2457 and https://github.com/conda/conda/issues/2458.

However that is, I believe, different from the issue I originally reported (in the screen cast). So the problem remains.

bollwyvl commented 8 years ago

Still haven't been able to reproduce this locally.

Currently reprovisioning my trial box to give it a whack there. In the meantime, I'll work on expanding the test coverage... in 1.0.0, i only got so far as to check that the front end loaded...

bollwyvl commented 8 years ago

Can you run these two commands in an offending environment?

jupyter serverextension list
jupyter nbextension list

Here's what I get... if we're seeing something different, that could help a lot in tracking this down!

jupyter serverextension list
config dir: /Users/nbollweg/miniconda3/envs/testaen/etc/jupyter
    nb_conda  enabled
    - Validating...
      nb_conda  OK

jupyter nbextension list
Known nbextensions:
  config dir: /Users/nbollweg/miniconda3/envs/testaen/etc/jupyter/nbconfig
    notebook section
      nb_conda/main  enabled
      - Validating: OK
    tree section
      nb_conda/tree  enabled
      - Validating: OK
bollwyvl commented 8 years ago

No 🎲 reproducing the error on the trial box:

screen shot 2016-05-20 at 9 29 42 am
bollwyvl commented 8 years ago

However, creating a new environment hangs the notebook server

Also, it is not finding the r kernel (i assume these are installed?)

Here's the bad news from the log:

INFO:nb_conda.nbextension.envmanager:command: conda create -y -q --json -n woopwoop python=3 ipykernel
Using Anaconda Cloud api site http://localhost:8080/api
[C 13:44:14.800 NotebookApp] received signal 15, stopping
[E 13:44:14.815 NotebookApp] Uncaught exception POST /guest/BokehBlazeTutorial/notebook/environments/woopwoop/create (127.0.0.1)
    HTTPServerRequest(protocol='http', host='anaconda-enterprise.trl:8888', method='POST', uri='/guest/BokehBlazeTutorial/notebook/environments/woopwoop/create', version='HTTP/1.1', remote_ip='127.0.0.1', headers={'Origin': 'http://anaconda-enterprise.trl:8888', 'X-Wakari-Url-Prefix': '/guest/BokehBlazeTutorial/notebook/', 'Content-Length': '12', 'Accept-Language': 'en-US,en;q=0.8', 'Accept-Encoding': 'gzip, deflate', 'X-Wakari-Project': 'BokehBlazeTutorial', 'X-Wakari-Appname': 'notebook', 'Host': 'anaconda-enterprise.trl:8888', 'Accept': 'application/json, text/javascript, */*; q=0.01', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36', 'Connection': 'keep-alive', 'X-Requested-With': 'XMLHttpRequest', 'Referer': 'http://anaconda-enterprise.trl:8888/guest/BokehBlazeTutorial/notebook/tree', 'Cookie': 'wakari.5.host_config=s%3Aj%3A%7B%22target%22%3A%22http%3A%2F%2Flocalhost%3A5002%22%2C%22status%22%3A%22running%22%2C%22owner%22%3A%22guest%22%2C%22name%22%3A%22BokehBlazeTutorial%22%2C%22you%22%3A%22guest%22%7D.hW%2FaLMPIMBxECadI7jDCY6asJQICdekNJ9wCROze7eE; wakari.5.access_token=55E3LzY0jUmz8PYKAaZgzTaLn5QTNh; wakari.5.refresh_token=t2zh2X6XV8gW3H2DmjWSO4hixbmNsb; wakari.a=98fc32a2a15fd7deebbb09e861bf98a87695aa3e; binstar.a=b1fb058db7e8542f949800c6b29fd0648d395f57; session=.eJw9zk8LgjAcxvG3Er-zh0p_UkKHoD902GJgynYR3VY6sWBTqkXvPevQ8fkePjwvKM5WuxqS3g46gKJRkLxgUkECx5w9-XyLxGQ19yyiniA1bEbyrOGGPUWqOrrJGpqeVvAOQDp7Lvpbq69_QuRZS1LaUCOR-xZJtzMjEYr9IRQpuYucPYjnY-fIjfTcrGfkvvpxqnR1dSutKgan7bXs9AheBu16COCbfl8BY1lGSyUX8RTlOOZxhNUiRHh_AAsYRwo.CiCiWA.gppYbWGL8QCxBVrE8__2ITNEs8Y; x_csrf_token=1463754479##256c59e30958821566b94dab41770f8166db0ecc; XSRF-TOKEN=1463754479##256c59e30958821566b94dab41770f8166db0ecc; remember_token=56ca46fee4d10d9ba01d9d18|56281cd705fcf871ce29a6edd05bb1bccf3db52f; wakari.enterprise.session=.eJxNzjsPgjAUhuG_Ys7sIAQWEjeqceghxxSadiFRuRWrCZcINfx3L4Nx-Mb3yfeEvOyKvoZo6MZiDXlzgegJqxNEkEialc9CbrJaOQrQ8RANeVxmjTI0a3GxGGcNinQLyxrOfVfmw70tbj8C3XnD5dGioFA5bNHuWv1ZXG2UID-RbEI_9bg7zNqwgMeVl9D2y4190f3fQaHNp9E2u-KeJr5_m5Y9uKRQxyyAZXkB1DVB5g.CiCiZA.cdMQALhxoibYaESsHSigCNfQ1Sw', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 'X-Wakari-Owner': 'guest', 'X-Wakari-User': 'guest'})
    Traceback (most recent call last):
      File "/opt/wakari/wakari-compute/lib/python2.7/site-packages/tornado/web.py", line 1443, in _execute
        result = method(*self.path_args, **self.path_kwargs)
      File "/opt/wakari/wakari-compute/lib/python2.7/site-packages/tornado/web.py", line 2800, in wrapper
        return method(self, *args, **kwargs)
      File "/opt/wakari/wakari-compute/lib/python2.7/site-packages/nb_conda/nbextension/handlers.py", line 91, in post
        data = self.env_manager.create_env(env, env_type)
      File "/opt/wakari/wakari-compute/lib/python2.7/site-packages/nb_conda/nbextension/envmanager.py", line 92, in create_env
        return json.loads(output)
      File "/opt/wakari/wakari-compute/lib/python2.7/json/__init__.py", line 339, in loads
        return _default_decoder.decode(s)
      File "/opt/wakari/wakari-compute/lib/python2.7/json/decoder.py", line 364, in decode
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
      File "/opt/wakari/wakari-compute/lib/python2.7/json/decoder.py", line 382, in raw_decode
        raise ValueError("No JSON object could be decoded")
    ValueError: No JSON object could be decoded
[D 13:44:14.821 NotebookApp] Using contents: services/contents
[D 13:44:14.822 NotebookApp] No template for 500
[D 13:44:14.822 NotebookApp] Using contents: services/contents
[E 13:44:14.828 NotebookApp] {
      "Origin": "http://anaconda-enterprise.trl:8888", 
      "X-Wakari-Url-Prefix": "/guest/BokehBlazeTutorial/notebook/", 
      "Content-Length": "12", 
      "Accept-Language": "en-US,en;q=0.8", 
      "Accept-Encoding": "gzip, deflate", 
      "X-Wakari-Project": "BokehBlazeTutorial", 
      "X-Wakari-Appname": "notebook", 
      "Host": "anaconda-enterprise.trl:8888", 
      "Accept": "application/json, text/javascript, */*; q=0.01", 
      "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36", 
      "Connection": "keep-alive", 
      "X-Requested-With": "XMLHttpRequest", 
      "Referer": "http://anaconda-enterprise.trl:8888/guest/BokehBlazeTutorial/notebook/tree", 
      "Cookie": "wakari.5.host_config=s%3Aj%3A%7B%22target%22%3A%22http%3A%2F%2Flocalhost%3A5002%22%2C%22status%22%3A%22running%22%2C%22owner%22%3A%22guest%22%2C%22name%22%3A%22BokehBlazeTutorial%22%2C%22you%22%3A%22guest%22%7D.hW%2FaLMPIMBxECadI7jDCY6asJQICdekNJ9wCROze7eE; wakari.5.access_token=55E3LzY0jUmz8PYKAaZgzTaLn5QTNh; wakari.5.refresh_token=t2zh2X6XV8gW3H2DmjWSO4hixbmNsb; wakari.a=98fc32a2a15fd7deebbb09e861bf98a87695aa3e; binstar.a=b1fb058db7e8542f949800c6b29fd0648d395f57; session=.eJw9zk8LgjAcxvG3Er-zh0p_UkKHoD902GJgynYR3VY6sWBTqkXvPevQ8fkePjwvKM5WuxqS3g46gKJRkLxgUkECx5w9-XyLxGQ19yyiniA1bEbyrOGGPUWqOrrJGpqeVvAOQDp7Lvpbq69_QuRZS1LaUCOR-xZJtzMjEYr9IRQpuYucPYjnY-fIjfTcrGfkvvpxqnR1dSutKgan7bXs9AheBu16COCbfl8BY1lGSyUX8RTlOOZxhNUiRHh_AAsYRwo.CiCiWA.gppYbWGL8QCxBVrE8__2ITNEs8Y; x_csrf_token=1463754479##256c59e30958821566b94dab41770f8166db0ecc; XSRF-TOKEN=1463754479##256c59e30958821566b94dab41770f8166db0ecc; remember_token=56ca46fee4d10d9ba01d9d18|56281cd705fcf871ce29a6edd05bb1bccf3db52f; wakari.enterprise.session=.eJxNzjsPgjAUhuG_Ys7sIAQWEjeqceghxxSadiFRuRWrCZcINfx3L4Nx-Mb3yfeEvOyKvoZo6MZiDXlzgegJqxNEkEialc9CbrJaOQrQ8RANeVxmjTI0a3GxGGcNinQLyxrOfVfmw70tbj8C3XnD5dGioFA5bNHuWv1ZXG2UID-RbEI_9bg7zNqwgMeVl9D2y4190f3fQaHNp9E2u-KeJr5_m5Y9uKRQxyyAZXkB1DVB5g.CiCiZA.cdMQALhxoibYaESsHSigCNfQ1Sw", 
      "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8", 
      "X-Wakari-Owner": "guest", 
      "X-Wakari-User": "guest"
    }
[E 13:44:14.828 NotebookApp] 500 POST /guest/BokehBlazeTutorial/notebook/environments/woopwoop/create (127.0.0.1) 441890.43ms referer=http://anaconda-enterprise.trl:8888/guest/BokehBlazeTutorial/notebook/tree
bollwyvl commented 8 years ago

The above is with nb_conda 0.1.4 and notebook 4.1... trying to update...

ijstokes commented 8 years ago

@bollwyvl did you have a chance to try the Phase 2 Trial VM? There is a FD thread in the *ae-trial` flow from ~Wednesday describing the steps to fetch it. 10 GB still...

ijstokes commented 8 years ago

@bollwyvl I am definitely still getting this behavior with a "fresh" setup following exactly this procedure:

conda create -n ana40py35 anaconda python=3.5
source activate ana40py35
conda install -c anaconda-nb-extensions nbpresent nb_anacondacloud nb_conda nb_condakernels
pip install matlab_kernel
python -m matlab_kernel.install
jupyter notebook

This results in this output in the terminal (up to the point where I click on the "Conda" tab):

[W 22:39:49.837 NotebookApp] Unrecognized JSON config file version, assuming version 1
Using Anaconda Cloud api site https://api.anaconda.org
[I 22:39:51.232 NotebookApp] [nb_conda_kernels] enabled, 33 kernels found
[I 22:39:51.437 NotebookApp] Serving notebooks from local directory: /Users/ijstokes/Desktop/2016_05_GE_PythonDataScience
[I 22:39:51.438 NotebookApp] 0 active kernels 
[I 22:39:51.438 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
[I 22:39:51.438 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
Using Anaconda Cloud api site https://api.anaconda.org
Using Anaconda Cloud api site https://api.anaconda.org
[W 22:39:53.120 NotebookApp] 404 GET /nbextensions/nb_delta/tree.js?v=20160524223951 (::1) 7.76ms referer=http://localhost:8888/tree
[W 22:39:53.121 NotebookApp] 404 GET /nbextensions/jupyter_cms/dashboard/main.js?v=20160524223951 (::1) 1.24ms referer=http://localhost:8888/tree
[W 22:39:53.162 NotebookApp] 404 GET /clusters?_=1464143992082 (::1) 1.51ms referer=http://localhost:8888/tree
[W 22:39:55.690 NotebookApp] 404 GET /environments?_=1464143992083 (::1) 1.69ms referer=http://localhost:8888/tree
[W 22:39:55.692 NotebookApp] 404 GET /packages/available?_=1464143992084 (::1) 1.36ms referer=http://localhost:8888/tree

And here is a screenshot of what I see (same as before):

screenshot 2016-05-24 22 43 51

In case it is germaine:

$ conda info -a
Using Anaconda Cloud api site https://api.anaconda.org
Current conda install:

             platform : osx-64
        conda version : 4.1.0rc3
  conda-build version : 1.20.3
       python version : 2.7.11.final.0
     requests version : 2.9.1
     root environment : /Users/ijstokes/anaconda  (writable)
  default environment : /Users/ijstokes/anaconda/envs/ana40py35
     envs directories : /Users/ijstokes/anaconda/envs
        package cache : /Users/ijstokes/anaconda/pkgs
         channel URLs : https://repo.continuum.io/pkgs/free/osx-64/
                        https://repo.continuum.io/pkgs/free/noarch/
                        https://repo.continuum.io/pkgs/pro/osx-64/
                        https://repo.continuum.io/pkgs/pro/noarch/
                        https://conda.anaconda.org/t/<TOKEN>/omnia/osx-64/
                        https://conda.anaconda.org/t/<TOKEN>/omnia/noarch/
                        https://conda.anaconda.org/t/<TOKEN>/conda-team/osx-64/
                        https://conda.anaconda.org/t/<TOKEN>/conda-team/noarch/
          config file : /Users/ijstokes/.condarc
    is foreign system : False

# conda environments:
#
_test                    /Users/ijstokes/anaconda/envs/_test
acluster                 /Users/ijstokes/anaconda/envs/acluster
ana24                    /Users/ijstokes/anaconda/envs/ana24
ana241                   /Users/ijstokes/anaconda/envs/ana241
ana24py27                /Users/ijstokes/anaconda/envs/ana24py27
ana24py35                /Users/ijstokes/anaconda/envs/ana24py35
ana24py35clean           /Users/ijstokes/anaconda/envs/ana24py35clean
ana40py35             *  /Users/ijstokes/anaconda/envs/ana40py35
anaconda.org             /Users/ijstokes/anaconda/envs/anaconda.org
anaconda_server          /Users/ijstokes/anaconda/envs/anaconda_server
anarepo                  /Users/ijstokes/anaconda/envs/anarepo
bokeh                    /Users/ijstokes/anaconda/envs/bokeh
bokehblazetutorial       /Users/ijstokes/anaconda/envs/bokehblazetutorial
caravel                  /Users/ijstokes/anaconda/envs/caravel
cluster                  /Users/ijstokes/anaconda/envs/cluster
conda-docs               /Users/ijstokes/anaconda/envs/conda-docs
condakernel              /Users/ijstokes/anaconda/envs/condakernel
dask                     /Users/ijstokes/anaconda/envs/dask
datashader               /Users/ijstokes/anaconda/envs/datashader
dato                     /Users/ijstokes/anaconda/envs/dato
delta                    /Users/ijstokes/anaconda/envs/delta
genepattern              /Users/ijstokes/anaconda/envs/genepattern
helloworld               /Users/ijstokes/anaconda/envs/helloworld
julia                    /Users/ijstokes/anaconda/envs/julia
jupyter                  /Users/ijstokes/anaconda/envs/jupyter
kivy                     /Users/ijstokes/anaconda/envs/kivy
matlab                   /Users/ijstokes/anaconda/envs/matlab
mkl                      /Users/ijstokes/anaconda/envs/mkl
nbext                    /Users/ijstokes/anaconda/envs/nbext
nbpresent                /Users/ijstokes/anaconda/envs/nbpresent
nbsetuptools             /Users/ijstokes/anaconda/envs/nbsetuptools
nltk                     /Users/ijstokes/anaconda/envs/nltk
numba_cuda               /Users/ijstokes/anaconda/envs/numba_cuda
pandas                   /Users/ijstokes/anaconda/envs/pandas
py35bare                 /Users/ijstokes/anaconda/envs/py35bare
pyconuk-numba            /Users/ijstokes/anaconda/envs/pyconuk-numba
r_python_nb              /Users/ijstokes/anaconda/envs/r_python_nb
rdkit                    /Users/ijstokes/anaconda/envs/rdkit
sbgridworkshop           /Users/ijstokes/anaconda/envs/sbgridworkshop
sparkkernel              /Users/ijstokes/anaconda/envs/sparkkernel
strata-numba             /Users/ijstokes/anaconda/envs/strata-numba
test                     /Users/ijstokes/anaconda/envs/test
testaen                  /Users/ijstokes/anaconda/envs/testaen
testdryrun               /Users/ijstokes/anaconda/envs/testdryrun
testenv                  /Users/ijstokes/anaconda/envs/testenv
trialbox                 /Users/ijstokes/anaconda/envs/trialbox
webargs                  /Users/ijstokes/anaconda/envs/webargs
webargs_src              /Users/ijstokes/anaconda/envs/webargs_src
root                     /Users/ijstokes/anaconda

sys.version: 2.7.11 |Anaconda 4.0.0 (x86_64)| (defaul...
sys.prefix: /Users/ijstokes/anaconda
sys.executable: /Users/ijstokes/anaconda/bin/python
conda location: /Users/ijstokes/anaconda/lib/python2.7/site-packages/conda
conda-build: /Users/ijstokes/anaconda/bin/conda-build
conda-clean-build-dir: /Users/ijstokes/anaconda/bin/conda-clean-build-dir
conda-convert: /Users/ijstokes/anaconda/bin/conda-convert
conda-develop: /Users/ijstokes/anaconda/bin/conda-develop
conda-env: /Users/ijstokes/anaconda/bin/conda-env
conda-index: /Users/ijstokes/anaconda/bin/conda-index
conda-inspect: /Users/ijstokes/anaconda/bin/conda-inspect
conda-metapackage: /Users/ijstokes/anaconda/bin/conda-metapackage
conda-pipbuild: /Users/ijstokes/anaconda/bin/conda-pipbuild
conda-render: /Users/ijstokes/anaconda/bin/conda-render
conda-server: /Users/ijstokes/anaconda/bin/conda-server
conda-sign: /Users/ijstokes/anaconda/bin/conda-sign
conda-skeleton: /Users/ijstokes/anaconda/bin/conda-skeleton
user site dirs: 

CIO_TEST: <not set>
CONDA_DEFAULT_ENV: /Users/ijstokes/anaconda/envs/ana40py35
CONDA_ENVS_PATH: <not set>
DYLD_LIBRARY_PATH: <not set>
PATH: /Users/ijstokes/anaconda/envs/ana40py35/bin::/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Applications/domino:/usr/local/git/bin:/Library/TeX/texbin:
PYTHONHOME: <not set>
PYTHONPATH: <not set>

License directories:
    /Users/ijstokes/.continuum
    /Users/ijstokes/Library/Application Support/Anaconda
    /Users/ijstokes/anaconda/licenses
License files (license*.txt):
Package/feature end dates:
damianavila commented 8 years ago

What is the output of:

jupyter nbextension list

and

jupyter serverextension list

I am suspecting in some conflict because of config files in different places...

ijstokes commented 8 years ago

@damianavila here you go:

$ jupyter nbextension list
Known nbextensions:
  config dir: /Users/ijstokes/.jupyter/nbconfig
    notebook section
      usability/python-markdown/main  enabled 
      - Validating: OK
      jupyter_themes/theme_selector  enabled 
      - Validating: OK
      usability/dragdrop/main  enabled 
      - Validating: OK
      usability/hide_input/main  enabled 
      - Validating: OK
      nbpresent/js/nbpresent.min  enabled 
      - Validating: OK
      usability/toc2/main  enabled 
      - Validating: OK
      nbbrowserpdf/index  enabled 
      - Validating: problems found:
        - require?  X nbbrowserpdf/index
      publishing/gist_it/main  enabled 
      - Validating: OK
      usability/move_selected_cells/main  enabled 
      - Validating: OK
      nb_delta/main  enabled 
      - Validating: problems found:
        - require?  X nb_delta/main
      usability/hide_input_all/main  enabled 
      - Validating: OK
      nb_conda/main  enabled 
      - Validating: OK
      nb_anacondacloud/main  enabled 
      - Validating: OK
      genepattern  enabled 
      - Validating: problems found:
        - require?  X genepattern
      jupyter_cms/notebook/main  enabled 
      - Validating: problems found:
        - require?  X jupyter_cms/notebook/main
      config/config_menu/main  enabled 
      - Validating: OK
      styling/zenmode/main  enabled 
      - Validating: OK
      usability/splitcell/splitcell  enabled 
      - Validating: OK
      usability/search-replace/main  enabled 
      - Validating: OK
    tree section
      nb_conda/tree  enabled 
      - Validating: OK
      ipyparallel/main  enabled 
      - Validating: OK
      nb_delta/tree  enabled 
      - Validating: problems found:
        - require?  X nb_delta/tree
      jupyter_cms/dashboard/main  enabled 
      - Validating: problems found:
        - require?  X jupyter_cms/dashboard/main
  config dir: /Users/ijstokes/anaconda/envs/ana40py35/etc/jupyter/nbconfig
    notebook section
      nbpresent/js/nbpresent.min  enabled 
      - Validating: OK
      nb_conda/main  enabled 
      - Validating: OK
      nb_anacondacloud/main  enabled 
      - Validating: OK
    tree section
      nb_conda/tree  enabled 
      - Validating: OK

and also:

$ jupyter serverextension list
config dir: /Users/ijstokes/.jupyter
    nbextensions  enabled 
    - Validating...
Error loading server extension nbextensions
      X is nbextensions importable?
config dir: /Users/ijstokes/anaconda/envs/ana40py35/etc/jupyter
    nbpresent  enabled 
    - Validating...
      nbpresent  OK
    nb_conda  enabled 
    - Validating...
      nb_conda  OK
    nb_anacondacloud  enabled 
    - Validating...
      nb_anacondacloud  OK
bollwyvl commented 8 years ago

Nice. Yeah, try backing up ~/.jupyter and restarting your server. If you are madly missing any of those extensions, we can start conda-forgeing them... a number of those are on the wishlist for anaconda inclusion, anyway.

dankrause commented 8 years ago

I ran into this issue myself (404s on /environments and /packages) on a fresh install. Here's the output of jupyter serverextension list

config dir: /home/py/anaconda3/etc/jupyter
    nbpresent  enabled 
    - Validating...
      nbpresent  OK
    nb_conda  enabled 
    - Validating...
      nb_conda  OK
    nb_anacondacloud  enabled 
    - Validating...
      nb_anacondacloud  OK

I then ran the following commands:

jupyter serverextension disable nb_conda
jupyter serverextension enable nb_conda

Before running these commands, ~/.jupyter/jupyter_notebook_config.json did not exist. After these operations, it did exist, with the following contents:

{
  "NotebookApp": {
    "nbserver_extensions": {
      "nb_conda": true
    }
  }
}

This caused nb_conda to start working properly. When I move that file out of the way by renaming it, nb_conda starts failing again, even though the output of jupyter serverextension list is unchanged.

damianavila commented 8 years ago

@dankrause thanks for the report, I am wondering why the list command is not telling you the right thing...

damianavila commented 8 years ago

@dankrause what is the content of you ~./jupyter folder? Can you try backing up that folder, delete it and make a fresh install? I am thinking about some issue with already present conf files at ~/.jupyter (the extensions should be loaded from conf files living on your /home/py/anaconda3/etc/jupyter).

TKCen commented 8 years ago

I have the same issue with the 400 errors and the conda tab.

It seems there is some incompability with nbextensions-configurator. I can't get anaconda to work in combination with it at least.

I'm using jupyterhub with a custom notebook container. Dockerfile

capture

scaraguel commented 8 years ago

Same issue here. I removed /usr/local/etc/jupyter, restarted Jupiter notebook and the 'conda' tab works now.

aklaver commented 8 years ago

Same issue. Had to rm jupyter_notebook_config.json from ~/.jupyter openSUSE Leap 42.1 Miniconda conda 4.2.11 py35_0
conda-env 2.6.0 0
jupyter 1.0.0 py35_3
jupyter_client 4.4.0 py35_0
jupyter_console 5.0.0 py35_0
jupyter_core 4.2.0 py35_0
nb_anacondacloud 1.2.0 py35_0
nb_conda 2.0.0 py35_0
nb_conda_kernels 2.0.0 py35_0

pocin commented 7 years ago

Hi I have similar issue, but the source of error is different.

I have conda installed in /opt/conda

I am running jupyterhub through Supervisor I can use the [root] conda env, but when I access the conda tab I get following entry in stderr log

[E 2017-02-19 18:20:16.788 nemeth handlers:514] Unhandled error in API request
    Traceback (most recent call last):
      File "/opt/conda/lib/python3.5/site-packages/notebook/base/handlers.py", line 503, in wrapper
        result = yield gen.maybe_future(method(self, *args, **kwargs))
      File "/opt/conda/lib/python3.5/site-packages/nb_conda/handlers.py", line 51, in get
        self.finish(json.dumps(self.env_manager.list_envs()))
      File "/opt/conda/lib/python3.5/site-packages/nb_conda/envmanager.py", line 60, in list_envs
        info = self.clean_conda_json(self._execute('conda info --json'))
      File "/opt/conda/lib/python3.5/site-packages/nb_conda/envmanager.py", line 46, in _execute
        output = check_output(cmdline)
      File "/opt/conda/lib/python3.5/subprocess.py", line 626, in check_output
        **kwargs).stdout
      File "/opt/conda/lib/python3.5/subprocess.py", line 693, in run
        with Popen(*popenargs, **kwargs) as process:
      File "/opt/conda/lib/python3.5/subprocess.py", line 947, in __init__
        restore_signals, start_new_session)
      File "/opt/conda/lib/python3.5/subprocess.py", line 1551, in _execute_child
        raise child_exception_type(errno_num, err_msg)
    FileNotFoundError: [Errno 2] No such file or directory: 'conda'

The issue is obvious. To find out if conda directory is in $PATH I logged the sys.path b4 executing the errorneous command and it is there.

Now I am lost, not sure what to do. Any ideas?

aklaver commented 7 years ago

On 02/19/2017 10:34 AM, Robin Nemeth wrote:

Hi I have similar issue, but the source of error is different.

I have conda installed in /opt/conda

I am running jupyterhub through Supervisor I can use the [root] conda env, but when I access the conda tab I get following entry in stderr log

|[E 2017-02-19 18:20:16.788 nemeth handlers:514] Unhandled error in API request Traceback (most recent call last): File "/opt/conda/lib/python3.5/site-packages/notebook/base/handlers.py", line 503, in wrapper result = yield gen.maybe_future(method(self, args, kwargs)) File "/opt/conda/lib/python3.5/site-packages/nb_conda/handlers.py", line 51, in get self.finish(json.dumps(self.env_manager.list_envs())) File "/opt/conda/lib/python3.5/site-packages/nb_conda/envmanager.py", line 60, in list_envs info = self.clean_conda_json(self._execute('conda info --json')) File "/opt/conda/lib/python3.5/site-packages/nb_conda/envmanager.py", line 46, in _execute output = check_output(cmdline) File "/opt/conda/lib/python3.5/subprocess.py", line 626, in check_output kwargs).stdout File "/opt/conda/lib/python3.5/subprocess.py", line 693, in run with Popen(popenargs, **kwargs) as process: File "/opt/conda/lib/python3.5/subprocess.py", line 947, in init restore_signals, start_new_session) File "/opt/conda/lib/python3.5/subprocess.py", line 1551, in _execute_child raise child_exception_type(errno_num, err_msg) FileNotFoundError: [Errno 2] No such file or directory: 'conda' |

The issue is obvious. To find out if conda directory is in $PATH I logged the sys.path b4 executing the errorneous command and it is there.

But do you or the process trying to access it have the necessary privileges to use the directory?

Now I am lost, not sure what to do. Any ideas?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Anaconda-Platform/nb_conda/issues/23#issuecomment-280938308, or mute the thread https://github.com/notifications/unsubscribe-auth/AAoLVCYYqviZdluuOIUFRhmmKyTwlj0Hks5reIsngaJpZM4IKLkr.

-- Adrian Klaver adrian.klaver@aklaver.com

ijstokes commented 7 years ago

Hi Robin,

A few comments:

On 2/19/17 1:34 PM, Robin Nemeth wrote:

Hi I have similar issue, but the source of error is different.

I have conda installed in /opt/conda

Anaconda is optimized to run on a single system and for a single user.
It definitely SHOULD run correctly when installed in a centralized location such as /opt/conda (though perhaps /opt/anaconda would be a better name). Anaconda and conda are two different things -- I admit this is somewhat confusing -- with Anaconda a full data science distribution, and conda the package manager that Anaconda relies upon.

But there are definitely scenarios where Anaconda isn't going to work properly when deployed centrally for multi-user access. If this is something that is important to you then I'd suggest you look at Anaconda Enterprise which is designed specifically for this audience: compute clusters, centralized deployment, multi-user access. Look it up at continuum.io or contact our sales team sales@continuum.io

I am running jupyterhub through Supervisor I can use the [root] conda env, but when I access the conda tab I get following entry in stderr log

Processes started by supervisor are unlikely to have the same PATH as what you get from the command line. You could debug this by adding in an "echo $PATH" statement (or if it is a Python script "import os; print(os.environ['PATH'])").

nb_conda has never been tested with JupyterHub. Having this capability (multi-user login to Jupyter Notebooks with in-Jupyter access to conda package and environment management) is an integral part of Anaconda Enterprise.

Regards,

Ian

damianavila commented 7 years ago

The original issue seems related with some failures when you install nb_conda alongside with some jupyter-contrib extensions. That will be further researched on #41

There is second issue related with some configs in the user space conflicting with the config we use at the sys-prefix... that could be investigated later in the following issue: #49

Finally, there is some issue related with jupyterhub, that will follow up in the this issue: #50

Closing this one now.