-
Notifications
You must be signed in to change notification settings - Fork 144
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
Tested Nexus dependency versions needed #5253
Comments
Let me know if the above sounds reasonable - will create a PR with the said requirements.txt and some updates to the documentation. |
There are a couple of issues here. (1) spglib 2.5 available since July 2024 doesn't work. (2) Documenting the requirements for Nexus including which versions are supported. (1) should really be an extra issue. (2) adding a requirements file will help but we also need to include the info about 2.5.0 not working. (Eventually all of these packages will be updated due to their dependencies forcing updates, or they will have security issues) . Note that we have examples of which python package versions "work" internally since we run the nexus tests for every PR and in nightly tests. I checked a couple of cases and e.g. in some of the nightlies we have spglib 2.0.2, the latest supported by spack. Unfortunately ntest_nexus_versions doesn't actually print which versions it found, only a pass/fail, so the dashboard submissions are not helpful to see them ( e.g. https://cdash.qmcpack.org/tests/10437305 ). So one of the first steps will be to add recent spglib versions to spack. |
Unfortunately the spglib requirements are more complex than its pyproject.toml imply. Was not able to immediately find a clean list of what the real dependencies are for released versions. |
Practical suggestion to keep moving forward: make a requirements.txt and a requirements_minimal.txt that skips the optional dependencies. Add comments describing the situation, e.g. "While Nexus does not have strict version requirements, this requirements file corresponds to versions that have been tested and are known to work.", and noting the spglib problem with 2.5.0 (Note that the AFMC tools are presently broken #4653 with recent PySCF, hopefully only due to PySCF changes and not due to anything else.) |
I think this is a good idea. Most recent known complete working set of module dependencies is valuable. Having a |
Describe the bug
It would be great to have information on the latest tested Nexus dependencies where all the tests pass. Breakages in the tests can occur due to newer versions of these dependencies, so fixing the versions would help users start running QMC. A recent example is breakage due to the new numpy version. I now see an issue with the newest spglib version 2.5.0 where 3 tests fail in Nexus on my local machine. All tests pass in 2.4.0. See the attached log files for these different versions.
spglib_2-4-0.txt
spglib_2-5-0.txt
How about we include a simple
requirements.txt
file with versions underqmcpack/nexus/
? The user can simply runpip install -r requirements.txt
. Using my current environment where I only fix spglib==2.4.0 and others to be the latest available versions, I get the following forrequirements.txt
(for which all tests pass):To Reproduce
Using Python 3.13.1 install spglib 2.5.0 vs 2.4.0 and all the other dependencies and run
nxs-test
.Expected behavior
Working versions for dependencies is needed where all tests pass.
System:
Local Linux machine
Additional context
Encountered when creating a new Nexus env for a new QMC user.
The text was updated successfully, but these errors were encountered: