haesleinhuepf / napari-time-slicer

A meta plugin for processing timelapse data timepoint by timepoint in napari
BSD 3-Clause "New" or "Revised" License
5 stars 3 forks source link

pyqt5 dependency #8

Closed guiwitz closed 2 years ago

guiwitz commented 2 years ago

The dependency on pyqt5 which gets installed via pip can create trouble if napari has been installed via conda (see https://napari.org/plugins/best_practices.html#don-t-include-pyside2-or-pyqt5-in-your-plugin-s-dependencies). Is there any reason for this dependency? As this plugin is itself a dependency of other plugins like napari-segment-blobs-and-things-with-membranes this can create trouble down the chain.

haesleinhuepf commented 2 years ago

Hi @guiwitz ,

pyqt5 in that high version was introduced to fix this bug:

We could try though if it's no longer necessary...

psobolewskiPhD commented 2 years ago

Yeah, this also breaks installing napari-apoc and napari-clesperanto on arm64 M1, because pyqt5 doesn't have a arm64 wheel on pip and basically can't be built from source. Is there some other way to check for pyqt that would pick up the conda one?

Edit: what's odd is that pyqt5 requirement was added months ago and I'm having the issue just now, when I install napari-pycl-assistant into every env, so I woulda hit this earlier and not today while trying to demo something (it's always when doing a demo, right? 🤣)

haesleinhuepf commented 2 years ago

Yeah, this also breaks installing napari-apoc and napari-clesperanto

Can you try installing those via conda? I'm wondering why those things just work on my Mac though...

psobolewskiPhD commented 2 years ago

Don't get me wrong, I'm all about conda (mamba fire 🔥 🚀), but conda isn't a source for the napari plugin GUI I was demo'ing though... Also, for the case of the napari-pycl-assistant, the conda package is dated: napari-pyclesperanto-assistant 0.18.0 pyhd8ed1ab_0 conda-forge/noarch Re: your mac, I think we determined you're running x86 python and I have arm64? 🤷‍♂️ (and this all worked not that long ago, I don't know why it's broken now...)

Edit: napari-apoc is wierd? conda is newer? Latest release is 0.7.4 (https://github.com/haesleinhuepf/napari-accelerated-pixel-and-object-classification/releases) but conda-forge has 0.8.1: napari-accelerated-pixel-and-object-classification 0.8.1 pyhd8ed1ab_0 conda-forge/noarch 🤯

haesleinhuepf commented 2 years ago

Ok @psobolewskiPhD that's all issues to discuss in other places.

@guiwitz I will release a time-slicer without pyqt dependency and we'll see how it works. Thanks for bringing this up!

haesleinhuepf commented 2 years ago

It's released. Try out

pip install napari-time-slicer==0.4.7

Feedback is very welcome!

psobolewskiPhD commented 2 years ago

Was able to use the napari GUI to install napari-pycl-assistant and everything runs fine. Thanks!