diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index cb354e81..ae3e30c6 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -3,7 +3,7 @@ name: Tests against betas on: workflow_dispatch: schedule: - - cron: "0 0 * * *" + - cron: "0 3 * * *" defaults: run: @@ -21,8 +21,7 @@ jobs: python-version: - "3.10" - "3.11" - pydantic-version: - - "2" + - "3.12" openeye: - true - false @@ -39,20 +38,24 @@ jobs: - name: Install conda environment uses: mamba-org/setup-micromamba@v2 with: - micromamba-version: '1.5.10-0' - environment-file: devtools/conda-envs/beta_env.yaml + environment-file: devtools/conda-envs/test_env.yaml + condarc: | + channels: + - openeye/label/rc + - conda-forge/label/openmm_rc + - conda-forge/label/mdtraj_rc + - conda-forge/label/openff-toolkit_rc + - conda-forge/label/openff-interchange_rc + - openeye + - conda-forge create-args: >- python=${{ matrix.python-version }} - pydantic=${{ matrix.pydantic-version }} - name: Install package run: | micromamba remove --force openff-interchange openff-interchange-base python -m pip install . plugins/ - - name: Environment Information - run: conda info && conda list - - name: License OpenEye if: ${{ matrix.openeye == true }} run: | diff --git a/.github/workflows/changes.yaml b/.github/workflows/changes.yaml deleted file mode 100644 index 59f10c3c..00000000 --- a/.github/workflows/changes.yaml +++ /dev/null @@ -1,29 +0,0 @@ -name: Check for API breaks - -on: - push: - branches: - - main - pull_request: - branches: - - main - -jobs: - check: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: Check for API breaks - continue-on-error: true - run: | - pip install griffe - pip install -e . - griffe check "openff.interchange" --verbose diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 78ab5688..03033038 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -10,7 +10,7 @@ on: - main - develop schedule: - - cron: "0 0 * * *" + - cron: "0 5 * * *" workflow_dispatch: defaults: @@ -19,7 +19,7 @@ defaults: jobs: test: - name: Test on ${{ matrix.os }}, Python ${{ matrix.python-version }}, OpenMM ${{ matrix.openmm }}, Pydantic ${{ matrix.pydantic-version }}, OpenEye ${{ matrix.openeye }} + name: Test on ${{ matrix.os }}, Python ${{ matrix.python-version }}, OpenMM ${{ matrix.openmm }}, OpenEye ${{ matrix.openeye }} runs-on: ${{ matrix.os }} strategy: fail-fast: false @@ -30,8 +30,6 @@ jobs: python-version: - "3.10" - "3.11" - pydantic-version: - - "2" openeye: - true - false @@ -51,11 +49,9 @@ jobs: - name: Install conda environment uses: mamba-org/setup-micromamba@v2 with: - micromamba-version: '1.5.10-0' environment-file: devtools/conda-envs/test_env.yaml create-args: >- python=${{ matrix.python-version }} - pydantic=${{ matrix.pydantic-version }} - name: Install package run: | diff --git a/.github/workflows/examples.yaml b/.github/workflows/examples.yaml index 78f40e71..2ceb1022 100644 --- a/.github/workflows/examples.yaml +++ b/.github/workflows/examples.yaml @@ -10,7 +10,7 @@ on: - main - develop schedule: - - cron: "0 0 * * *" + - cron: "0 7 * * *" workflow_dispatch: defaults: @@ -28,6 +28,7 @@ jobs: - macos-latest python-version: - "3.10" + - "3.11" env: OE_LICENSE: ${{ github.workspace }}/oe_license.txt @@ -41,7 +42,6 @@ jobs: - name: Install conda environment uses: mamba-org/setup-micromamba@v2 with: - micromamba-version: '1.5.10-0' environment-file: devtools/conda-envs/examples_env.yaml create-args: >- python=${{ matrix.python-version }} @@ -50,11 +50,6 @@ jobs: run: | python -m pip install . - - name: Environment Information - run: | - micromamba info - micromamba list - - name: License OpenEye run: | echo "${SECRET_OE_LICENSE}" > ${OE_LICENSE} diff --git a/devtools/conda-envs/beta_env.yaml b/devtools/conda-envs/beta_env.yaml deleted file mode 100644 index d4d98293..00000000 --- a/devtools/conda-envs/beta_env.yaml +++ /dev/null @@ -1,43 +0,0 @@ -name: beta-env -channels: - - conda-forge/label/openmm_rc - - conda-forge - - openeye -dependencies: - # Core - - python - - numpy >=1.21 - - pydantic >=1.10.17,<3 - - openmm - # OpenFF stack - - openff-toolkit ~=0.16.6 - - openff-nagl ~=0.3.7 - - openff-nagl-models =0.1 - # Optional features - - jax - - unyt - - mbuild - - foyer >=0.12.1 - - gmso =0.12 - # Testing - - mdtraj - - intermol - - openeye-toolkits >=2023.2 - - pytest-cov - - pytest-xdist - - pytest-randomly - # de-forcefields # needs new release - # Drivers - - gromacs - - lammps >=2023.08.02 - # https://github.com/conda-forge/quippy-feedstock/issues/15 - - panedr - # Examples - - nglview - - pytest - - nbval - # Typing - - mypy - - typing-extensions - - types-setuptools - - pandas-stubs >=1.2.0.56 diff --git a/devtools/conda-envs/dev_env.yaml b/devtools/conda-envs/dev_env.yaml index ffa536a4..c6fda07c 100644 --- a/devtools/conda-envs/dev_env.yaml +++ b/devtools/conda-envs/dev_env.yaml @@ -4,7 +4,7 @@ channels: - openeye dependencies: # Core - - python =3.10 + - python - pip - versioningit - pip @@ -18,8 +18,8 @@ dependencies: - openmm =8.1.2 # smirnoff-plugins =2024 # de-forcefields # add back after smirnoff-plugins update - - openff-nagl - - openff-nagl-models + - openff-nagl ~=0.5 + - openff-nagl-models ~=0.3 - mbuild ~=0.18 - foyer =1 - gmso ~=0.12 diff --git a/devtools/conda-envs/examples_env.yaml b/devtools/conda-envs/examples_env.yaml index 6beec28f..00d197cc 100644 --- a/devtools/conda-envs/examples_env.yaml +++ b/devtools/conda-envs/examples_env.yaml @@ -13,8 +13,8 @@ dependencies: - openff-units - ambertools =23 # Optional features - - openff-nagl - - openff-nagl-models + - openff-nagl ~=0.5 + - openff-nagl-models ~=0.3 - mbuild ~=0.18 - foyer =1 - gmso ~=0.12 diff --git a/devtools/conda-envs/test_env.yaml b/devtools/conda-envs/test_env.yaml index df53bc0e..7de4cef5 100644 --- a/devtools/conda-envs/test_env.yaml +++ b/devtools/conda-envs/test_env.yaml @@ -17,9 +17,9 @@ dependencies: - openmm =8.1.2 # smirnoff-plugins =2024 # de-forcefields # add back after smirnoff-plugins update - - openff-nagl - - openff-nagl-models - - mbuild ~=0.18 + - openff-nagl ~=0.5 + - openff-nagl-models ~=0.3 + - mbuild =1 - foyer =1 - gmso ~=0.12 - nglview diff --git a/openff/interchange/common/_nonbonded.py b/openff/interchange/common/_nonbonded.py index 551c157c..a80d80a4 100644 --- a/openff/interchange/common/_nonbonded.py +++ b/openff/interchange/common/_nonbonded.py @@ -96,8 +96,8 @@ class ElectrostaticsCollection(_NonbondedCollection): "cutoff", "no-cutoff", ] = Field( - _PME, - ) # type: ignore[assignment] + _PME, # type: ignore[arg-type] + ) nonperiodic_potential: Literal["Coulomb", "cutoff", "no-cutoff"] = Field("Coulomb") exception_potential: Literal["Coulomb"] = Field("Coulomb") diff --git a/setup.cfg b/setup.cfg index ed47a246..a34e6de9 100644 --- a/setup.cfg +++ b/setup.cfg @@ -10,12 +10,14 @@ exclude_lines = @overload [mypy] +python_version = 3.12 mypy_path = stubs/ plugins = numpy.typing.mypy_plugin,pydantic.mypy warn_unused_configs = True warn_unused_ignores = True warn_incomplete_stub = True show_error_codes = True +exclude = openff/interchange/_tests/ [mypy-pandas.*] ignore_missing_imports = True