openforcefield / openff-qcsubmit

Automated tools for submitting molecules to QCFractal
https://openff-qcsubmit.readthedocs.io/en/latest/index.html
MIT License
26 stars 4 forks source link

Update Psi4 version used in tests? #214

Open mattwthompson opened 1 year ago

mattwthompson commented 1 year ago

Tests currently run with version 1.5, which was released November 2021. There have been a few releases since then, including 1.7 released December 2022. Should we bump the Psi4 stack used to test this package? There are some other pins that look ominous to me:

https://github.com/openforcefield/openff-qcsubmit/blob/9ddddc1041d3da0eeacc2fd974daed6fc77258cd/devtools/conda-envs/psi4.yaml#L28-L32

hadim commented 1 year ago

I am jumping here as we are experimenting with this package with @cwognum.

It turns out the psi4 conda package from the psi4 conda channel has a lot of binary incompatibilities with the c-f packages. I wasn't aware of the pinning above when I was prototyping using psi4 a few months ago and ended up using the below env:

channels:
  - psi4
  - conda-forge

dependencies:
  - python >=3.8
  - pip
  - tqdm
  - datamol >=0.8.6

  - pandas
  - numpy
  - scipy
  - matplotlib
  - h5py >=3.7
  - ipywidgets =7.7

  - openff-units
  - qcelemental
  - qcengine =0.24
  - nglview
  - psi4::psi4 =1.6

  # https://github.com/psi4/psi4/issues/2621
  - psi4::libxc
  - psi4::gau2grid
  - psi4::libecpint
  - anaconda::intel-openmp

  - black
  - jupyterlab

The best fix here would be to have the psi4 package (and ecosystem) being moved to c-f. I know this is planned from https://github.com/psi4/psi4/issues/2621 but I don't think there is any ETA yet for when this could happen.

hadim commented 1 year ago

I have never been able to get psi4=1.7 to be correctly installed.

hadim commented 1 year ago

Also worth xref: https://github.com/psi4/psi4/issues/2300

hadim commented 1 year ago

In case it's useful I have been able to install and use psi4=1.7 with the following below env:

channels:
  - psi4
  - conda-forge

dependencies:
  - python =3.9
  - pip
  - tqdm
  - datamol >=0.8.6

  - pandas
  - numpy
  - scipy
  - matplotlib
  - h5py >=3.7
  - ipywidgets =7.7
  - nglview

  - openmm
  - openff-qcsubmit
  - qcengine >=0.25
  - qcelemental >=0.25.1
  - qcfractal >=0.15.7
  - qcfractal-core >=0.15.7

  # Psi4 dependencies
  - psi4 =1.7
  - anaconda::intel-openmp !=2019.5
  - gau2grid >=2.0
  - conda-forge::rdkit

  - black
  - jupyterlab
  - google-cloud-sdk

Here you must use --channel-priority=flexible: micromamba create -n qcfractal -f env.yml --channel-priority=flexible

hadim commented 1 year ago

Probably all good here due to https://github.com/psi4/psi4/issues/2300#issuecomment-1523559384