mne-python
mne-python copied to clipboard
Conda installation hangs forever
Describe the bug
Very similar to https://github.com/mne-tools/mne-python/issues/10014, however, I'm trying to install several other packages as well. If I remove mne from the list, I'm able to install them (also, slow, but conda is never fast...). With mne included, I waited for about a day give or take a few hours, and it was still at 100% CPU "solving" something. Obviously, this is also a conda bug, but conda is beyond repair, so, unfortunately, others need to work around its problems.
The way I discovered the problem was by running conda build of a project that has a dependency on mne. So, unfortunately, I cannot use mamba, because boa is still in experimental stage. However, further investigation showed that:
conda install -y --strict-channel-priority --override-channels -c conda-forge \
"python==3.8" \
"conda==4.13.0" \
"pandas" \
"matplotlib" \
"scipy" \
"scikit-learn" \
"h5py" \
"pyxdf" \
"mne" \
"textdistance"
exhibits the same behavior.
This happens on Linux. I don't think that flavor or kernel version etc. are important, but will provide those if you think they are.
Expected results
The library installs in reasonable amount of time (at least under one hour!)
Actual results
No traceback. Also, conda swallows pdb errors, so, it's impossible to debug w/o much setup. When interrupted, the install doesn't show traceback.
Additional information
Impossible to run mne.sys_info() since it fails to install.
Hello! 👋 Thanks for opening your first issue here! ❤️ We will try to get back to you soon. 🚴🏽♂️
It seems like other requirements don't matter. Simply installing mne hangs forever, i.e.:
conda install -y --strict-channel-priority --override-channels -c conda-forge python==3.8 conda==4.13.0 mne
is enough to reproduce the problem.
Also, conda 4.11.0 has the same problem.
Further experiments showed that mne-base can be installed in the same context.
what do you mean by context? current environment?
Message ID: @.***>
I mean that it worked with Python 3.8 and conda 4.13.0, also all the other packages listed in the first post can be installed if I replace mne with mne-base. Also, I just tried adding Jupyter into the mix, and it was able to solve the environment.
ok but mne-base is very light weight. mne requires a bunch of stuff (3D libs, GUIs etc)
can you try on a fresh env or using mamba in you local environment?
Message ID: @.***>
I have to leave now, but I'll loop back to this tonight, so, hopefully will have more results.
Luckily for me, I only really needed the stuff from mne-base anyways, just didn't know it was a thing.
mamba has no problems installing mne with all the same requirements.
so let's use mamba ;)
Message ID: @.***>
I already mentioned above: that's not an option, because what hangs is conda-build, which, right now, cannot use mamba (and boa, the alternative to conda-build worked on by the same people who wrote mamba isn't done yet).
ok so if all you really need is mne-base and it works with the version of conda that you want, then this can be closed, yes? (If not we may need to close anyway as unfortunately there's little we can do to make conda's solver work better)
Maybe drop a line to Anaconda's people? I'm too tired of reminding them how conda is broken. They probably ignore this coming from the same person anyways.
Or, at the minimum, you could write in installation instructions to not use conda, since it doesn't work. Would save people some headache.
Since you seem to be very unhappy with conda, have you tried using pip? This is the official Python package manager, and I have found pip to work extremely well. I do not use conda/mamba for the same reasons you seem to have, so maybe pip is worth a try?
Nowadays we mostly advocate for using our installers. Closing as a (mostly) upstream issue