conda-forge / nbdime-feedstock

A conda-smithy repository for nbdime.
BSD 3-Clause "New" or "Revised" License
2 stars 9 forks source link

Nbdime doesn't seem to have all the necessary dependencies #25

Closed moorepants closed 4 years ago

moorepants commented 4 years ago

Issue:

Run jupyter lab and this output appears:

[W 22:41:12.522 LabApp] Error loading server extension nbdime
    Traceback (most recent call last):
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/gitdb/__init__.py", line 19, in _init_externals
        __import__(module)
    ModuleNotFoundError: No module named 'smmap'

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/git/__init__.py", line 25, in _init_externals
        import gitdb
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/gitdb/__init__.py", line 27, in <module>
        _init_externals()
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/gitdb/__init__.py", line 21, in _init_externals
        raise ImportError("'%s' could not be imported, assure it is located in your PYTHONPATH" % module)
    ImportError: 'smmap' could not be imported, assure it is located in your PYTHONPATH

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/notebook/notebookapp.py", line 1618, in init_server_extensions
        func(self)
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/nbdime/__init__.py", line 17, in load_jupyter_server_extension
        from .webapp.nb_server_extension import _load_jupyter_server_extension
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/nbdime/webapp/nb_server_extension.py", line 16, in <module>
        from ..args import process_diff_flags
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/nbdime/args.py", line 18, in <module>
        from .gitfiles import is_gitref
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/nbdime/gitfiles.py", line 11, in <module>
        from git import (
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/git/__init__.py", line 33, in <module>
        _init_externals()
      File "/home/moorepants/miniconda3/lib/python3.6/site-packages/git/__init__.py", line 27, in _init_externals
        raise ImportError("'gitdb' could not be found in your PYTHONPATH")
    ImportError: 'gitdb' could not be found in your PYTHONPATH


Environment (conda list):

``` $ conda list moorepants@garuda:pydy(master)$ conda list # packages in environment at /home/moorepants/miniconda3: # # Name Version Build Channel _license 1.1 py36_1 http://repo.continuum.io/pkgs/free alabaster 0.7.12 py_0 conda-forge altair 3.2.0 py36_0 conda-forge anaconda-client 1.7.2 py_0 conda-forge anaconda-navigator 1.6.4 py36_0 http://repo.continuum.io/pkgs/free anaconda-project 0.8.3 py_0 conda-forge antlr-python-runtime 4.7.2 py36_1000 conda-forge apptools 4.5.0 py_0 conda-forge argcomplete 1.10.2 py_0 conda-forge asn1crypto 1.2.0 py36_0 conda-forge astroid 2.3.3 py36_0 conda-forge asv 0.3.1 py36hfc679d8_0 conda-forge atk 2.25.90 h05f3006_1 conda-forge attrs 19.3.0 py_0 conda-forge babel 2.7.0 py_0 conda-forge backcall 0.1.0 py_0 conda-forge beautifulsoup4 4.8.1 py36_0 conda-forge bicycleparameters 1.0.0 py_1 conda-forge blas 1.1 openblas conda-forge bleach 3.1.0 py_0 conda-forge blinker 1.4 py_1 conda-forge blosc 1.15.1 hfc679d8_2 conda-forge bokeh 1.4.0 py36_0 conda-forge boto 2.49.0 py_0 conda-forge bqplot 0.12.1 py_0 conda-forge bzip2 1.0.6 h470a237_2 conda-forge ca-certificates 2019.9.11 hecc5488_0 conda-forge cairo 1.14.12 h276e583_5 conda-forge certifi 2019.9.11 py36_0 conda-forge cffi 1.11.5 py36h5e8e0c9_1 conda-forge chardet 3.0.4 py36_1003 conda-forge click 7.0 py_0 conda-forge cloog 0.18.0 0 http://repo.continuum.io/pkgs/free cloudpickle 1.2.2 py_1 conda-forge clyent 1.2.2 py_1 conda-forge colorama 0.4.1 py_0 conda-forge conda 4.7.12 py36_0 conda-forge conda-build 3.16.3 py36_0 conda-forge conda-build-all 1.1.3 py_0 conda-forge conda-env 2.6.0 1 conda-forge conda-forge-pinning 2019.11.20 0 conda-forge conda-package-handling 1.4.1 py36_0 conda-forge configobj 5.0.6 py_0 conda-forge control 0.8.2 py36_0 conda-forge coverage 4.5.2 py36h470a237_0 conda-forge cryptography 2.3.1 py36hdffb7b8_0 conda-forge cryptography-vectors 2.3.1 py36_1000 conda-forge cycler 0.10.0 py_2 conda-forge cython 0.29.2 py36hfc679d8_0 conda-forge cytoolz 0.9.0.1 py36h470a237_1 conda-forge dash 1.0.0 py_0 conda-forge dash-core-components 1.0.0 py_0 conda-forge dash-html-components 1.0.0 py_0 conda-forge dash-renderer 1.0.0 py_0 conda-forge dash-table 4.0.0 py_0 conda-forge dask 2.8.0 py_1 conda-forge dask-core 2.8.0 py_0 conda-forge dbus 1.13.0 h3a4f0e9_0 conda-forge decorator 4.4.1 py_0 conda-forge defusedxml 0.6.0 py_0 conda-forge depfinder 2.2.1 py_0 conda-forge dill 0.3.1.1 py36_0 conda-forge distributed 2.8.0 py_1 conda-forge doctr 1.8.0 py_0 conda-forge docutils 0.15.2 py36_0 conda-forge dynamicisttoolkit 0.5.3 py_1 conda-forge entrypoints 0.3 py36_1000 conda-forge envisage 4.8.0 py_0 conda-forge expat 2.2.5 hfc679d8_2 conda-forge fastcache 1.0.2 py36h470a237_1 conda-forge feedgenerator 1.9 py_1 conda-forge filelock 3.0.10 py_0 conda-forge filterpy 1.4.5 py_0 conda-forge flask 1.1.1 py_1 conda-forge flask-compress 1.4.0 py_0 conda-forge fontconfig 2.13.1 h65d0f4c_0 conda-forge freetype 2.9.1 h6debe1e_4 conda-forge fsspec 0.6.0 py_0 conda-forge gcc 4.8.5 7 http://repo.continuum.io/pkgs/free gdk-pixbuf 2.36.12 h4ab6910_1 conda-forge gettext 0.19.8.1 h5e8e0c9_1 conda-forge gitdb2 2.0.6 py_0 conda-forge gitpython 3.0.5 py_0 conda-forge glib 2.56.2 h464dc38_1 conda-forge glob2 0.7 py_0 conda-forge gmp 6.1.2 hfc679d8_0 conda-forge gmpy2 2.0.8 py36_1 conda-forge gobject-introspection 1.56.1 py36haaf12d0_1 conda-forge graphite2 1.3.13 hfc679d8_0 conda-forge graphviz 2.38.0 h08bfae6_9 conda-forge gst-plugins-base 1.12.5 hde13a9d_0 conda-forge gstreamer 1.12.5 h5856ed1_0 conda-forge gtk2 2.24.31 hde048ef_0 conda-forge harfbuzz 1.9.0 h04dbb29_1 conda-forge hdf5 1.10.1 2 conda-forge heapdict 1.0.1 py_0 conda-forge icu 58.2 hfc679d8_0 conda-forge idna 2.8 py36_1000 conda-forge imageio 2.6.1 py36_0 conda-forge imagesize 1.1.0 py_0 conda-forge importlib_metadata 0.23 py36_0 conda-forge invoke 1.3.0 py36_0 conda-forge ipydatawidgets 4.0.1 py_0 conda-forge ipykernel 5.1.3 py36h5ca1d4c_0 conda-forge ipympl 0.3.3 py_0 conda-forge ipyparallel 6.2.4 py36_0 conda-forge ipyscales 0.3.0 py_0 conda-forge ipython 7.9.0 py36h5ca1d4c_0 conda-forge ipython_genutils 0.2.0 py_1 conda-forge ipywidgets 7.5.1 py_0 conda-forge isl 0.12.2 0 http://repo.continuum.io/pkgs/free isort 4.3.21 py36_0 conda-forge itsdangerous 1.1.0 py_0 conda-forge jedi 0.15.1 py36_0 conda-forge jeepney 0.4.1 py_0 conda-forge jinja2 2.10.3 py_0 conda-forge jpeg 9c h470a237_1 conda-forge json5 0.8.5 py_0 conda-forge jsonschema 3.2.0 py36_0 conda-forge jupyter 1.0.0 py_2 conda-forge jupyter_client 5.3.3 py36_1 conda-forge jupyter_console 6.0.0 py_0 conda-forge jupyter_contrib_core 0.3.3 py_2 conda-forge jupyter_contrib_nbextensions 0.5.1 py36_0 conda-forge jupyter_core 4.6.1 py36_0 conda-forge jupyter_highlight_selected_word 0.2.0 py36_1000 conda-forge jupyter_latex_envs 1.4.4 py36_1000 conda-forge jupyter_nbextensions_configurator 0.4.1 py36_0 conda-forge jupyterlab 1.2.3 py_0 conda-forge jupyterlab_server 1.0.6 py_0 conda-forge keyring 19.2.0 py36_0 conda-forge kiwisolver 1.0.1 py36h2d50403_2 conda-forge lazy-object-proxy 1.3.1 py36h470a237_0 conda-forge libarchive 3.3.3 h40d5236_2 conda-forge libffi 3.2.1 hfc679d8_5 conda-forge libgcc 7.2.0 h69d50b8_2 conda-forge libgcc-ng 7.2.0 hdf63c60_3 conda-forge libgfortran 3.0.0 1 conda-forge libglu 9.0.0 hfc679d8_0 conda-forge libiconv 1.15 h470a237_4 conda-forge libpng 1.6.36 ha92aebf_0 conda-forge libsodium 1.0.16 h470a237_1 conda-forge libstdcxx-ng 7.2.0 hdf63c60_3 conda-forge libtiff 4.0.10 he6b73bb_1 conda-forge libtool 2.4.6 h470a237_2 conda-forge libuuid 2.32.1 h470a237_2 conda-forge libxcb 1.13 h470a237_2 conda-forge libxml2 2.9.8 h422b904_5 conda-forge libxslt 1.1.32 h88dbc4e_2 conda-forge llvmlite 0.26.0 py36hd28b015_0 conda-forge locket 0.2.0 py_2 conda-forge lxml 4.3.0 py36hc9114bc_0 conda-forge lz4-c 1.8.1.2 0 conda-forge lzo 2.10 h470a237_0 conda-forge markupsafe 1.1.0 py36h470a237_0 conda-forge matplotlib 3.0.2 py36h8a2030e_1 conda-forge matplotlib-base 3.0.2 py36h20b835b_1 conda-forge mccabe 0.6.1 py_1 conda-forge metakernel 0.24.3 py_0 conda-forge mistune 0.8.4 py36h470a237_0 conda-forge mock 3.0.5 py36_0 conda-forge more-itertools 7.2.0 py_0 conda-forge mpc 1.1.0 4 conda-forge mpfr 3.1.5 0 conda-forge mpld3 0.3 py_1 conda-forge mpmath 1.1.0 py_0 conda-forge msgpack-python 0.6.0 py36h2d50403_0 conda-forge nbconvert 5.6.1 py36_0 conda-forge nbdime 1.1.0 py36_0 conda-forge nbformat 4.4.0 py_1 conda-forge ncurses 6.1 hfc679d8_2 conda-forge networkx 2.4 py_0 conda-forge nodejs 10.12.0 hfc679d8_0 conda-forge nose 1.3.7 py36_1003 conda-forge notebook 6.0.1 py36_0 conda-forge numba 0.41.0 py36hf8a1672_0 conda-forge numexpr 2.6.9 py36hf8a1672_0 conda-forge numpy 1.15.4 py36_blas_openblashb06ca3d_0 [blas_openblas] conda-forge numpydoc 0.9.1 py_0 conda-forge oct2py 5.0.4 py_0 conda-forge octave_kernel 0.31.0 py_0 conda-forge olefile 0.46 py_0 conda-forge openblas 0.3.3 ha44fe06_1 conda-forge openssl 1.0.2p h470a237_2 conda-forge packaging 19.2 py_0 conda-forge pandas 0.24.0rc1 py36hfc679d8_0 conda-forge pandoc 2.7.3 0 conda-forge pandocfilters 1.4.2 py_1 conda-forge pango 1.40.14 hd926ff6_3 conda-forge parso 0.5.1 py_0 conda-forge partd 1.0.0 py_0 conda-forge patchelf 0.9 hfc679d8_2 conda-forge patsy 0.5.1 py_0 conda-forge pcre 8.41 hfc679d8_3 conda-forge pelican 4.2.0 py_0 conda-forge pexpect 4.7.0 py36_0 conda-forge pickleshare 0.7.5 py36_1000 conda-forge pillow 5.4.1 py36hc736899_0 conda-forge pint 0.9 py36_2 conda-forge pip 19.3.1 py36_0 conda-forge pixman 0.34.0 h470a237_3 conda-forge pkginfo 1.5.0.1 py_0 conda-forge plotly 4.3.0 py_0 conda-forge pluggy 0.12.0 py_0 conda-forge portalocker 1.5.2 py36_0 conda-forge proj4 5.2.0 h470a237_1 conda-forge prometheus_client 0.7.1 py_0 conda-forge prompt_toolkit 2.0.10 py_0 conda-forge psutil 5.4.8 py36h470a237_0 conda-forge pthread-stubs 0.4 h470a237_1 conda-forge ptyprocess 0.6.0 py_1001 conda-forge py 1.8.0 py_0 conda-forge pycodestyle 2.5.0 py_0 conda-forge pycosat 0.6.3 py36h470a237_1 conda-forge pycparser 2.19 py36_1 conda-forge pydy 0.5.0 py36_1003 conda-forge pyface 6.1.2 py_0 conda-forge pyflakes 2.1.1 py_0 conda-forge pygments 2.4.2 py_0 conda-forge pygraphviz 1.5 py36h470a237_0 conda-forge pyinstrument 3.0.3 py_0 conda-forge pyinstrument_cext 0.2.0 py36h470a237_0 conda-forge pylint 2.4.4 py36_0 conda-forge pyopenssl 19.0.0 py36_0 conda-forge pyparsing 2.4.5 py_0 conda-forge pyproj 1.9.6 py36h429999c_0 conda-forge pyqt 5.6.0 py36h8210e8a_8 conda-forge pyrsistent 0.14.9 py36h470a237_0 conda-forge pyserial 3.4 py_2 conda-forge pysocks 1.7.1 py36_0 conda-forge pytables 3.4.4 py36_8 conda-forge pytest 5.3.0 py36_0 conda-forge python 3.6.7 h5001a0f_1 conda-forge python-dateutil 2.8.1 py_0 conda-forge python-libarchive-c 2.9 py36_0 conda-forge python-symengine 0.3.0 py36h1c59948_2 conda-forge pythreejs 2.1.1 py_0 conda-forge pytz 2019.3 py_0 conda-forge pywavelets 1.0.1 py36h7eb728f_0 conda-forge pyyaml 3.13 py36h470a237_1 conda-forge pyzmq 17.1.2 py36hae99301_1 conda-forge qt 5.6.2 h679f5bc_11 conda-forge qtawesome 0.6.0 py_0 conda-forge qtconsole 4.6.0 py_0 conda-forge qtpy 1.9.0 py_0 conda-forge quantities 0.12.3 pyh24bf2e0_0 conda-forge readline 7.0 haf1bffa_1 conda-forge requests 2.22.0 py36_1 conda-forge requests-toolbelt 0.9.1 py_0 conda-forge resonance 0.19.1 py36_1000 conda-forge retrying 1.3.3 py_2 conda-forge rope 0.14.0 py_0 conda-forge ruamel_yaml 0.15.71 py36h470a237_0 conda-forge scikit-image 0.14.1 py36hfc679d8_4 conda-forge scikit-learn 0.20.2 py36_blas_openblash00c3548_400 [blas_openblas] conda-forge scipy 1.2.0 py36_blas_openblashb06ca3d_200 [blas_openblas] conda-forge seaborn 0.9.0 py_2 conda-forge secretstorage 3.1.1 py36_0 conda-forge send2trash 1.5.0 py_0 conda-forge setproctitle 1.1.10 py36h470a237_1 conda-forge setuptools 41.6.0 py36_1 conda-forge sip 4.18.1 py36hfc679d8_0 conda-forge six 1.13.0 py36_0 conda-forge skijumpdesign 1.3.0 py_0 conda-forge slycot 0.3.3 py36_blas_openblashb931f6a_2 [blas_openblas] conda-forge smmap2 2.0.5 py_0 conda-forge snakeviz 2.0.1 py_0 conda-forge snowballstemmer 2.0.0 py_0 conda-forge sortedcontainers 2.1.0 py_0 conda-forge soupsieve 1.9.4 py36_0 conda-forge sphinx 2.2.1 py_0 conda-forge sphinx-issues 1.2.0 py_0 conda-forge sphinx-math-dollar 1.1.1 py_0 conda-forge sphinxcontrib-applehelp 1.0.1 py_0 conda-forge sphinxcontrib-autoprogram 0.1.5 py_1 conda-forge sphinxcontrib-devhelp 1.0.1 py_0 conda-forge sphinxcontrib-htmlhelp 1.0.2 py_0 conda-forge sphinxcontrib-jsmath 1.0.1 py_0 conda-forge sphinxcontrib-qthelp 1.0.2 py_0 conda-forge sphinxcontrib-serializinghtml 1.1.3 py_0 conda-forge spyder 3.3.6 py36_1 conda-forge spyder-kernels 0.5.2 py36_0 conda-forge spyder-notebook 0.1.4 py_0 conda-forge sqlite 3.26.0 hb1c47c0_0 conda-forge statsmodels 0.9.0 py36h7eb728f_0 conda-forge stdlib-list 0.5.0 py36_1000 conda-forge symengine 0.3.0 1 conda-forge sympy 1.4 py36_0 conda-forge tblib 1.4.0 py_0 conda-forge terminado 0.8.3 py36_0 conda-forge testpath 0.4.4 py_0 conda-forge tk 8.6.9 ha92aebf_0 conda-forge toolz 0.10.0 py_0 conda-forge tornado 5.1.1 py36h470a237_0 conda-forge tqdm 4.39.0 py_0 conda-forge traitlets 4.3.3 py36_0 conda-forge traits 4.6.0 py36h470a237_2 conda-forge traitsui 6.1.3 py_0 conda-forge traittypes 0.2.1 py_1 conda-forge twine 1.13.0 py_0 conda-forge typed-ast 1.1.1 py36h470a237_0 conda-forge uncertainties 3.1.2 py36_0 conda-forge unidecode 1.1.1 py_0 conda-forge urllib3 1.25.7 py36_0 conda-forge vega 2.6.0 py36_0 conda-forge wcwidth 0.1.7 py_1 conda-forge webencodings 0.5.1 py_1 conda-forge werkzeug 0.16.0 py_0 conda-forge wheel 0.33.6 py36_0 conda-forge widgetsnbextension 3.5.1 py36_0 conda-forge wrapt 1.11.0 py36h470a237_0 conda-forge wurlitzer 1.0.3 py36_0 conda-forge wxpython 4.0.3 py36hd2a7a6d_2 conda-forge xlrd 1.2.0 py_0 conda-forge xonsh 0.9.13 py36_0 conda-forge xorg-kbproto 1.0.7 h470a237_2 conda-forge xorg-libice 1.0.9 h470a237_4 conda-forge xorg-libsm 1.2.3 h8c8a85c_0 conda-forge xorg-libx11 1.6.6 h470a237_0 conda-forge xorg-libxau 1.0.8 h470a237_6 conda-forge xorg-libxdmcp 1.1.2 h470a237_7 conda-forge xorg-libxext 1.3.3 h470a237_4 conda-forge xorg-libxpm 3.5.12 h470a237_2 conda-forge xorg-libxrender 0.9.10 h470a237_2 conda-forge xorg-libxt 1.1.5 h470a237_2 conda-forge xorg-renderproto 0.11.1 h470a237_2 conda-forge xorg-xextproto 7.3.0 h470a237_2 conda-forge xorg-xproto 7.0.31 h470a237_7 conda-forge xz 5.2.4 h470a237_1 conda-forge yaml 0.1.7 h470a237_1 conda-forge yeadon 1.3.0 py36_1001 conda-forge zeromq 4.2.5 hfc679d8_6 conda-forge zict 1.0.0 py_0 conda-forge zipp 0.6.0 py_0 conda-forge zlib 1.2.11 h470a237_4 conda-forge zstd 1.3.3 1 conda-forge ```


Details about conda and system ( conda info ):

``` $ conda info active environment : None user config file : /home/moorepants/.condarc populated config files : /home/moorepants/.condarc conda version : 4.7.12 conda-build version : 3.16.3 python version : 3.6.7.final.0 virtual packages : base environment : /home/moorepants/miniconda3 (writable) channel URLs : https://conda.anaconda.org/conda-forge/linux-64 https://conda.anaconda.org/conda-forge/noarch http://repo.continuum.io/pkgs/free/linux-64 http://repo.continuum.io/pkgs/free/noarch https://conda.anaconda.org/pydy/linux-64 https://conda.anaconda.org/pydy/noarch https://conda.anaconda.org/moorepants/linux-64 https://conda.anaconda.org/moorepants/noarch package cache : /home/moorepants/miniconda3/pkgs /home/moorepants/.conda/pkgs envs directories : /home/moorepants/miniconda3/envs /home/moorepants/.conda/envs platform : linux-64 user-agent : conda/4.7.12 requests/2.22.0 CPython/3.6.7 Linux/4.15.0-70-generic ubuntu/18.04.3 glibc/2.27 UID:GID : 1000:1000 netrc file : /home/moorepants/.netrc offline mode : False ```
ocefpaf commented 4 years ago

Do you want to send a PR to fix that?

moorepants commented 4 years ago

Do I want to? :smile: Not particularly. But I suppose I can.

moorepants commented 4 years ago

I see smmap in gitdb's meta.yaml: https://github.com/conda-forge/gitdb-feedstock/blob/master/recipe/meta.yaml

moorepants commented 4 years ago

But I'm not seeing gitdb as a dep for nbdime: https://github.com/conda-forge/nbdime-feedstock/blob/master/recipe/meta.yaml#L39

moorepants commented 4 years ago

Seems like this is the dep stack:

nbdime > GitPython > gitdb2 > smmap2 based on the metal.yaml's in each feedstock.

But gitdb was trying to be run not gitdb2 in my error. I'm not quite sure what that means.

vidartf commented 4 years ago

Are you sure this is not an issue with GitPython?

moorepants commented 4 years ago

It may be. Haven't really figured it out. Could be because I have gitdb and gitdb2 installed (or didn't have gitdb2). It's problematic to have two packages named differently yet they have the same python import.

parmentelat commented 4 years ago

for the record, I just ran into the same garbled error message when trying to run git diff on a Jupyter notebook, and could get rid of this issue with

pip install -U smmap

which - surprisingly enough - was already installed, but got upgraded from 3.0.1 to 3.0.2

minrk commented 4 years ago

should be closed by #27