Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve fklearn build process for local testing/development #196

Open
erickisos opened this issue May 11, 2022 · 1 comment
Open

Improve fklearn build process for local testing/development #196

erickisos opened this issue May 11, 2022 · 1 comment
Labels
bug Something isn't working enhancement New feature or request question Further information is requested

Comments

@erickisos
Copy link
Contributor

My Computer

  • Macbook Pro M1
  • macOS Big Sur 11.6.3
  • conda 4.11.0
  • python 3.9.12

Context

Hey folks, recently I tried to install fklearn on my personal computer and realized that the main installation is not pretty straightforward.
I will add my detailed steps but it would be great to know wdyt about migrating some libraries in order to improve this process, the main error that I'm still getting is this one:

error: legacy-install-failure

Instructions

  • Clone the repository on a clean machine
  • Install any conda environment, that just has access to conda repos and pypi.
  • conda create -n fklearn python=3.9
  • conda activate
  • pip install -e ".[all]" (to start working with this repo).

At the last point I started having the error legacy-install-failure with numpy, so I tried to install first numpy using conda with:

conda install numpy

Fortunately, conda installed all the missing dependencies (like the BLAS libraries), however, when I tried to re-run the pip install -e ".[all]" I received the exact same error with numpy, so after reviewing the content of the trace, I realized that the version installed by conda was different, conda installed numpy==1.22 (which seems to be valid according to the requirements file) but the main pip process was trying to install numpy==1.18 and it seems like, that version didn't include the bdist/wheels needed, or was unable to build'em because some of the other libraries (I'm not sure about which ones) are using a pyproject.toml definition now.

So the next step was to retry installing that specific version using conda: conda install 'numpy=1.18', which helped me avoid the problem with numpy.
In the next iteration I had the same error with scikit-learn so the process was the same, check if the expected version was in the conda-forge repo and after that just run the install command.

Expected behavior

It would be great if at some point we are able to just run a `pip install -e ".[all]"' to start testing locally the library, maybe this is just a problem related to my computer, but I want to be sure that this is not a problem for someone else.
Maybe the M1 chip is not supported yet, and maybe we are in the process to start supporting that chip (without using rosetta?)

Possible solutions

As I saw, it seems like there are some libraries that could be installed without any problem directly with conda, so in my understanding, it means that we can find a way to do that directly without having to deal with extra iterations for the compiled packages that we use.

Thanks in advance!

@erickisos erickisos added bug Something isn't working enhancement New feature or request question Further information is requested labels May 11, 2022
@erickisos
Copy link
Contributor Author

After checking the full process, the main libraries with issues were:

  • numpy
  • scikit-learn (required a different version of numpy)
  • numba (required another version of numpy by default)

Given that information, it seems like this is related to #136 and maybe #135

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request question Further information is requested
Projects
None yet
Development

No branches or pull requests

1 participant