28 Commits

Author SHA1 Message Date
Alyssa Travitz
588f552ca9 add ruff isort linting rule (#1665)
* isort for docs and utils

* isort for top-level openfe, analysis, setup

* isort setup/

* isort storage/

* isort protocols

* isort openn_afe

* isort openmm_rfe

* isort all protocols

* apply isort to openfe/tests

* apply isort to openfecli

* apply isort to devtools/

* add TODO for setup init
2025-11-10 21:58:30 +00:00
Alyssa Travitz
3a08b6809f Ci/add ruff format to openfe protocols (#1604)
* add more checks

* make precommit manual

* apply formatting to pyproject.toml

* add TODO

* remove unneeded, add a few more

* add ruff, but turn everything off

* add openfe known first party

* format highest-level files

* first half of openfe protocols

* second half of openfe protocols

* openfe protocols formatting, with alyssa's fmt skips

* add ruff formatter to precommit

* fmt: off all vendored _rfe_utils code

* addressing review comments
2025-10-22 16:04:13 -07:00
Irfan Alibay
66d14f61bc ABFE protocol (#1045)
Add an Absolute Binding Free Energy Protocol to openfe.

Key features & limitations:
* Automatic Boresch restraint assignment.
* Does not handle net charge corrections yet.

---------

Co-authored-by: Irfan Alibay <IAlibay@users.noreply.github.com>
Co-authored-by: hannahbaumann <hbaumann@uci.edu>
Co-authored-by: Hannah Baumann <43765638+hannahbaumann@users.noreply.github.com>
2025-10-21 11:45:37 +01:00
Irfan Alibay
6581c95423 Disable user supplied host & guest atoms in restraint settings (#1557)
* Disable user supplied host & guest atoms in restraint settings

* disable validator

* Fix some tests

* Store selection indices

* Add partial test

* Update serialized results

* try to make mypy happy

* Update equil_septop_method.py
2025-10-09 15:20:17 +01:00
Hannah Baumann
fb6ac950da Add SepTop to gen serialized results (#1560)
* Add SepTop in gen serialized results
2025-10-09 09:37:57 +01:00
Alyssa Travitz
2d3af6a058 Release prep v1.6.1 (#1544)
* update partial charge tests now that a production NAGL model is available (#1506)

* update tests now that a production NAGL model is available

* fix mock

* clean up mocking

* add nagl test news item

* debug slow python 3.13 tests (#1468)

* Turn off minimization when we do a dry run
---------

Co-authored-by: IAlibay <IAlibay@users.noreply.github.com>

* update quickrun execution docs and add MPS link (#1483)

* add jq cookbook (#1488)

* add jq code blocks

* use tutorial data

* news

* debug docs build (#1489)

* don't build openmm

* mambaforge->miniconda for rtd

* artifically small build for debugging

* dont build env

* just build python

* add channels

* add sphinx packages to env

* add all non-openfe-ecosystem deps

* remove shim channel

* add openfe package

* add everything except openmm and toolkit

* add openmm

* add openff-toolkit

* only openff-toolkit

* try openff-toolkit-base

* try latest openff

* everybody back in

* build without openmm

* build with openff-toolkit-base

* bump rtd

* add pip build

* remove any openff-toolkit

* build w/o openmm

* add pip install

* build everything without pip install

* try no deps

* try custom build

* only python and pip

* try openfe-toolkit-base

* add temp deps for build with openff-toolkit-base

* add temp deps for build with openff-toolkit-base

* mock imports

* dont mock with toolkit base

* bump toolkit version

* Revert "bump toolkit version"

This reverts commit 6e3108a836.

* add mocks

* try pinnint to toolkit-base 0.13.0, no mocks

* back to >= 0.13.0 toolkit to make sure it wasn't a fluke

* mock imports

* add pipe example for jq (#1505)

* add pipe example for jq

* pin to docutil 0.20

* try to avoid memory error

* debug rtd build memory error (#1510)

* try mambaforge build

* Revert "try mambaforge build"

This reverts commit 683e07f1ea.

* try explicit build

* try removing ambertools

* use the right env

* just add gufe pip install back

* add back openfe eco packages

* mock py3dmol

* add note for pip installs

* fix quote

* temporarily resort to SettingsBaseModel to get build

* specific imports

* dont use base settings placeholder

* temp pin numpy (#1542)

* Removing unnecessary limit on resids (#1539)

* Removing unnecessary limit on resids indices gathering

* Updated CHANGELOG for 1.6.1

* add summary

* update docs theme (#1545)

* adding new branding assets

* remove images

* update theme branch

* CantinaPurple accent

* lowercase convention

* updating text

* remove dark mode for now

* fix sidebars

* fix formatting

* capitalization

* don't break spaces

* bump ci

* favicon!

* whitespace :(

* pin to sphinx release

* pin to gufe 1.6.1

* move env info before test imports

* bump single file installer to 3.12.11 to match colab

---------

Co-authored-by: IAlibay <IAlibay@users.noreply.github.com>
Co-authored-by: Iván Pulido <2949729+ijpulidos@users.noreply.github.com>
2025-10-07 18:41:50 +00:00
Mike Henry
63b86d4624 Import vendored openff.models from gufe (#1260)
* Install numpy 2, openmm 8.2

* import openff-models from gufe

* update installer to use our dev build

* match google colab

* match what we are doing on main

* add news blurb
2025-05-30 11:12:06 -07:00
Alyssa Travitz
c72085aa4a bump single file installers to python 3.11 (#1166)
* bump to python 3.11

* updating install construct yaml

* update construct.yaml
2025-03-03 07:00:08 -08:00
Mike Henry
e8492ea43c debug script for people to test openmm (#733)
* debug script for people to test openmm

* Added news entry

* added checking which platforms can do mixed p

* fix typo in debug script

* added how to run script

* point to new showcase

* give full path to assests to avoid copying notebooking into build env

* rerun ci

* fix mypy env

* looks like we still need to pin mypy but can relax python

---------

Co-authored-by: Irfan Alibay <IAlibay@users.noreply.github.com>
2024-05-06 12:57:29 -07:00
Richard Gowers
0a64694fa5 Update fetch results (#779)
* update rbfe_results.tar.gz for new settings schema

* re-enable test_gather tests

* devscript for updating rbfe_results.tar.gz

* cli: gather: rework raw gather to work off protocol_result dict

this allows us to later deduplicate and remove the unit_results key from results dicts

* cli: gather: update expected gather results

current raw results are only one replicate, should probably have multiple repeats to test raw output

* cli: gather: use \t escape code in gather raw test

could instead normalise the whitespace to be more permissive...

* Apply suggestions from code review

Co-authored-by: Mike Henry <11765982+mikemhenry@users.noreply.github.com>

* rerun ci

---------

Co-authored-by: Mike Henry <11765982+mikemhenry@users.noreply.github.com>
2024-03-26 19:08:02 -07:00
richard gowers
7cd609332f devtools: add script to update Settings in data files 2024-02-19 21:30:32 +00:00
hannahbaumann
f26ae6290e merge conflicts 2024-02-14 11:15:41 +01:00
IAlibay
e7edc5ffdc Revert "Revert "temporary halfway point as we fix checkpointing""
This reverts commit 5774daede6.
2024-02-11 12:53:58 +00:00
IAlibay
5774daede6 Revert "temporary halfway point as we fix checkpointing"
This reverts commit 61732ae928.
2024-02-11 12:02:30 +00:00
IAlibay
61732ae928 temporary halfway point as we fix checkpointing 2024-02-10 20:39:24 +00:00
IAlibay
1b455cb410 fix devtools partial charge assignment variation 2024-02-10 00:43:11 +00:00
IAlibay
8b7d34079d Fix devtools for #666 changes 2024-02-08 12:05:50 +00:00
IAlibay
7e268de85c Regenerate results JSON files 2024-02-08 12:05:02 +00:00
richard gowers
cc3e22e9d8 revert changes to gen-serialized-results.py 2024-02-06 00:10:04 +00:00
richard gowers
03c4a1707c shorten AHFE time in dev scripts 2024-02-05 16:52:15 +00:00
richard gowers
55981bb288 document dev scripts for generating jsons 2024-02-05 10:20:01 +00:00
hannahbaumann
a82a679a2a adapt gen-serialized-results for new LambdaSettings 2024-01-31 11:55:40 +01:00
Irfan Alibay
cfcc924de8 Add devtools for json results generation + replace old ones (#691)
* Add devtools for json results generation + replace old ones

* remove extra gzip files
2024-01-29 10:37:03 +00:00
Mike Henry
6014e7e3c6 fix issue with new notebook version (#498) 2023-07-20 11:23:01 -07:00
Mike Henry
3868033611 update installer to use python 3.10 2023-06-20 05:59:22 +01:00
Mike Henry
fa83040b5a Push Apptainer Image to GHCR + Build Installer & Docker Image using Conda-Forge Package (#353)
* see if this can push to ghcr

* fix URI

* don't push docker image

* don't push docker image

* see if this lets us login to ghcr

* we can push to github's container registry directly

* now when we trigger a build, we build the latest version we can discover from the tags

* forgot to remove bit where we install package from source

* use docker ignore to make sure we keep the context as small as we can

* make it explicit we don't push before we test, and make sure we have the same build args for when we do push

* add juypterlab and notebook to docker image

* Apply suggestions from code review
2023-04-25 16:38:58 +00:00
Mike Henry
daa74cbf60 Fix single file installer (#308) 2023-04-17 21:47:52 +00:00
Mike Henry
721abe4c4d Single File Installer (#95) 2022-03-31 05:49:25 +01:00