openforcefield / openff-interchange

A project (and object) for storing, manipulating, and converting molecular mechanics data.
https://docs.openforcefield.org/projects/interchange
MIT License
69 stars 22 forks source link

LAMMPS versions prior to 2023.08.02 are incompatible with Interchange, but may be installed with it #960

Closed Yoshanuikabundi closed 4 months ago

Yoshanuikabundi commented 4 months ago

Description

It looks like Interchange uses a LAMMPS method called last_thermo, which was introduced in LAMMPS 2023.06.15 and released on Conda Forge in 2023.08.02. This can cause a solved environment to crash. I stumbled on this when updating the workshop environment, but I've managed to remove a package that was forcing old versions of LAMMPS to be installed so it's all good.

I think it could be worth having Interchange constrain LAMMPS to >=2023.06.15 or >=2023.08.02, but doing this for all versions of Interchange would be a pain and doing it for only recent versions will just mean that environments that require old LAMMPS would also get old (and incompatible) Interchange. So maybe the pin should be introduced at 0.4.0 or something.

Reproduction

micromamba create -n lammps-interchange openff-interchange=0.3.25 'lammps<2023.06.15'
micromamba run -n lammps-interchange python test.py

test.py:

from openff.interchange.drivers import get_summary_data
from openff.units import unit
from openff.toolkit import Molecule, ForceField

hexanoic_acid = Molecule.from_smiles("CCCCCC(=O)O")
hexanoic_acid.generate_conformers(n_conformers=1)
hexanoic_acid_in_sage = ForceField("openff-2.1.1.offxml").create_interchange(
    hexanoic_acid.to_topology()
)

hexanoic_acid_in_sage.box = [[4, 0, 0], [0, 4, 0], [0, 0, 4]] * unit.nanometer

print(get_summary_data(hexanoic_acid_in_sage))

Output

/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/interchange/components/mdconfig.py:395: SwitchingFunctionNotImplementedWarning: A switching distance 8.0 angstrom was specified by the force field, but Amber does not implement a switching function. Using a hard cut-off instead. Non-bonded interactions will be affected.
  warnings.warn(
/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/interchange/components/mdconfig.py:273: SwitchingFunctionNotImplementedWarning: A switching distance 8.0 angstrom was specified by the force field, but LAMMPS may not implement a switching function as specified by SMIRNOFF. Using a hard cut-off instead. Non-bonded interactions will be affected.
  warnings.warn(
Traceback (most recent call last):
  File "/home/joshmitchell/Documents/openff/interchange/nogit/test.py", line 17, in <module>
    print(get_summary_data(hexanoic_acid_in_sage))
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/utilities/utilities.py", line 80, in wrapper
    return function(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/interchange/drivers/all.py", line 75, in get_summary_data
    energies = get_all_energies(
               ^^^^^^^^^^^^^^^^^
  File "/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/interchange/drivers/all.py", line 56, in get_all_energies
    all_energies[engine_name] = engine_driver(interchange=interchange)  # type: ignore[operator]
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/interchange/drivers/lammps.py", line 46, in get_lammps_energies
    _get_lammps_energies(interchange, round_positions),
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/utilities/utilities.py", line 80, in wrapper
    return function(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/joshmitchell/micromamba/envs/lammps-interchange/lib/python3.11/site-packages/openff/interchange/drivers/lammps.py", line 85, in _get_lammps_energies
    for energy in runner.last_thermo().values()
                  ^^^^^^^^^^^^^^^^^^
AttributeError: 'lammps' object has no attribute 'last_thermo'. Did you mean: 'get_thermo'?

Software versions

micromamba list
List of packages in environment: "/home/joshmitchell/micromamba/envs/lammps-interchange"

  Name                           Version         Build                         Channel    
────────────────────────────────────────────────────────────────────────────────────────────
  _libgcc_mutex                  0.1             conda_forge                   conda-forge
  _openmp_mutex                  4.5             2_gnu                         conda-forge
  ambertools                     23.3            py311h9fea076_6               conda-forge
  annotated-types                0.6.0           pyhd8ed1ab_0                  conda-forge
  anyio                          4.3.0           pyhd8ed1ab_0                  conda-forge
  argon2-cffi                    23.1.0          pyhd8ed1ab_0                  conda-forge
  argon2-cffi-bindings           21.2.0          py311h459d7ec_4               conda-forge
  arpack                         3.8.0           nompi_h0baa96a_101            conda-forge
  arrow                          1.3.0           pyhd8ed1ab_0                  conda-forge
  ase                            3.22.1          pyhd8ed1ab_1                  conda-forge
  asttokens                      2.4.1           pyhd8ed1ab_0                  conda-forge
  astunparse                     1.6.3           pyhd8ed1ab_0                  conda-forge
  async-lru                      2.0.4           pyhd8ed1ab_0                  conda-forge
  attrs                          23.2.0          pyh71513ae_0                  conda-forge
  aws-c-auth                     0.7.4           h1083cbe_2                    conda-forge
  aws-c-cal                      0.6.2           h09139f6_2                    conda-forge
  aws-c-common                   0.9.3           hd590300_0                    conda-forge
  aws-c-compression              0.2.17          h184a658_3                    conda-forge
  aws-c-event-stream             0.3.2           h6fea174_2                    conda-forge
  aws-c-http                     0.7.13          hb59894b_2                    conda-forge
  aws-c-io                       0.13.33         h161b759_0                    conda-forge
  aws-c-mqtt                     0.9.7           h55cd26b_0                    conda-forge
  aws-c-s3                       0.3.17          hfb4bb88_4                    conda-forge
  aws-c-sdkutils                 0.1.12          h184a658_2                    conda-forge
  aws-checksums                  0.1.17          h184a658_2                    conda-forge
  aws-crt-cpp                    0.24.2          ha28989d_2                    conda-forge
  aws-sdk-cpp                    1.10.57         hec69fbc_24                   conda-forge
  babel                          2.14.0          pyhd8ed1ab_0                  conda-forge
  beautifulsoup4                 4.12.3          pyha770c72_0                  conda-forge
  binutils_impl_linux-64         2.40            hf600244_0                    conda-forge
  binutils_linux-64              2.40            hdade7a5_3                    conda-forge
  bleach                         6.1.0           pyhd8ed1ab_0                  conda-forge
  blinker                        1.7.0           pyhd8ed1ab_0                  conda-forge
  blosc                          1.21.5          h0f2a231_0                    conda-forge
  brotli                         1.1.0           hd590300_1                    conda-forge
  brotli-bin                     1.1.0           hd590300_1                    conda-forge
  brotli-python                  1.1.0           py311hb755f60_1               conda-forge
  bson                           0.5.9           py_0                          conda-forge
  bzip2                          1.0.8           hd590300_5                    conda-forge
  c-ares                         1.28.1          hd590300_0                    conda-forge
  c-blosc2                       2.14.3          hb4ffafa_0                    conda-forge
  ca-certificates                2024.2.2        hbcca054_0                    conda-forge
  cached-property                1.5.2           hd8ed1ab_1                    conda-forge
  cached_property                1.5.2           pyha770c72_1                  conda-forge
  cachetools                     5.3.3           pyhd8ed1ab_0                  conda-forge
  cairo                          1.18.0          h3faef2a_0                    conda-forge
  certifi                        2024.2.2        pyhd8ed1ab_0                  conda-forge
  cffi                           1.16.0          py311hb3a22ac_0               conda-forge
  chardet                        5.2.0           py311h38be061_1               conda-forge
  charset-normalizer             3.3.2           pyhd8ed1ab_0                  conda-forge
  click                          8.1.7           unix_pyh707e725_0             conda-forge
  cmake                          3.29.1          hcfe8598_0                    conda-forge
  colorama                       0.4.6           pyhd8ed1ab_0                  conda-forge
  comm                           0.2.2           pyhd8ed1ab_0                  conda-forge
  contourpy                      1.2.1           py311h9547e67_0               conda-forge
  cudatoolkit                    11.8.0          h4ba93d1_13                   conda-forge
  cycler                         0.12.1          pyhd8ed1ab_0                  conda-forge
  debugpy                        1.8.1           py311hb755f60_0               conda-forge
  decorator                      5.1.1           pyhd8ed1ab_0                  conda-forge
  defusedxml                     0.7.1           pyhd8ed1ab_0                  conda-forge
  entrypoints                    0.4             pyhd8ed1ab_0                  conda-forge
  exceptiongroup                 1.2.0           pyhd8ed1ab_2                  conda-forge
  executing                      2.0.1           pyhd8ed1ab_0                  conda-forge
  expat                          2.6.2           h59595ed_0                    conda-forge
  f90wrap                        0.2.13          py311hbc92942_2               conda-forge
  fftw                           3.3.10          nompi_hc118613_108            conda-forge
  flask                          3.0.2           pyhd8ed1ab_0                  conda-forge
  font-ttf-dejavu-sans-mono      2.37            hab24e00_0                    conda-forge
  font-ttf-inconsolata           3.000           h77eed37_0                    conda-forge
  font-ttf-source-code-pro       2.038           h77eed37_0                    conda-forge
  font-ttf-ubuntu                0.83            h77eed37_1                    conda-forge
  fontconfig                     2.14.2          h14ed4e7_0                    conda-forge
  fonts-conda-ecosystem          1               0                             conda-forge
  fonts-conda-forge              1               0                             conda-forge
  fonttools                      4.51.0          py311h459d7ec_0               conda-forge
  fqdn                           1.5.1           pyhd8ed1ab_0                  conda-forge
  freetype                       2.12.1          h267a509_2                    conda-forge
  freetype-py                    2.3.0           pyhd8ed1ab_0                  conda-forge
  gcc_impl_linux-64              11.4.0          h7aa1c59_5                    conda-forge
  gcc_linux-64                   11.4.0          h0f0c6b6_3                    conda-forge
  gettext                        0.22.5          h59595ed_2                    conda-forge
  gettext-tools                  0.22.5          h59595ed_2                    conda-forge
  gfortran_impl_linux-64         11.4.0          h86428dc_5                    conda-forge
  gfortran_linux-64              11.4.0          h8f970dc_3                    conda-forge
  greenlet                       3.0.3           py311hb755f60_0               conda-forge
  gsl                            2.7             he838d99_0                    conda-forge
  gxx_impl_linux-64              11.4.0          h7aa1c59_5                    conda-forge
  gxx_linux-64                   11.4.0          h2730b16_3                    conda-forge
  h11                            0.14.0          pyhd8ed1ab_0                  conda-forge
  h2                             4.1.0           pyhd8ed1ab_0                  conda-forge
  hdf4                           4.2.15          h501b40f_6                    conda-forge
  hdf5                           1.14.1          nompi_h4f84152_100            conda-forge
  hpack                          4.0.0           pyh9f0ad1d_0                  conda-forge
  httpcore                       1.0.5           pyhd8ed1ab_0                  conda-forge
  httpx                          0.27.0          pyhd8ed1ab_0                  conda-forge
  hyperframe                     6.0.1           pyhd8ed1ab_0                  conda-forge
  icu                            73.2            h59595ed_0                    conda-forge
  idna                           3.6             pyhd8ed1ab_0                  conda-forge
  importlib-metadata             7.1.0           pyha770c72_0                  conda-forge
  importlib_metadata             7.1.0           hd8ed1ab_0                    conda-forge
  importlib_resources            6.4.0           pyhd8ed1ab_0                  conda-forge
  ipykernel                      6.29.3          pyhd33586a_0                  conda-forge
  ipython                        8.22.2          pyh707e725_0                  conda-forge
  ipywidgets                     8.1.2           pyhd8ed1ab_0                  conda-forge
  isoduration                    20.11.0         pyhd8ed1ab_0                  conda-forge
  itsdangerous                   2.1.2           pyhd8ed1ab_0                  conda-forge
  jedi                           0.19.1          pyhd8ed1ab_0                  conda-forge
  jinja2                         3.1.3           pyhd8ed1ab_0                  conda-forge
  joblib                         1.4.0           pyhd8ed1ab_0                  conda-forge
  json5                          0.9.24          pyhd8ed1ab_0                  conda-forge
  jsonpointer                    2.4             py311h38be061_3               conda-forge
  jsonschema                     4.21.1          pyhd8ed1ab_0                  conda-forge
  jsonschema-specifications      2023.12.1       pyhd8ed1ab_0                  conda-forge
  jsonschema-with-format-nongpl  4.21.1          pyhd8ed1ab_0                  conda-forge
  jupyter-lsp                    2.2.4           pyhd8ed1ab_0                  conda-forge
  jupyter_client                 8.6.1           pyhd8ed1ab_0                  conda-forge
  jupyter_core                   5.7.2           py311h38be061_0               conda-forge
  jupyter_events                 0.10.0          pyhd8ed1ab_0                  conda-forge
  jupyter_server                 2.13.0          pyhd8ed1ab_0                  conda-forge
  jupyter_server_terminals       0.5.3           pyhd8ed1ab_0                  conda-forge
  jupyterlab                     4.1.6           pyhd8ed1ab_0                  conda-forge
  jupyterlab_pygments            0.3.0           pyhd8ed1ab_1                  conda-forge
  jupyterlab_server              2.26.0          pyhd8ed1ab_0                  conda-forge
  jupyterlab_widgets             3.0.10          pyhd8ed1ab_0                  conda-forge
  kernel-headers_linux-64        2.6.32          he073ed8_17                   conda-forge
  keyutils                       1.6.1           h166bdaf_0                    conda-forge
  kim-api                        2.3.0           h097297d_1                    conda-forge
  kiwisolver                     1.4.5           py311h9547e67_1               conda-forge
  krb5                           1.21.2          h659d440_0                    conda-forge
  lammps                         2023.03.28      cpu_py311_h4aafb77_mpich_7    conda-forge
  lcms2                          2.15            h7f713cb_2                    conda-forge
  ld_impl_linux-64               2.40            h41732ed_0                    conda-forge
  lerc                           4.0.0           h27087fc_0                    conda-forge
  libaec                         1.1.3           h59595ed_0                    conda-forge
  libasprintf                    0.22.5          h661eb56_2                    conda-forge
  libasprintf-devel              0.22.5          h661eb56_2                    conda-forge
  libblas                        3.9.0           22_linux64_openblas           conda-forge
  libboost                       1.82.0          h6fcfa73_6                    conda-forge
  libboost-python                1.82.0          py311h92ebd52_6               conda-forge
  libbrotlicommon                1.1.0           hd590300_1                    conda-forge
  libbrotlidec                   1.1.0           hd590300_1                    conda-forge
  libbrotlienc                   1.1.0           hd590300_1                    conda-forge
  libcblas                       3.9.0           22_linux64_openblas           conda-forge
  libcurl                        8.7.1           hca28451_0                    conda-forge
  libdeflate                     1.19            hd590300_0                    conda-forge
  libedit                        3.1.20191231    he28a2e2_2                    conda-forge
  libev                          4.33            hd590300_2                    conda-forge
  libexpat                       2.6.2           h59595ed_0                    conda-forge
  libffi                         3.4.2           h7f98852_5                    conda-forge
  libgcc-devel_linux-64          11.4.0          h922705a_105                  conda-forge
  libgcc-ng                      13.2.0          h807b86a_5                    conda-forge
  libgettextpo                   0.22.5          h59595ed_2                    conda-forge
  libgettextpo-devel             0.22.5          h59595ed_2                    conda-forge
  libgfortran-ng                 13.2.0          h69a702a_5                    conda-forge
  libgfortran5                   13.2.0          ha4646dd_5                    conda-forge
  libglib                        2.80.0          hf2295e7_4                    conda-forge
  libgomp                        13.2.0          h807b86a_5                    conda-forge
  libiconv                       1.17            hd590300_2                    conda-forge
  libidn2                        2.3.7           hd590300_0                    conda-forge
  libjpeg-turbo                  2.1.5.1         hd590300_1                    conda-forge
  liblapack                      3.9.0           22_linux64_openblas           conda-forge
  libnetcdf                      4.9.2           nompi_h7e745eb_109            conda-forge
  libnghttp2                     1.58.0          h47da74e_1                    conda-forge
  libnsl                         2.0.1           hd590300_0                    conda-forge
  libopenblas                    0.3.27          pthreads_h413a1c8_0           conda-forge
  libpng                         1.6.43          h2797004_0                    conda-forge
  libsanitizer                   11.4.0          h4dcbe23_5                    conda-forge
  libsodium                      1.0.18          h36c2ea0_1                    conda-forge
  libsqlite                      3.45.2          h2797004_0                    conda-forge
  libssh2                        1.11.0          h0841786_0                    conda-forge
  libstdcxx-devel_linux-64       11.4.0          h922705a_105                  conda-forge
  libstdcxx-ng                   13.2.0          h7e041cc_5                    conda-forge
  libtiff                        4.6.0           h29866fb_1                    conda-forge
  libunistring                   0.9.10          h7f98852_0                    conda-forge
  libuuid                        2.38.1          h0b41bf4_0                    conda-forge
  libuv                          1.48.0          hd590300_0                    conda-forge
  libwebp-base                   1.3.2           hd590300_1                    conda-forge
  libxcb                         1.15            h0b41bf4_0                    conda-forge
  libxcrypt                      4.4.36          hd590300_1                    conda-forge
  libxml2                        2.12.6          h232c23b_1                    conda-forge
  libzip                         1.10.1          h2629f0a_3                    conda-forge
  libzlib                        1.2.13          hd590300_5                    conda-forge
  lz4-c                          1.9.4           hcb278e6_0                    conda-forge
  lzo                            2.10            h516909a_1000                 conda-forge
  make                           4.3             hd18ef5c_1                    conda-forge
  markupsafe                     2.1.5           py311h459d7ec_0               conda-forge
  matplotlib-base                3.8.4           py311h54ef318_0               conda-forge
  matplotlib-inline              0.1.6           pyhd8ed1ab_0                  conda-forge
  mda-xdrlib                     0.2.0           pyhd8ed1ab_0                  conda-forge
  mdtraj                         1.9.9           py311h90fe790_1               conda-forge
  mistune                        3.0.2           pyhd8ed1ab_0                  conda-forge
  mlip                           1.0             hd0d41c4_3                    conda-forge
  mpi                            1.0             mpich                         conda-forge
  mpich                          4.2.0           h846660c_100                  conda-forge
  munkres                        1.1.4           pyh9f0ad1d_0                  conda-forge
  n2p2                           2.2.0           mpi_mpich_py311_h59f63e4_105  conda-forge
  nbclient                       0.10.0          pyhd8ed1ab_0                  conda-forge
  nbconvert-core                 7.16.3          pyhd8ed1ab_0                  conda-forge
  nbformat                       5.10.4          pyhd8ed1ab_0                  conda-forge
  ncurses                        6.4.20240210    h59595ed_0                    conda-forge
  nest-asyncio                   1.6.0           pyhd8ed1ab_0                  conda-forge
  netcdf-fortran                 4.6.1           nompi_hec59055_101            conda-forge
  networkx                       3.3             pyhd8ed1ab_1                  conda-forge
  nomkl                          1.0             h5ca1d4c_0                    conda-forge
  notebook                       7.1.2           pyhd8ed1ab_0                  conda-forge
  notebook-shim                  0.2.4           pyhd8ed1ab_0                  conda-forge
  numexpr                        2.9.0           py311h039bad6_100             conda-forge
  numpy                          1.26.4          py311h64a7726_0               conda-forge
  ocl-icd                        2.3.2           hd590300_1                    conda-forge
  ocl-icd-system                 1.0.0           1                             conda-forge
  openff-amber-ff-ports          0.0.4           pyhca7485f_0                  conda-forge
  openff-forcefields             2024.03.0       pyhca7485f_0                  conda-forge
  openff-interchange             0.3.25          pyhd8ed1ab_0                  conda-forge
  openff-interchange-base        0.3.25          pyhd8ed1ab_0                  conda-forge
  openff-models                  0.1.2           pyhca7485f_0                  conda-forge
  openff-toolkit                 0.15.2          pyhd8ed1ab_0                  conda-forge
  openff-toolkit-base            0.15.2          pyhd8ed1ab_0                  conda-forge
  openff-units                   0.2.2           pyhca7485f_0                  conda-forge
  openff-utilities               0.1.12          pyhd8ed1ab_0                  conda-forge
  openjpeg                       2.5.2           h488ebb8_0                    conda-forge
  openmm                         8.1.1           py311h6d2dbb8_1               conda-forge
  openssl                        3.2.1           hd590300_1                    conda-forge
  overrides                      7.7.0           pyhd8ed1ab_0                  conda-forge
  packaging                      24.0            pyhd8ed1ab_0                  conda-forge
  packmol                        20.010          h86c2bf4_0                    conda-forge
  pandas                         2.2.1           py311h320fe9a_0               conda-forge
  pandocfilters                  1.5.0           pyhd8ed1ab_0                  conda-forge
  panedr                         0.8.0           pyhd8ed1ab_0                  conda-forge
  parmed                         4.2.2           py311hb755f60_1               conda-forge
  parso                          0.8.4           pyhd8ed1ab_0                  conda-forge
  pcre2                          10.43           hcad00b1_0                    conda-forge
  perl                           5.32.1          7_hd590300_perl5              conda-forge
  pexpect                        4.9.0           pyhd8ed1ab_0                  conda-forge
  pickleshare                    0.7.5           py_1003                       conda-forge
  pillow                         10.0.1          py311h8aef010_1               conda-forge
  pint                           0.23            pyhd8ed1ab_0                  conda-forge
  pip                            24.0            pyhd8ed1ab_0                  conda-forge
  pixman                         0.43.2          h59595ed_0                    conda-forge
  pkg-config                     0.29.2          h36c2ea0_1008                 conda-forge
  pkgutil-resolve-name           1.3.10          pyhd8ed1ab_1                  conda-forge
  platformdirs                   4.2.0           pyhd8ed1ab_0                  conda-forge
  prometheus_client              0.20.0          pyhd8ed1ab_0                  conda-forge
  prompt-toolkit                 3.0.42          pyha770c72_0                  conda-forge
  psutil                         5.9.8           py311h459d7ec_0               conda-forge
  pthread-stubs                  0.4             h36c2ea0_1001                 conda-forge
  ptyprocess                     0.7.0           pyhd3deb0d_0                  conda-forge
  pure_eval                      0.2.2           pyhd8ed1ab_0                  conda-forge
  py-cpuinfo                     9.0.0           pyhd8ed1ab_0                  conda-forge
  pycairo                        1.26.0          py311h8feb60e_0               conda-forge
  pycparser                      2.22            pyhd8ed1ab_0                  conda-forge
  pydantic                       2.6.4           pyhd8ed1ab_0                  conda-forge
  pydantic-core                  2.16.3          py311h46250e7_0               conda-forge
  pyedr                          0.8.0           pyhd8ed1ab_0                  conda-forge
  pygments                       2.17.2          pyhd8ed1ab_0                  conda-forge
  pyparsing                      3.1.2           pyhd8ed1ab_0                  conda-forge
  pysocks                        1.7.1           pyha2e5f31_6                  conda-forge
  pytables                       3.8.0           py311h504fbfb_2               conda-forge
  python                         3.11.8          hab00c5b_0_cpython            conda-forge
  python-constraint              1.4.0           py_0                          conda-forge
  python-dateutil                2.9.0           pyhd8ed1ab_0                  conda-forge
  python-fastjsonschema          2.19.1          pyhd8ed1ab_0                  conda-forge
  python-json-logger             2.0.7           pyhd8ed1ab_0                  conda-forge
  python-tzdata                  2024.1          pyhd8ed1ab_0                  conda-forge
  python_abi                     3.11            4_cp311                       conda-forge
  pytz                           2024.1          pyhd8ed1ab_0                  conda-forge
  pyyaml                         6.0.1           py311h459d7ec_1               conda-forge
  pyzmq                          25.1.2          py311h34ded2d_0               conda-forge
  quippy                         0.9.14          py311h4189ce2_0               conda-forge
  rdkit                          2023.09.6       py311h4c2f14b_0               conda-forge
  readline                       8.2             h8228510_1                    conda-forge
  referencing                    0.34.0          pyhd8ed1ab_0                  conda-forge
  reportlab                      4.1.0           py311h459d7ec_0               conda-forge
  requests                       2.31.0          pyhd8ed1ab_0                  conda-forge
  rfc3339-validator              0.1.4           pyhd8ed1ab_0                  conda-forge
  rfc3986-validator              0.1.1           pyh9f0ad1d_0                  conda-forge
  rhash                          1.4.4           hd590300_0                    conda-forge
  rlpycairo                      0.2.0           pyhd8ed1ab_0                  conda-forge
  rpds-py                        0.18.0          py311h46250e7_0               conda-forge
  s2n                            1.3.54          h06160fa_0                    conda-forge
  scipy                          1.13.0          py311h64a7726_0               conda-forge
  send2trash                     1.8.3           pyh0d859eb_0                  conda-forge
  setuptools                     69.2.0          pyhd8ed1ab_0                  conda-forge
  six                            1.16.0          pyh6c4a22f_0                  conda-forge
  smirnoff99frosst               1.1.0           pyh44b312d_0                  conda-forge
  snappy                         1.1.10          hdb0a2a9_1                    conda-forge
  sniffio                        1.3.1           pyhd8ed1ab_0                  conda-forge
  soupsieve                      2.5             pyhd8ed1ab_1                  conda-forge
  sqlalchemy                     2.0.29          py311h459d7ec_0               conda-forge
  stack_data                     0.6.2           pyhd8ed1ab_0                  conda-forge
  sysroot_linux-64               2.12            he073ed8_17                   conda-forge
  terminado                      0.18.1          pyh0d859eb_0                  conda-forge
  tinycss2                       1.2.1           pyhd8ed1ab_0                  conda-forge
  tk                             8.6.13          noxft_h4845f30_101            conda-forge
  tomli                          2.0.1           pyhd8ed1ab_0                  conda-forge
  tornado                        6.4             py311h459d7ec_0               conda-forge
  tqdm                           4.66.2          pyhd8ed1ab_0                  conda-forge
  traitlets                      5.14.2          pyhd8ed1ab_0                  conda-forge
  types-python-dateutil          2.9.0.20240316  pyhd8ed1ab_0                  conda-forge
  typing-extensions              4.11.0          hd8ed1ab_0                    conda-forge
  typing_extensions              4.11.0          pyha770c72_0                  conda-forge
  typing_utils                   0.1.0           pyhd8ed1ab_0                  conda-forge
  tzdata                         2024a           h0c530f3_0                    conda-forge
  uri-template                   1.3.0           pyhd8ed1ab_0                  conda-forge
  urllib3                        2.2.1           pyhd8ed1ab_0                  conda-forge
  voro                           0.4.6           h00ab1b0_0                    conda-forge
  wcwidth                        0.2.13          pyhd8ed1ab_0                  conda-forge
  webcolors                      1.13            pyhd8ed1ab_0                  conda-forge
  webencodings                   0.5.1           pyhd8ed1ab_2                  conda-forge
  websocket-client               1.7.0           pyhd8ed1ab_0                  conda-forge
  werkzeug                       3.0.2           pyhd8ed1ab_0                  conda-forge
  wget                           1.21.4          hda4d442_0                    conda-forge
  wheel                          0.43.0          pyhd8ed1ab_1                  conda-forge
  widgetsnbextension             4.0.10          pyhd8ed1ab_0                  conda-forge
  xmltodict                      0.13.0          pyhd8ed1ab_0                  conda-forge
  xorg-kbproto                   1.0.7           h7f98852_1002                 conda-forge
  xorg-libice                    1.1.1           hd590300_0                    conda-forge
  xorg-libsm                     1.2.4           h7391055_0                    conda-forge
  xorg-libx11                    1.8.9           h8ee46fc_0                    conda-forge
  xorg-libxau                    1.0.11          hd590300_0                    conda-forge
  xorg-libxdmcp                  1.1.3           h7f98852_0                    conda-forge
  xorg-libxext                   1.3.4           h0b41bf4_2                    conda-forge
  xorg-libxrender                0.9.11          hd590300_0                    conda-forge
  xorg-libxt                     1.3.0           hd590300_1                    conda-forge
  xorg-renderproto               0.11.1          h7f98852_1002                 conda-forge
  xorg-xextproto                 7.3.0           h0b41bf4_1003                 conda-forge
  xorg-xproto                    7.0.31          h7f98852_1007                 conda-forge
  xz                             5.2.6           h166bdaf_0                    conda-forge
  yaml                           0.2.5           h7f98852_2                    conda-forge
  zeromq                         4.3.5           h59595ed_1                    conda-forge
  zipp                           3.17.0          pyhd8ed1ab_0                  conda-forge
  zlib                           1.2.13          hd590300_5                    conda-forge
  zlib-ng                        2.0.7           h0b41bf4_0                    conda-forge
  zstd                           1.5.5           hfc55251_0                    conda-forge

mattwthompson commented 4 months ago

Oof ... I had no idea. Thanks for finding this!

mattwthompson commented 4 months ago

I have the band-aided in https://github.com/conda-forge/openff-interchange-feedstock/pull/78

If there's value in having a wider back-compatibility window, a try/except AttributeError falling back to a more tedious set of get_thermos should do the trick