-
Notifications
You must be signed in to change notification settings - Fork 19
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
Conflict between python==3.11 and numba~=0.56.0 for installation on osx-arm64 #126
Comments
I verified that the requirement numba~=0.56.0 comes from ctapipe 0.19 (that only requires python >=3.8), while the requirement python=3.11 is from nectarchain itself. Unfortunately these requirements do not seem to be compatible on the osx-arm64 platform. |
Hi @tibaldo , |
In that case I can successfully build nectarchain (with python 3.10.14) but then the tests fail with error messages alike
What was the reason to pin to python=3.11 for nectarchain? I guess some of the code in the core calibration package is written for python 3.11? |
OK, now this is weird because our tests run fine in CI, for several python versions. We test with python 3.9, 3.10 and 3.11 (see nectarchain/.github/workflows/ci.yml Line 37 in 74dbc10
I don't recall if there was any specific reason to pin python=3.11 in the environment specifications. In |
Okay, weird indeed. I'll dig into this tomorrow. |
The latter problem seems unrelated to the subject of this issue and shows up also in the CI for another OS. See #128 |
After the transient problem discussed in #128 was solved, I did manage to install nectarchain on my Mac ARM laptop. I had to relax the constraint on python>=3.9 as suggested by @jlenain, and also to add to the environment file the requirement on numba ~=0.56.0 (otherwise a higher python version is picked and the installation of nectarchain fails). I also had to move the zeo and zodb packages to the pip section because these packages do not seem to be installable via conda on osx-arm64. I published the changes on a dedicated branch. This is probably just a messy fix but I cannot figure out how to do it more elegantly. At least it's there for other people encountering the same problem for the time being. |
Hi again, @tibaldo !
to:
? Thanks! |
Oups, cross-posts... |
OK, thanks a lot for the check, @tibaldo , and this new branch! Overall, this should not cause any problem. |
It looks like a problem with dependency versions. LibMambaUnsatisfiableError: Encountered problems while solving:
Could not solve for environment specs When I install with pip I get higher versions of both packages (zeo 6.0.0 and zodb 6.0) which do not seem to have dependency issues (I get persistent 6.0 and btrees 6.0) |
I see, thanks... Indeed, |
Okay, thank you so much @jlenain ! Please let me know if I can assist with anything, do some tests etc. |
It seems These three behaviors can also be reproduced locally on an amd64 platform (aka linux-64, running Ubuntu_ 22.04 LTS). Also, installing a new
The same applies if we further pin
so it seems the @tibaldo , do you remember at which exact step your installation was failing in the first place ? |
In the meantime, I discovered that GitHub-hosted runners now also include macOS 14 on M1 (actions/runner-images#9254). Is it similar to your new hardware, @tibaldo ? I thus included a test in CI using this platform (main...tibaldo:nectarchain:126_installation_problems#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03fR60), which runs fine (without pinning |
Hi @jlenain, thanks a lot! |
Hi @tibaldo! |
I'm trying to install nectarchain on a new laptop with a Mac ARM chip and I get an incompatibility issue. On this platform numba~=0.56.0 is only compatible with python<3.11, and python 3.1 requires numba >=0.60. Is is possible to relax these version constraints or otherwise is there a known solution to this bug?
The text was updated successfully, but these errors were encountered: