-
Notifications
You must be signed in to change notification settings - Fork 14
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
aiida-core installed by pip and bump python version 3.10 #316
Conversation
--file requirements.txt \ | ||
&& mamba clean --all -f -y && \ | ||
RUN pip install --no-cache-dir aiida-core==${AIIDA_VERSION} \ | ||
-r requirements.txt && \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This also means that things in requirement.txt
will be installed by pip. Is that what you wanted?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are right. To be honest, I have no idea why this requirements.txt
is needed, it has aiida-core
and pip
included, but aiida-core is already installed with specifying the version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed, the requirements.txt
file serves a double function as constraints file. The aiida-core version is not pinned using this file, but only constraint, as you can see here:
aiida-core>=2.0.0,<3 |
It would need to be updated if and only if the major version is changed.
The only other requirement in that file is the pinned pip version.
There is a big change here. The new base |
We encounter not just one problem install aiida/aiidaservices from conda conda-forge/aiida-core-feedstock#76 and python3.10 support here. I propose using pip for all the python packages and keeping mamba for the services and for installing the compiled software (e.g. QuantumESPRESS ..). Any thoughts? @danielhollas @yakutovicha |
@unkcpz I guess I don't see a reason why not use pip to install AiiDA, if that is a better supported installation method, and I guess it makes sense given that dependencies of AiiDAlab apps are installed via pip. I wonder if that would on the other hand solve the issue that I reported in #320 with pymatgen. I do worry a bit about the unintended consequences of this, as pip and conda sometimes interact strongly, but I don't have a deep experience with this. Definitely needs testing. |
Installing aiida-core with pip means that all of its (long list of) dependencies are also installed via pip which means that the conda environment is basically converted into a pip-managed environment rendering it almost unusable for further conda installations. |
I see, thanks! However, I still see no advantages of using conda over pip in installing |
486feb1
to
0897d53
Compare
Superseded by #337 |
fixes #265
I am more kin to using pip to install
aiida-core
which is more well-tested and has fewer restrictions when comes to conda dependencies (for example if we want to havearm64
supported).The current blocker of using python3.10 is that the wrapt 1.11 does not have python3.10 support which addressed by aiidateam/aiida-core#5698. It also shows that conda install of aiida-core is not well tested.