mne-python icon indicating copy to clipboard operation
mne-python copied to clipboard

Conda installation hangs forever

Open wvxvw opened this issue 3 years ago • 13 comments
trafficstars

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.

wvxvw avatar Jun 26 '22 10:06 wvxvw

Hello! 👋 Thanks for opening your first issue here! ❤️ We will try to get back to you soon. 🚴🏽‍♂️

welcome[bot] avatar Jun 26 '22 10:06 welcome[bot]

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.

wvxvw avatar Jun 26 '22 10:06 wvxvw

Further experiments showed that mne-base can be installed in the same context.

wvxvw avatar Jun 26 '22 12:06 wvxvw

what do you mean by context? current environment?

Message ID: @.***>

agramfort avatar Jun 26 '22 12:06 agramfort

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.

wvxvw avatar Jun 26 '22 12:06 wvxvw

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: @.***>

agramfort avatar Jun 26 '22 12:06 agramfort

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.

wvxvw avatar Jun 26 '22 12:06 wvxvw

mamba has no problems installing mne with all the same requirements.

wvxvw avatar Jun 26 '22 20:06 wvxvw

so let's use mamba ;)

Message ID: @.***>

agramfort avatar Jun 26 '22 20:06 agramfort

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).

wvxvw avatar Jun 27 '22 19:06 wvxvw

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)

drammock avatar Jun 30 '22 16:06 drammock

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.

wvxvw avatar Jul 01 '22 00:07 wvxvw

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?

cbrnr avatar Jul 01 '22 07:07 cbrnr

Nowadays we mostly advocate for using our installers. Closing as a (mostly) upstream issue

larsoner avatar Oct 21 '22 14:10 larsoner