Skip to content

Release 1.6.0#1138

Merged
dwhswenson merged 224 commits into
stablefrom
release-1.6.0
Jan 5, 2024
Merged

Release 1.6.0#1138
dwhswenson merged 224 commits into
stablefrom
release-1.6.0

Conversation

@dwhswenson

Copy link
Copy Markdown
Member

This is a long-overdue (and huge) release for OPS. While the only highlight feature is the addition of S-Shooting, this release contains many updates to maintain usability of OPS as its dependencies change, as well as a number of important bug fixes that are recommended for all users.

Deprecations: The FileSetter for external engines (e.g., Gromacs) will be changing from a sequential numeric value to a random string. See #1102 for details.

New features

Other enhancements

  • Clear old ExternalMDSnapshots during iter_generate (#1066)
  • New analysis testing utilities (#1068)
  • Account for modifier acceptance in engine movers (#1075)
  • add no_copy option to NoModifier and Deprecate 'subset_mask' (#1079)
  • Take care of coordinate modifcation in selector probability_ratio (#1076)

Experimental (beta) features

  • improvements to unpatch after using SimStore (#1065)
  • add simstore table access via slice (#1050)

Bugs fixed

  • Use MDTraj codecs in SimStore JSON serialization (#1116)
  • Prevent double monkey-patching experimental storage (#1109)
  • Actually check for CVDefinedVolume.lambda_max == "inf" (#1092)
  • SimStore: Fix storable function serialization (#1088)
  • SimStore: Fix issue with internalized snapshot box vectors (#1086)
  • OpenMMEngine: use masses from mdtraj topolgy directly (#1085 @hejung)
  • unbreak API call to selector.probability_ratio (#1082)

Miscellaneous improvements

  • Support Python 3.10; Python 3.11 (#1133)
  • Fix Dropbox download of precalculated results (#1128)
  • revert openmmtools import guard from test notebook (#1106)
  • clarify error message on missing units (#1122)
  • update copyright to 2022 (#1097)
  • Improved implementation of shooting point selector pick (avoid model that might introduce index error in subclasses) (#1110 @hejung)
  • Add FutureWarning for default filesetter external engines (#1102 #Deprecations)
  • make a missed string into a rawstring (#1096)
  • Guard against openmm import warnings (including those from OpenMMTools) (#1091)
  • Add CITATIONS.md (#1064)
  • Prevent non-string names in StorableNamedObject (#1052)
  • Updates in response to changes in dependencies (#1137, #1136, #1134, #1132, #1129, #1114, #1130, #1126, #1093)
  • Improvements to continuous integration and testing (#1123, #1100, #1089, #1081, #1078, #1073, #1058)
  • Improvements to documentation (#1090, #1087, #1083, #1057 @bdice)

singraber and others added 30 commits June 23, 2018 13:06
- Class SShootingSimulation added.
- Class SShootingAnalysis added.
- Class NonCanonicalSequentialMover added.
- Class NonCanonicalSequentialMoveChange added.
- Class DoubleWell added.
- Class OverdampedLangevinIntegrator added.
- Example IPython notebook sshooting-example.ipynb added.
- Nosetests for all classes added.
Co-authored-by: David W.H. Swenson <dwhs@hyperblazer.net>
Co-authored-by: David W.H. Swenson <dwhs@hyperblazer.net>
Fix documentation issues
add simstore table access via slice
Prevent non-string names in StorableNamedObject
Looks like this should get us through the unit tests.

* For Python 3.11, this changes to using the SimStore CalalbleCodec in
  netcdfplus. It is too much of a pain to maintain the opcode
  translation. This means that dill will be a hard requirement of OPS
  (at least, if you're in Python 3.11 or greater, but we'll include it
  everywhere)
* The CallableCodec had previously benefitted from the bytes codec our
  JSON system has. To get this to work for ujson, I changed
  CallableCodec to directly output base64-encoded strings. We'll retain
  the ability to load old files, but new files will write different
  bytes for CVs.

To-dos brought up by these changes:
* Add FutureWarning for old SimStore storages
* Add test that we can still load old SimStore storages
* Move Python 3.11 netcdfplus warning to storage initialization
In OpenMM 8.1, it seems that we must pass `None` for engine properties.
The empty dict is no longer treated the same.
Fix engine props for OpenMM 8.1
@dwhswenson dwhswenson merged commit 5991499 into stable Jan 5, 2024
@dwhswenson dwhswenson deleted the release-1.6.0 branch January 5, 2024 23:21
@dwhswenson

Copy link
Copy Markdown
Member Author

@sroet: Interesting -- GitHub now automatically lists "contributors" on a release (see https://github.com/openpathsampling/openpathsampling/releases/tag/v1.6.0), but it is only for those who are @-mentioned in the release notes. I added a line at the bottom to acknowledge us; I'll have to update my release notes writer for that!

@sroet

sroet commented Jan 8, 2024

Copy link
Copy Markdown
Member

@sroet: Interesting -- GitHub now automatically lists "contributors" on a release (see https://github.com/openpathsampling/openpathsampling/releases/tag/v1.6.0), but it is only for those who are @-mentioned in the release notes. I added a line at the bottom to acknowledge us; I'll have to update my release notes writer for that!

That is interesting indeed. I see you had a good push on this during my holidays 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants