Skip to content

Commit fdf7630

Browse files
Merge pull request #782 from openforcefield/openmm-optional
Make OpenMM an optional dependency
2 parents 2c438f5 + 18b421b commit fdf7630

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+659
-381
lines changed

.github/workflows/ci.yaml

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,9 @@ on:
44
push:
55
branches:
66
- main
7-
- v0.3.0-staging
87
pull_request:
98
branches:
109
- main
11-
- v0.3.0-staging
1210
schedule:
1311
- cron: "0 0 * * *"
1412
workflow_dispatch:
@@ -37,9 +35,16 @@ jobs:
3735
openeye:
3836
- true
3937
- false
38+
openmm:
39+
- true
40+
- false
4041
exclude:
4142
- openeye: false
4243
python-version: "3.11"
44+
- pydantic-version: "1"
45+
python-version: "3.9"
46+
- pydantic-version: "1"
47+
python-version: "3.10"
4348

4449
env:
4550
OE_LICENSE: ${{ github.workspace }}/oe_license.txt
@@ -77,6 +82,18 @@ jobs:
7782
env:
7883
SECRET_OE_LICENSE: ${{ secrets.OE_LICENSE }}
7984

85+
- name: Install OpenMM
86+
if: ${{ matrix.openmm == true }}
87+
run: |
88+
micromamba install openmm "smirnoff-plugins =2023" -yq
89+
pip install git+https://github.com/mattwthompson/de-forcefields.git@periodic-nonperiodic-methods
90+
91+
# Might not need this after re-packaging
92+
- name: Uninstall OpenMM
93+
if: ${{ matrix.openmm == false }}
94+
run: |
95+
micromamba remove openmm -yq
96+
8097
- name: Install AmberTools
8198
if: ${{ matrix.openeye == false }}
8299
run: |
@@ -93,7 +110,7 @@ jobs:
93110
python -m pytest -r fE -nauto --durations=10 $COV openff/interchange/ -m "slow or not slow" --ignore=openff/interchange/_tests/energy_tests/test_energies.py
94111
95112
- name: Run small molecule regression tests
96-
if: ${{ matrix.python-version == 3.9 && matrix.openeye == true }}
113+
if: ${{ matrix.python-version == 3.9 && matrix.openeye == true && matrix.openmm == true }}
97114
run: |
98115
micromamba install deepdiff rich click -c conda-forge -yq
99116
python -m pip install git+https://github.com/openforcefield/interchange-regression-testing.git

.github/workflows/ci_minimal.yaml

Lines changed: 0 additions & 51 deletions
This file was deleted.

devtools/conda-envs/dev_env.yaml

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,27 @@
11
name: openff-interchange-env
22
channels:
33
- jaimergp/label/unsupported-cudatoolkit-shim
4+
- conda-forge/label/openff-interchange_rc
45
- conda-forge
56
- openeye
67
dependencies:
78
# Core
89
- python
910
- pip
10-
- numpy >=1.21
11+
- numpy
1112
- pydantic
12-
- openmm
13+
# openmm
1314
# OpenFF stack
14-
- openff-toolkit >=0.14.2
15+
- openff-toolkit-base >=0.14
16+
- openff-interchange-base ==0.3.11 # ==pyhc3945a9_1
1517
- openff-models
16-
- openff-nagl
17-
- openff-nagl-models
18+
# openff-nagl
19+
# openff-nagl-models
1820
# Optional features
19-
- jax
20-
- unyt
21-
- mbuild
22-
- foyer >=0.11.3
21+
# jax
22+
# unyt
23+
# mbuild
24+
# foyer >=0.11.3
2325
# Testing
2426
- mdtraj
2527
- intermol
@@ -32,7 +34,6 @@ dependencies:
3234
- qcportal
3335
- openff-qcsubmit
3436
- mdanalysis
35-
- smirnoff-plugins =2023
3637
# Drivers
3738
# gromacs >=2021=nompi* # No osx-arm64 builds
3839
- lammps
@@ -47,13 +48,11 @@ dependencies:
4748
- micromamba
4849
- jupyterlab
4950
- nglview
50-
- pdbfixer
51+
# pdbfixer
5152
- ipdb
5253
- pre-commit
5354
- black
5455
- isort
5556
- flake8
5657
- snakeviz
5758
- tuna
58-
- pip:
59-
- git+https://github.com/mattwthompson/de-forcefields.git@periodic-nonperiodic-methods

devtools/conda-envs/docs_env.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,5 @@ dependencies:
2727
- sphinxcontrib-mermaid
2828
- sphinx-notfound-page
2929
- pip:
30-
- git+https://github.com/jthorton/de-forcefields
30+
# git+https://github.com/jthorton/de-forcefields
3131
- git+https://github.com/openforcefield/openff-sphinx-theme.git@main

devtools/conda-envs/minimal_env.yaml

Lines changed: 0 additions & 7 deletions
This file was deleted.

devtools/conda-envs/test_env.yaml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@ dependencies:
66
# Core
77
- python
88
- pip
9-
- numpy >=1.21
9+
- numpy
1010
- pydantic
11-
- openmm >=7.6
1211
# OpenFF stack
13-
- openff-toolkit >=0.14.2
12+
- openff-toolkit-base >=0.14.3
1413
- openff-units
1514
- openff-models
1615
# Optional features
@@ -29,7 +28,6 @@ dependencies:
2928
- nbval
3029
- nglview
3130
- mdanalysis
32-
- smirnoff-plugins =2023
3331
# Drivers
3432
- gromacs >=2021=nompi*
3533
- lammps
@@ -39,5 +37,3 @@ dependencies:
3937
- typing-extensions
4038
- types-setuptools
4139
- pandas-stubs >=1.2.0.56
42-
- pip:
43-
- git+https://github.com/mattwthompson/de-forcefields.git@periodic-nonperiodic-methods

docs/releasehistory.md

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,12 @@ Releases follow versioning as described in
99

1010
Please note that all releases prior to a version 1.0.0 are considered pre-releases and many API changes will come before a stable release.
1111

12-
## Current development
13-
14-
### API-breaking changes
15-
16-
### Behavior changes
17-
18-
### Bugfixes
12+
## 0.3.12 - 2023-08-14
1913

2014
### New features
2115

22-
### Improved documentation and warnings
16+
* #782 OpenMM is now an optional dependency at runtime or if using the `openff-interchange-base` conda
17+
package.
2318

2419
## 0.3.11 - 2023-08-09
2520

0 commit comments

Comments
 (0)