h2oai / wave

Realtime Web Apps and Dashboards for Python and R
https://wave.h2o.ai
Apache License 2.0
3.9k stars 323 forks source link

Conda install works with python 3.11 only #2227

Closed mturoci closed 5 months ago

mturoci commented 6 months ago

Wave SDK Version, OS

1.0.0

Actual behavior

Running

conda create -n venv
conda activate venv
conda config --append channels conda-forge
conda install -c h2oai h2o-wave

results in Module not found err when trying to use wave command.

Using python 3.11 on the other hand works as expected

conda create -n venv python=3.11
conda activate venv
conda config --append channels conda-forge
conda install -c h2oai h2o-wave

Expected behavior

Should work python >= 3.8 as specified here.

marek-mihok commented 6 months ago

The reason is there are no python version specific package files on conda servers as there are present for previous versions of wave.

Looking at the dates between last two releases (22. september and 10. october) there are 2 suspicious commits that could introduce this change: https://github.com/h2oai/wave/commit/a476d7d69f98e85cb00179573c3a07eb9ddb38e2 https://github.com/h2oai/wave/commit/4e03645abfa2b939aa9fb46603f416b37ba357f1

I'm investigating further...

mturoci commented 6 months ago

Are you trying to say that previous release works on python 3.8 - 3.12?

marek-mihok commented 5 months ago

Previous release works on python 3.7.1-3.9. This is correct.

image

There is the same python 3.8 venv activated in both left and right terminal, but at first I installed wave with conda install -c h2oai h2o-wave==0.26.3 (output on the left) and then with conda install -c h2oai h2o-wave (output on the right).

When Wave 0.26.3 is installed, there is a h2o_wave-0.26.3-py3.8.egg file inside /Users/[my-user-name]/anaconda3/envs/my_intel_env_3_8/lib/python3.8/site-packages/ folder. On the other hand, when latest Wave is installed, there are no Wave related files inside this folder.

There is a new /Users/[my-user-name]/anaconda3/envs/my_intel_env_3_8/lib/python3.11 folder instead: image

However, when I move python3.11 folder content into python3.8 folder manually, the wave command works fine.

Note, that in both cases, wave binary is on the right place inside /Users/[my-user-name]/anaconda3/bin.

I suppose installation of site-packages for latest wave ignores the python version inside the environment and uses system python version instead.