napari: Installing some plugins fails when conda-based environments are mixed with builtin pip installer
đ Bug
Hi all, Iâm just testing napari 0.4.11rc0. This error is however a bit older. I have seen it in other versions of napari before. Typically I see it when using the napari-app. Today it happened in napari installed via pip in a conda environment.
When installing stardist-napari, it takes forever and eventually fails:
ERROR: Could not install packages due to an OSError: [WinError 5] Access is denied: 'C:\\Windows\\Temp\\pip-uninstall-5s9yygth\\core\\_multiarray_tests.cp38-win_amd64.pyd'
Full log:
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
Collecting stardist-napari
Using cached stardist_napari-2021.6.28-py3-none-any.whl (28 kB)
Collecting tensorflow
Downloading tensorflow-2.6.0-cp38-cp38-win_amd64.whl (423.2 MB)
Collecting stardist>=0.7.0
Downloading stardist-0.7.3-cp38-cp38-win_amd64.whl (757 kB)
Requirement already satisfied: magicgui>=0.2.9 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from stardist-napari) (0.2.10)
Requirement already satisfied: napari>=0.4.8 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from stardist-napari) (0.4.11rc0)
Requirement already satisfied: qtpy>=1.7.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from magicgui>=0.2.9->stardist-napari) (1.9.0)
Requirement already satisfied: typing-extensions in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from magicgui>=0.2.9->stardist-napari) (3.7.4.3)
Requirement already satisfied: docstring-parser in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from magicgui>=0.2.9->stardist-napari) (0.8.1)
Requirement already satisfied: jsonschema>=3.2.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (3.2.0)
Requirement already satisfied: pydantic>=1.8.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (1.8.2)
Requirement already satisfied: tifffile>=2020.2.16 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (2021.7.2)
Requirement already satisfied: appdirs>=1.4.4 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (1.4.4)
Requirement already satisfied: pint>=0.17 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.17)
Requirement already satisfied: tqdm>=4.56.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (4.61.2)
Requirement already satisfied: PyYAML>=5.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (5.4.1)
Requirement already satisfied: numpydoc>=0.9.2 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (1.1.0)
Requirement already satisfied: scipy>=1.2.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (1.7.1)
Requirement already satisfied: imageio>=2.5.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (2.9.0)
Requirement already satisfied: napari-plugin-engine>=0.1.9 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.1.9)
Requirement already satisfied: napari-svg>=0.1.4 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.1.5)
Requirement already satisfied: cachey>=0.2.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.2.1)
Requirement already satisfied: wrapt>=1.11.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (1.12.1)
Requirement already satisfied: Pillow!=7.1.0,!=7.1.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (8.2.0)
Requirement already satisfied: PyOpenGL>=3.1.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (3.1.5)
Requirement already satisfied: napari-console>=0.0.3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.0.3)
Requirement already satisfied: superqt>=0.2.2 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.2.2)
Requirement already satisfied: vispy>=0.6.4 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.7.0)
Requirement already satisfied: toolz>=0.10.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (0.11.1)
Requirement already satisfied: dask[array]!=2.28.0,>=2.1.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (2021.5.1)
Requirement already satisfied: psutil>=5.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (5.8.0)
Requirement already satisfied: numpy>=1.16.5 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari>=0.4.8->stardist-napari) (1.21.1)
Requirement already satisfied: heapdict in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from cachey>=0.2.1->napari>=0.4.8->stardist-napari) (1.0.1)
Requirement already satisfied: fsspec>=0.6.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from dask[array]!=2.28.0,>=2.1.0->napari>=0.4.8->stardist-napari) (2021.7.0)
Requirement already satisfied: partd>=0.3.10 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from dask[array]!=2.28.0,>=2.1.0->napari>=0.4.8->stardist-napari) (1.2.0)
Requirement already satisfied: cloudpickle>=1.1.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from dask[array]!=2.28.0,>=2.1.0->napari>=0.4.8->stardist-napari) (1.6.0)
Requirement already satisfied: setuptools in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jsonschema>=3.2.0->napari>=0.4.8->stardist-napari) (49.6.0.post20210108)
Requirement already satisfied: attrs>=17.4.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jsonschema>=3.2.0->napari>=0.4.8->stardist-napari) (21.2.0)
Requirement already satisfied: six>=1.11.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jsonschema>=3.2.0->napari>=0.4.8->stardist-napari) (1.16.0)
Requirement already satisfied: pyrsistent>=0.14.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jsonschema>=3.2.0->napari>=0.4.8->stardist-napari) (0.17.3)
Requirement already satisfied: IPython>=7.7.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (7.25.0)
Requirement already satisfied: qtconsole!=4.7.6,>=4.5.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (5.1.1)
Requirement already satisfied: ipykernel>=5.2.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (6.0.1)
Requirement already satisfied: traitlets>=4.1.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from ipykernel>=5.2.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (5.0.5)
Requirement already satisfied: tornado>=4.2 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from ipykernel>=5.2.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (6.1)
Requirement already satisfied: jupyter-client in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from ipykernel>=5.2.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (6.1.12)
Requirement already satisfied: debugpy>=1.0.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from ipykernel>=5.2.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (1.3.0)
Requirement already satisfied: colorama in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.4.4)
Requirement already satisfied: matplotlib-inline in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.1.2)
Requirement already satisfied: pickleshare in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.7.5)
Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (3.0.19)
Requirement already satisfied: jedi>=0.16 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.18.0)
Requirement already satisfied: pygments in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (2.9.0)
Requirement already satisfied: backcall in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.2.0)
Requirement already satisfied: decorator in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (4.4.2)
Requirement already satisfied: parso<0.9.0,>=0.8.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jedi>=0.16->IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.8.2)
Requirement already satisfied: sphinx>=1.6.5 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (4.1.0)
Requirement already satisfied: Jinja2>=2.3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (3.0.1)
Requirement already satisfied: MarkupSafe>=2.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from Jinja2>=2.3->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2.0.1)
Requirement already satisfied: locket in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from partd>=0.3.10->dask[array]!=2.28.0,>=2.1.0->napari>=0.4.8->stardist-napari) (0.2.1)
Requirement already satisfied: packaging in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from pint>=0.17->napari>=0.4.8->stardist-napari) (21.0)
Requirement already satisfied: wcwidth in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->IPython>=7.7.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.2.5)
Requirement already satisfied: ipython-genutils in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from qtconsole!=4.7.6,>=4.5.1->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (0.2.0)
Requirement already satisfied: pyzmq>=17.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from qtconsole!=4.7.6,>=4.5.1->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (22.1.0)
Requirement already satisfied: jupyter-core in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from qtconsole!=4.7.6,>=4.5.1->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (4.7.1)
Requirement already satisfied: python-dateutil>=2.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jupyter-client->ipykernel>=5.2.0->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (2.8.2)
Requirement already satisfied: pywin32>=1.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from jupyter-core->qtconsole!=4.7.6,>=4.5.1->napari-console>=0.0.3->napari>=0.4.8->stardist-napari) (300)
Requirement already satisfied: sphinxcontrib-jsmath in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.0.1)
Requirement already satisfied: sphinxcontrib-qthelp in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.0.3)
Requirement already satisfied: alabaster<0.8,>=0.7 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (0.7.12)
Requirement already satisfied: docutils<0.18,>=0.14 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (0.17.1)
Requirement already satisfied: imagesize in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.2.0)
Requirement already satisfied: snowballstemmer>=1.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2.1.0)
Requirement already satisfied: sphinxcontrib-devhelp in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.0.2)
Requirement already satisfied: sphinxcontrib-htmlhelp in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2.0.0)
Requirement already satisfied: requests>=2.5.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2.26.0)
Requirement already satisfied: sphinxcontrib-applehelp in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.0.2)
Requirement already satisfied: sphinxcontrib-serializinghtml in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.1.5)
Requirement already satisfied: babel>=1.3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2.9.1)
Requirement already satisfied: pytz>=2015.7 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from babel>=1.3->sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2021.1)
Requirement already satisfied: idna<4,>=2.5 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from requests>=2.5.0->sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (3.2)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from requests>=2.5.0->sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (1.26.6)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from requests>=2.5.0->sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2021.5.30)
Requirement already satisfied: charset-normalizer~=2.0.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from requests>=2.5.0->sphinx>=1.6.5->numpydoc>=0.9.2->napari>=0.4.8->stardist-napari) (2.0.1)
Requirement already satisfied: scikit-image in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from stardist>=0.7.0->stardist-napari) (0.18.2)
Collecting csbdeep>=0.6.3
Downloading csbdeep-0.6.3-py2.py3-none-any.whl (73 kB)
Requirement already satisfied: numba in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from stardist>=0.7.0->stardist-napari) (0.53.1)
Requirement already satisfied: h5py<3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from csbdeep>=0.6.3->stardist>=0.7.0->stardist-napari) (2.10.0)
Requirement already satisfied: matplotlib in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from csbdeep>=0.6.3->stardist>=0.7.0->stardist-napari) (3.4.2)
Requirement already satisfied: kiwisolver in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from vispy>=0.6.4->napari>=0.4.8->stardist-napari) (1.3.1)
Requirement already satisfied: hsluv in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from vispy>=0.6.4->napari>=0.4.8->stardist-napari) (5.0.2)
Requirement already satisfied: freetype-py in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from vispy>=0.6.4->napari>=0.4.8->stardist-napari) (2.2.0)
Requirement already satisfied: cycler>=0.10 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from matplotlib->csbdeep>=0.6.3->stardist>=0.7.0->stardist-napari) (0.10.0)
Requirement already satisfied: pyparsing>=2.2.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from matplotlib->csbdeep>=0.6.3->stardist>=0.7.0->stardist-napari) (2.4.7)
Requirement already satisfied: llvmlite<0.37,>=0.36.0rc1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from numba->stardist>=0.7.0->stardist-napari) (0.36.0)
Requirement already satisfied: PyWavelets>=1.1.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from scikit-image->stardist>=0.7.0->stardist-napari) (1.1.1)
Requirement already satisfied: networkx>=2.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from scikit-image->stardist>=0.7.0->stardist-napari) (2.5.1)
Requirement already satisfied: flatbuffers~=1.12.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (1.12)
Requirement already satisfied: absl-py~=0.10 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (0.13.0)
Collecting tensorflow
Downloading tensorflow-2.5.1-cp38-cp38-win_amd64.whl (422.6 MB)
Using cached tensorflow-2.5.0-cp38-cp38-win_amd64.whl (422.6 MB)
Downloading tensorflow-2.4.3-cp38-cp38-win_amd64.whl (370.9 MB)
Requirement already satisfied: tensorboard~=2.4 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (2.5.0)
Collecting six>=1.11.0
Using cached six-1.15.0-py2.py3-none-any.whl (10 kB)
Requirement already satisfied: gast==0.3.3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (0.3.3)
Requirement already satisfied: astunparse~=1.6.3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (1.6.3)
Requirement already satisfied: grpcio~=1.32.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (1.32.0)
Requirement already satisfied: google-pasta~=0.2 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (0.2.0)
Requirement already satisfied: keras-preprocessing~=1.1.2 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (1.1.2)
Collecting numpy>=1.16.5
Using cached numpy-1.19.5-cp38-cp38-win_amd64.whl (13.3 MB)
Requirement already satisfied: opt-einsum~=3.3.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (3.3.0)
Requirement already satisfied: wheel~=0.35 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (0.36.2)
Requirement already satisfied: termcolor~=1.1.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (1.1.0)
Requirement already satisfied: protobuf>=3.9.2 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (3.17.3)
Requirement already satisfied: tensorflow-estimator<2.5.0,>=2.4.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorflow->stardist-napari) (2.4.0)
Requirement already satisfied: google-auth<2,>=1.6.3 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorboard~=2.4->tensorflow->stardist-napari) (1.34.0)
Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorboard~=2.4->tensorflow->stardist-napari) (0.4.5)
Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorboard~=2.4->tensorflow->stardist-napari) (0.6.1)
Requirement already satisfied: markdown>=2.6.8 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorboard~=2.4->tensorflow->stardist-napari) (3.3.4)
Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorboard~=2.4->tensorflow->stardist-napari) (1.8.0)
Requirement already satisfied: werkzeug>=0.11.15 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from tensorboard~=2.4->tensorflow->stardist-napari) (2.0.1)
Requirement already satisfied: pyasn1-modules>=0.2.1 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow->stardist-napari) (0.2.8)
Requirement already satisfied: cachetools<5.0,>=2.0.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow->stardist-napari) (4.2.2)
Requirement already satisfied: rsa<5,>=3.1.4 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow->stardist-napari) (4.7.2)
Requirement already satisfied: requests-oauthlib>=0.7.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard~=2.4->tensorflow->stardist-napari) (1.3.0)
Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from pyasn1-modules>=0.2.1->google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow->stardist-napari) (0.4.8)
Requirement already satisfied: oauthlib>=3.0.0 in c:\users\rober\miniconda3\envs\bio1\lib\site-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard~=2.4->tensorflow->stardist-napari) (3.1.1)
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
Installing collected packages: six, numpy, csbdeep, tensorflow, stardist, stardist-napari
Attempting uninstall: six
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
Found existing installation: six 1.16.0
Uninstalling six-1.16.0:
Successfully uninstalled six-1.16.0
Attempting uninstall: numpy
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
Found existing installation: numpy 1.21.1
Uninstalling numpy-1.21.1:
Successfully uninstalled numpy-1.21.1
ERROR: Could not install packages due to an OSError: [WinError 5] Access is denied: 'C:\\Windows\\Temp\\pip-uninstall-5s9yygth\\core\\_multiarray_tests.cp38-win_amd64.pyd'
Consider using the `--user` option or check the permissions.
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
WARNING: Ignoring invalid distribution -illow (c:\users\rober\miniconda3\envs\bio1\lib\site-packages)
To Reproduce
Steps to reproduce the behavior:
- Start Napari
- Go to the plugins installer
- Install stardist-napari (that also happens sometimes with other plugins)
Expected behavior
The installation works.
Environment
- Please copy and paste the information at napari info option in help menubar here: napari: 0.4.11rc0 Platform: Windows-10-10.0.19041-SP0 Python: 3.8.5 (default, Sep 3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)] Qt: 5.12.9 PyQt5: 5.12.3 NumPy: 1.21.1 SciPy: 1.7.1 Dask: 2021.05.1 VisPy: 0.7.0
OpenGL:
- GL version: 4.6.0 NVIDIA 466.77
- MAX_TEXTURE_SIZE: 32768
Screens:
- screen 1: resolution 1920x1200, scale 1.0
Plugins:
-
Measurements (Plot profile): 0.1.3
-
Measurements (skimage regionprops): 0.1.6
-
Search (Plugin): 0.1.0
-
Segmentation (OCLRFC): 0.4.4
-
Segmentation (split/merge): 0.1.2
-
Utilities (skimage regionprops): 0.1.6
-
Visualization(B/C): 0.1.1
-
aicsimageio-in-memory: 0.3.5
-
cellpose-napari: 0.1.3
-
clEsperanto: 0.10.0
-
console: 0.0.3
-
napari-yapic-prediction: 0.1.dev99
-
ome-types: 0.2.7
-
omero: 0.1.1
-
scikit-image: 0.4.11rc0
-
svg: 0.1.5
-
Any other relevant information:
Additional context
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 30 (28 by maintainers)
I can install stardist after some ânegotiationsâ đ
The important part here is to realize that reproducing these issues do not require napari at all. Itâs a Python packaging issue we can only circumvent by inspection, trial and error and experience. You can do:
And see the errors without napari ever having run. In the end napari it just running pip install for you.
Most of these issues are solved by pre-providing packages expected by the plugin with conda so pip doesnât have to mess with your conda environment. In the case of stardist, I needed this:
How did I know whick conda packages I should install before the plugin? Pip doesnât really have dry-runs⌠Well, I
Ctrl+C
mid tensorflow download đŹ But you can also run grayskull. Short tutorial:We take the
!
prefixed packages and rungrayskull again
:Rinse and repeat:
No
!
packages! Now we can compile the full list. Note that this is way more exhaustive than needed, but now we can compile that into something like this:The
!
packages must be installed withpip
but now the dependencies will be in place and wonât be installed with pip. In practice it just means installing the plugin with pip.Note that even with good tooling, we didnât detect the keras requirement, which needs to be pinned to the same version as tensorflow. Why? Bad metadata, what else. We need to fix that after the installation and first attempt to run the plugin. As you can see, a big mess and we didnât even run napari yet đ
Hope this helps!
this one states directly on the readme that you might run into that issue. I believe that you have build tools installed, but thereâs likely a PATH issue preventing pip from finding the appropriate compiler. That said, I would definitely say that this one is unfortunately up to plugin developers at the moment. That is, a plugin that requires the end-user to compile something (or depends on a package that does) is almost certainly going to fail for a lot of people. The âsolutionâ here is for either for
napari-autolign
to not depend onprobreg
(which neither distributes wheels, nor does it appear on conda-forge), or for them to help probreg create a wheel.I agree, this isnât intro level stuff⌠but thatâs definitely the state of the ecosystem for now. In other words, if conda forge and pypi havenât figured out how to solve this problem universally for python developers, then itâs very unlikely that we (napari) are going to be able to swoop in and make it all smooth for beginner napari plugin developers. Iâd say the best thing you can do to help at this point is encourage developers to consider their dependencies carefully.
napari-allencell-segmenter
,napari-autolign
, andstardist-napari
), I would say that the more appropriate place to open an issue and help out is at the respective plugin page, and not so much at napari. I suspect in all three of those cases there, the respective plugins would have been able to tell you why their plugin failed to install in your case. (though, granted, it may have taken some trouble shooting before they realized that you had a conda install and the installer was using pip)⌠so perhaps just remember that the builtin plugin installer, for now, is always pip.I really wish I had a go-to resource for you⌠but I suspect most of the devs here would tell you that they learned this gradually, by doing, and googling, and asking for help in forums
yep, Iâm worried about this impression as well. Iâd just keep going back to the concerns I listed at https://github.com/chanzuckerberg/napari-hub/discussions/299#discussioncomment-1528734. Personally, if I had my druthers, this would all be going slower. We need people like you (i.e. people who other people are pinging on image.sc for advice) to either understand this stuff or say âIâm really not sure, maybe a napari dev knows?ââŚ
I would also request that you avoid putting things like âseriously, donât use pip here, at least on Windowsâ in your readme. People are going to look at that and say âRobert is an expert here! I should do thatâ⌠They certainly arenât going to assume that itâs just because you had installed something into your local base conda environment that was messing things up.
Iâm +1 here. We can leave it another 24 hours for folks on different timezones to respond. But i feel like I might need to butcher Dostoevsky here - âAll happy plugins are alike; each unhappy plugins is unhappy in its own wayâ - so getting more granular feels like the way to go
thanks you for writing that up @jaimergp ⌠Iâm sure it will be helpful!
Agreed. Most of these things are bad interactions between
conda
andpip
, which transcends what napari can do for its users. The good part of reproducing them with aconda
environment is that all the dependencies can be supplied withconda
even if the plugins are installed withpip
. The bad part is that this is not easy to automate because (a)pip
dependencies are often not specified statically, but dynamically in the setup.py, so we need to execute the installation to know what conda packages are needed; (b) even if we know the pip packages, thePyPI names do not always correspond 1:1 toconda
âs.As I am typing this, I think one possible way we could automate this is using
grayskull
, a tool which helps creating recipes for PyPI packages. It handles some of these quirks but not all of them. We would basically generate a temporary recipe and install those dependencies for the pip package, and cross our fingers. It could work but I also anticipate fragile scenarios and weird errors. Maybe an option in the Plugin manager, like âpre-process installation with grayskullâ as a fallback? At least it wonât bonk theconda
environment. The problem is that this option is only useful if napari was installed as a conda package to begin with.I think I like this because it would also be useful in our conda-based future when we have pip-based plugins that havenât been ported to conda yet.
Thoughts @goanpeca?
Thanks for some great discussion on this issue and a really thoughtful last comment from @tlambert03. Iâm going to close this issue now and recommend more granular followups as need in new issues. Thanks again!
It would be nice to close this topic in favor of some more granular âtasksâ. Installing plugins doesnât globally fail on windows (the topic could be called ânapari-stardistâ install fails in the builtin plugin installer when numpy installed via conda). But there are definitely cases caused by both poor plugin development practice and user environment setup that we could try to make clearer with some documentation, and/or hub help. I agree completely with @jaimergp that in many cases this âtranscends what napari can do for its usersâ.
thanks, we donât really need âtestingâ per se, but we do need problem solving/debugging help and we also need documentation. If you wanted to help, but donât feel ready yet to debug these things, you could open a PR for a dos & donâtâs page listing some of the issues mentioned above, and some of the âgotchasâ youâve recently discovered when building your local environments. See also https://github.com/chanzuckerberg/napari-hub/discussions/333 and https://github.com/chanzuckerberg/napari-hub/discussions/331 for inspiration.
The first two here are fine⌠but
napari-allencell-segmenter
unfortunately explicitly declarespyqt5
in its requirements. Given that youâve installed napari via conda, you will have the conda version of Qt (which unfortunately names itselfpyqt
instead ofpyqt5
âŚ) and a conflict will result from installing this plugin via pip in the builtin plugin installer.Plugins should not be installing Qt backends on top of whatever the end-user already has. I opened this issue at the hub for the hub to detect and tell plugin devs not to do that: https://github.com/chanzuckerberg/napari-hub/discussions/333
An end-user that installed napari (and Qt) via conda is probably screwed in this case, since there is no conda package for napari-allencell-segmenter⌠so they have to install via pip, and it will bonk the environment
Weâll definitely keep looking into this - the more detailed examples should help a lot, thanks for providing them!
pip install .[bundle_build] python bundle.py