ContinuumIO / anaconda-issues

Anaconda issue tracking
646 stars 220 forks source link

UnboundLocalError: local variable 'DISTRO_NAME' referenced before assignment #11807

Open Aguinore opened 4 years ago

Aguinore commented 4 years ago

Actual Behavior

anaconda-navigator run from terminal throws an exception and got stuck

Traceback (most recent call last):
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/widgets/main_window.py", line 541, in setup
    self.post_setup(conda_data=conda_data)
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/widgets/main_window.py", line 578, in post_setup
    self.tab_home.setup(conda_data)
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/widgets/tabs/home.py", line 169, in setup
    self.set_applications(applications, packages)
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/widgets/tabs/home.py", line 204, in set_applications
    apps = self.api.process_apps(applications, prefix=self.current_prefix)
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/api/anaconda_api.py", line 848, in process_apps
    app = app(config=self.config, process_api=self._process_api, conda_api=self._conda_api)
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/api/external_apps/vscode.py", line 48, in __init__
    **kwargs
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/api/external_apps/base.py", line 43, in __init__
    self.init()
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/api/external_apps/base.py", line 60, in init
    SUBDIR, INST_EXT, INST_DIR = self._find_linux_install_dir()
  File "/home/user/anaconda3/lib/python3.7/site-packages/anaconda_navigator/api/external_apps/vscode.py", line 168, in _find_linux_install_dir
    if DISTRO_NAME in ['ubuntu', 'debian']:
UnboundLocalError: local variable 'DISTRO_NAME' referenced before assignment

Expected Behavior

ahaconda-navigator should start normally

Steps to Reproduce

run anaconda-navigator from terminal in Linux Mint 19

Anaconda or Miniconda version:

Anaconda3-2020.02-Linux-x86_64.sh

Operating System:

Linux Mint 19.3

conda info
     active environment : base
    active env location : /home/user/anaconda3
            shell level : 1
       user config file : /home/user/.condarc
 populated config files : /home/user/.condarc
          conda version : 4.8.2
    conda-build version : 3.18.11
         python version : 3.7.6.final.0
       virtual packages : __glibc=2.27
       base environment : /home/user/anaconda3  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /home/user/anaconda3/pkgs
                          /home/user/.conda/pkgs
       envs directories : /home/user/anaconda3/envs
                          /home/user/.conda/envs
               platform : linux-64
             user-agent : conda/4.8.2 requests/2.22.0 CPython/3.7.6 Linux/5.0.0-32-generic linuxmint/19.3 glibc/2.27
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False
conda list --show-channel-urls
# packages in environment at /home/user/anaconda3:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0                    py37_0    defaults
_libgcc_mutex             0.1                        main    defaults
alabaster                 0.7.12                   py37_0    defaults
anaconda                  2020.02                  py37_0    defaults
anaconda-client           1.7.2                    py37_0    defaults
anaconda-navigator        1.9.12                   py37_0    defaults
anaconda-project          0.8.4                      py_0    defaults
argh                      0.26.2                   py37_0    defaults
asn1crypto                1.3.0                    py37_0    defaults
astroid                   2.3.3                    py37_0    defaults
astropy                   4.0              py37h7b6447c_0    defaults
atomicwrites              1.3.0                    py37_1    defaults
attrs                     19.3.0                     py_0    defaults
autopep8                  1.4.4                      py_0    defaults
babel                     2.8.0                      py_0    defaults
backcall                  0.1.0                    py37_0    defaults
backports                 1.0                        py_2    defaults
backports.functools_lru_cache 1.6.1                      py_0    defaults
backports.shutil_get_terminal_size 1.0.0                    py37_2    defaults
backports.tempfile        1.0                        py_1    defaults
backports.weakref         1.0.post1                  py_1    defaults
beautifulsoup4            4.8.2                    py37_0    defaults
bitarray                  1.2.1            py37h7b6447c_0    defaults
bkcharts                  0.2                      py37_0    defaults
blas                      1.0                         mkl    defaults
bleach                    3.1.0                    py37_0    defaults
blosc                     1.16.3               hd408876_0    defaults
bokeh                     1.4.0                    py37_0    defaults
boto                      2.49.0                   py37_0    defaults
bottleneck                1.3.2            py37heb32a55_0    defaults
bzip2                     1.0.8                h7b6447c_0    defaults
ca-certificates           2020.1.1                      0    defaults
cairo                     1.14.12              h8948797_3    defaults
certifi                   2019.11.28               py37_0    defaults
cffi                      1.14.0           py37h2e261b9_0    defaults
chardet                   3.0.4                 py37_1003    defaults
click                     7.0                      py37_0    defaults
cloudpickle               1.3.0                      py_0    defaults
clyent                    1.2.2                    py37_1    defaults
colorama                  0.4.3                      py_0    defaults
conda                     4.8.2                    py37_0    defaults
conda-build               3.18.11                  py37_0    defaults
conda-env                 2.6.0                         1    defaults
conda-package-handling    1.6.0            py37h7b6447c_0    defaults
conda-verify              3.4.2                      py_1    defaults
contextlib2               0.6.0.post1                py_0    defaults
cryptography              2.8              py37h1ba5d50_0    defaults
curl                      7.68.0               hbc83047_0    defaults
cycler                    0.10.0                   py37_0    defaults
cython                    0.29.15          py37he6710b0_0    defaults
cytoolz                   0.10.1           py37h7b6447c_0    defaults
dask                      2.11.0                     py_0    defaults
dask-core                 2.11.0                     py_0    defaults
dbus                      1.13.12              h746ee38_0    defaults
decorator                 4.4.1                      py_0    defaults
defusedxml                0.6.0                      py_0    defaults
diff-match-patch          20181111                   py_0    defaults
distributed               2.11.0                   py37_0    defaults
docutils                  0.16                     py37_0    defaults
entrypoints               0.3                      py37_0    defaults
et_xmlfile                1.0.1                    py37_0    defaults
expat                     2.2.6                he6710b0_0    defaults
fastcache                 1.1.0            py37h7b6447c_0    defaults
filelock                  3.0.12                     py_0    defaults
flake8                    3.7.9                    py37_0    defaults
flask                     1.1.1                      py_0    defaults
fontconfig                2.13.0               h9420a91_0    defaults
freetype                  2.9.1                h8a8886c_1    defaults
fribidi                   1.0.5                h7b6447c_0    defaults
fsspec                    0.6.2                      py_0    defaults
future                    0.18.2                   py37_0    defaults
get_terminal_size         1.0.0                haa9412d_0    defaults
gevent                    1.4.0            py37h7b6447c_0    defaults
glib                      2.63.1               h5a9c865_0    defaults
glob2                     0.7                        py_0    defaults
gmp                       6.1.2                h6c8ec71_1    defaults
gmpy2                     2.0.8            py37h10f8cd9_2    defaults
graphite2                 1.3.13               h23475e2_0    defaults
greenlet                  0.4.15           py37h7b6447c_0    defaults
gst-plugins-base          1.14.0               hbbd80ab_1    defaults
gstreamer                 1.14.0               hb453b48_1    defaults
h5py                      2.10.0           py37h7918eee_0    defaults
harfbuzz                  1.8.8                hffaf4a1_0    defaults
hdf5                      1.10.4               hb1b8bf9_0    defaults
heapdict                  1.0.1                      py_0    defaults
html5lib                  1.0.1                    py37_0    defaults
hypothesis                5.5.4                      py_0    defaults
icu                       58.2                 h9c2bf20_1    defaults
idna                      2.8                      py37_0    defaults
imageio                   2.6.1                    py37_0    defaults
imagesize                 1.2.0                      py_0    defaults
importlib_metadata        1.5.0                    py37_0    defaults
intel-openmp              2020.0                      166    defaults
intervaltree              3.0.2                      py_0    defaults
ipykernel                 5.1.4            py37h39e3cac_0    defaults
ipython                   7.12.0           py37h5ca1d4c_0    defaults
ipython_genutils          0.2.0                    py37_0    defaults
ipywidgets                7.5.1                      py_0    defaults
isort                     4.3.21                   py37_0    defaults
itsdangerous              1.1.0                    py37_0    defaults
jbig                      2.1                  hdba287a_0    defaults
jdcal                     1.4.1                      py_0    defaults
jedi                      0.14.1                   py37_0    defaults
jeepney                   0.4.2                      py_0    defaults
jinja2                    2.11.1                     py_0    defaults
joblib                    0.14.1                     py_0    defaults
jpeg                      9b                   h024ee3a_2    defaults
json5                     0.9.1                      py_0    defaults
jsonschema                3.2.0                    py37_0    defaults
jupyter                   1.0.0                    py37_7    defaults
jupyter_client            5.3.4                    py37_0    defaults
jupyter_console           6.1.0                      py_0    defaults
jupyter_core              4.6.1                    py37_0    defaults
jupyterlab                1.2.6              pyhf63ae98_0    defaults
jupyterlab_server         1.0.6                      py_0    defaults
keyring                   21.1.0                   py37_0    defaults
kiwisolver                1.1.0            py37he6710b0_0    defaults
krb5                      1.17.1               h173b8e3_0    defaults
lazy-object-proxy         1.4.3            py37h7b6447c_0    defaults
ld_impl_linux-64          2.33.1               h53a641e_7    defaults
libarchive                3.3.3                h5d8350f_5    defaults
libcurl                   7.68.0               h20c2e04_0    defaults
libedit                   3.1.20181209         hc058e9b_0    defaults
libffi                    3.2.1                hd88cf55_4    defaults
libgcc-ng                 9.1.0                hdf63c60_0    defaults
libgfortran-ng            7.3.0                hdf63c60_0    defaults
liblief                   0.9.0                h7725739_2    defaults
libpng                    1.6.37               hbc83047_0    defaults
libsodium                 1.0.16               h1bed415_0    defaults
libspatialindex           1.9.3                he6710b0_0    defaults
libssh2                   1.8.2                h1ba5d50_0    defaults
libstdcxx-ng              9.1.0                hdf63c60_0    defaults
libtiff                   4.1.0                h2733197_0    defaults
libtool                   2.4.6                h7b6447c_5    defaults
libuuid                   1.0.3                h1bed415_2    defaults
libxcb                    1.13                 h1bed415_1    defaults
libxml2                   2.9.9                hea5a465_1    defaults
libxslt                   1.1.33               h7d1a2b0_0    defaults
llvmlite                  0.31.0           py37hd408876_0    defaults
locket                    0.2.0                    py37_1    defaults
lxml                      4.5.0            py37hefd8a0e_0    defaults
lz4-c                     1.8.1.2              h14c3975_0    defaults
lzo                       2.10                 h49e0be7_2    defaults
markupsafe                1.1.1            py37h7b6447c_0    defaults
matplotlib                3.1.3                    py37_0    defaults
matplotlib-base           3.1.3            py37hef1b27d_0    defaults
mccabe                    0.6.1                    py37_1    defaults
mistune                   0.8.4            py37h7b6447c_0    defaults
mkl                       2020.0                      166    defaults
mkl-service               2.3.0            py37he904b0f_0    defaults
mkl_fft                   1.0.15           py37ha843d7b_0    defaults
mkl_random                1.1.0            py37hd6b4f25_0    defaults
mock                      4.0.1                      py_0    defaults
more-itertools            8.2.0                      py_0    defaults
mpc                       1.1.0                h10f8cd9_1    defaults
mpfr                      4.0.1                hdf1c602_3    defaults
mpmath                    1.1.0                    py37_0    defaults
msgpack-python            0.6.1            py37hfd86e86_1    defaults
multipledispatch          0.6.0                    py37_0    defaults
navigator-updater         0.2.1                    py37_0    defaults
nbconvert                 5.6.1                    py37_0    defaults
nbformat                  5.0.4                      py_0    defaults
ncurses                   6.2                  he6710b0_0    defaults
networkx                  2.4                        py_0    defaults
nltk                      3.4.5                    py37_0    defaults
nose                      1.3.7                    py37_2    defaults
notebook                  6.0.3                    py37_0    defaults
numba                     0.48.0           py37h0573a6f_0    defaults
numexpr                   2.7.1            py37h423224d_0    defaults
numpy                     1.18.1           py37h4f9e942_0    defaults
numpy-base                1.18.1           py37hde5b4d6_1    defaults
numpydoc                  0.9.2                      py_0    defaults
olefile                   0.46                     py37_0    defaults
openpyxl                  3.0.3                      py_0    defaults
openssl                   1.1.1d               h7b6447c_4    defaults
packaging                 20.1                       py_0    defaults
pandas                    1.0.1            py37h0573a6f_0    defaults
pandoc                    2.2.3.2                       0    defaults
pandocfilters             1.4.2                    py37_1    defaults
pango                     1.42.4               h049681c_0    defaults
parso                     0.5.2                      py_0    defaults
partd                     1.1.0                      py_0    defaults
patchelf                  0.10                 he6710b0_0    defaults
path                      13.1.0                   py37_0    defaults
path.py                   12.4.0                        0    defaults
pathlib2                  2.3.5                    py37_0    defaults
pathtools                 0.1.2                      py_1    defaults
patsy                     0.5.1                    py37_0    defaults
pcre                      8.43                 he6710b0_0    defaults
pep8                      1.7.1                    py37_0    defaults
pexpect                   4.8.0                    py37_0    defaults
pickleshare               0.7.5                    py37_0    defaults
pillow                    7.0.0            py37hb39fc2d_0    defaults
pip                       20.0.2                   py37_1    defaults
pixman                    0.38.0               h7b6447c_0    defaults
pkginfo                   1.5.0.1                  py37_0    defaults
pluggy                    0.13.1                   py37_0    defaults
ply                       3.11                     py37_0    defaults
prometheus_client         0.7.1                      py_0    defaults
prompt_toolkit            3.0.3                      py_0    defaults
psutil                    5.6.7            py37h7b6447c_0    defaults
ptyprocess                0.6.0                    py37_0    defaults
py                        1.8.1                      py_0    defaults
py-lief                   0.9.0            py37h7725739_2    defaults
pycodestyle               2.5.0                    py37_0    defaults
pycosat                   0.6.3            py37h7b6447c_0    defaults
pycparser                 2.19                     py37_0    defaults
pycrypto                  2.6.1            py37h14c3975_9    defaults
pycurl                    7.43.0.5         py37h1ba5d50_0    defaults
pydocstyle                4.0.1                      py_0    defaults
pyflakes                  2.1.1                    py37_0    defaults
pygments                  2.5.2                      py_0    defaults
pylint                    2.4.4                    py37_0    defaults
pyodbc                    4.0.30           py37he6710b0_0    defaults
pyopenssl                 19.1.0                   py37_0    defaults
pyparsing                 2.4.6                      py_0    defaults
pyqt                      5.9.2            py37h05f1152_2    defaults
pyrsistent                0.15.7           py37h7b6447c_0    defaults
pysocks                   1.7.1                    py37_0    defaults
pytables                  3.6.1            py37h71ec239_0    defaults
pytest                    5.3.5                    py37_0    defaults
pytest-arraydiff          0.3              py37h39e3cac_0    defaults
pytest-astropy            0.8.0                      py_0    defaults
pytest-astropy-header     0.1.2                      py_0    defaults
pytest-doctestplus        0.5.0                      py_0    defaults
pytest-openfiles          0.4.0                      py_0    defaults
pytest-remotedata         0.3.2                    py37_0    defaults
python                    3.7.6                h0371630_2    defaults
python-dateutil           2.8.1                      py_0    defaults
python-jsonrpc-server     0.3.4                      py_0    defaults
python-language-server    0.31.7                   py37_0    defaults
python-libarchive-c       2.8                     py37_13    defaults
pytz                      2019.3                     py_0    defaults
pywavelets                1.1.1            py37h7b6447c_0    defaults
pyxdg                     0.26                       py_0    defaults
pyyaml                    5.3              py37h7b6447c_0    defaults
pyzmq                     18.1.1           py37he6710b0_0    defaults
qdarkstyle                2.8                        py_0    defaults
qt                        5.9.7                h5867ecd_1    defaults
qtawesome                 0.6.1                      py_0    defaults
qtconsole                 4.6.0                      py_1    defaults
qtpy                      1.9.0                      py_0    defaults
readline                  7.0                  h7b6447c_5    defaults
requests                  2.22.0                   py37_1    defaults
ripgrep                   11.0.2               he32d670_0    defaults
rope                      0.16.0                     py_0    defaults
rtree                     0.9.3                    py37_0    defaults
ruamel_yaml               0.15.87          py37h7b6447c_0    defaults
scikit-image              0.16.2           py37h0573a6f_0    defaults
scikit-learn              0.22.1           py37hd81dba3_0    defaults
scipy                     1.4.1            py37h0b6359f_0    defaults
seaborn                   0.10.0                     py_0    defaults
secretstorage             3.1.2                    py37_0    defaults
send2trash                1.5.0                    py37_0    defaults
setuptools                45.2.0                   py37_0    defaults
simplegeneric             0.8.1                    py37_2    defaults
singledispatch            3.4.0.3                  py37_0    defaults
sip                       4.19.8           py37hf484d3e_0    defaults
six                       1.14.0                   py37_0    defaults
snappy                    1.1.7                hbae5bb6_3    defaults
snowballstemmer           2.0.0                      py_0    defaults
sortedcollections         1.1.2                    py37_0    defaults
sortedcontainers          2.1.0                    py37_0    defaults
soupsieve                 1.9.5                    py37_0    defaults
sphinx                    2.4.0                      py_0    defaults
sphinxcontrib             1.0                      py37_1    defaults
sphinxcontrib-applehelp   1.0.1                      py_0    defaults
sphinxcontrib-devhelp     1.0.1                      py_0    defaults
sphinxcontrib-htmlhelp    1.0.2                      py_0    defaults
sphinxcontrib-jsmath      1.0.1                      py_0    defaults
sphinxcontrib-qthelp      1.0.2                      py_0    defaults
sphinxcontrib-serializinghtml 1.1.3                      py_0    defaults
sphinxcontrib-websupport  1.2.0                      py_0    defaults
spyder                    4.0.1                    py37_0    defaults
spyder-kernels            1.8.1                    py37_0    defaults
sqlalchemy                1.3.13           py37h7b6447c_0    defaults
sqlite                    3.31.1               h7b6447c_0    defaults
statsmodels               0.11.0           py37h7b6447c_0    defaults
sympy                     1.5.1                    py37_0    defaults
tbb                       2020.0               hfd86e86_0    defaults
tblib                     1.6.0                      py_0    defaults
terminado                 0.8.3                    py37_0    defaults
testpath                  0.4.4                      py_0    defaults
tk                        8.6.8                hbc83047_0    defaults
toolz                     0.10.0                     py_0    defaults
tornado                   6.0.3            py37h7b6447c_3    defaults
tqdm                      4.42.1                     py_0    defaults
traitlets                 4.3.3                    py37_0    defaults
ujson                     1.35             py37h14c3975_0    defaults
unicodecsv                0.14.1                   py37_0    defaults
unixodbc                  2.3.7                h14c3975_0    defaults
urllib3                   1.25.8                   py37_0    defaults
watchdog                  0.10.2                   py37_0    defaults
wcwidth                   0.1.8                      py_0    defaults
webencodings              0.5.1                    py37_1    defaults
werkzeug                  1.0.0                      py_0    defaults
wheel                     0.34.2                   py37_0    defaults
widgetsnbextension        3.5.1                    py37_0    defaults
wrapt                     1.11.2           py37h7b6447c_0    defaults
wurlitzer                 2.0.0                    py37_0    defaults
xlrd                      1.2.0                    py37_0    defaults
xlsxwriter                1.2.7                      py_0    defaults
xlwt                      1.3.0                    py37_0    defaults
xmltodict                 0.12.0                     py_0    defaults
xz                        5.2.4                h14c3975_4    defaults
yaml                      0.1.7                had09818_2    defaults
yapf                      0.28.0                     py_0    defaults
zeromq                    4.3.1                he6710b0_3    defaults
zict                      1.0.0                      py_0    defaults
zipp                      2.2.0                      py_0    defaults
zlib                      1.2.11               h7b6447c_3    defaults
zstd                      1.3.7                h0b5b093_0    defaults
csoja commented 4 years ago

yes, this was a bug with build 0 of anaconda-navigator v1.9.12 on Linux. If you update to build 1, you should find this is fixed.

veita commented 3 years ago

This bug is not fixed. It also affects Anaconda3-2020.07-Linux-x86_64.sh on Linux Mint 20.

Anaconda Navigator does not start.

csoja commented 3 years ago

Can you provide the output from conda info and conda list --show-channel-urls ?

veita commented 3 years ago

It is the same error as above in vscode.py, line 168.

After conda update --all the error disappeared.

astrojuanlu commented 3 years ago

Anaconda 2020.07 has Navigator 1.9.12 build 0, hence the version with the bug.