Thank you to everyone who contributed to this release! This release includes significant API improvements and breaking changes. @janosh led a major API redesign to improve usability. @stefanbringuier added heat flux calculations. @curtischong continued improving type safety across the codebase. @CompRhys, @orionarcher, @WillEngler, and @thomasloux all made valuable contributions. π
Note: This PR makes fairly significant changes to the TorchSim API. Namely, integrators and optimizers no longer return a tuple of init and step functions. Instead these are defined separately and dynamically linked through a registry. In the high level API, you now select the integrator or optimizer by selecting a valid tag from this registry.
What's Changed
π₯ Breaking Changes
- Fairchem v2 support by @janosh, @CompRhys, @abhijeetgangan, @orionarcher in #211
- Big breaking API redesign by @janosh in #264
- Rename Flavors to more descriptive names by @orionarcher in #282
π New Features
- Enhancement: Heat Flux Function by @stefanbringuier in #127
π Bug Fixes
- Fix: orb squeeze provides incorrect shape for energy tensor by @thomasloux in #257
- Fix docs build by @WillEngler in #271
π Enhancements
π Documentation
- Update citation in README.md by @orionarcher in #240
- Add GOVERNANCE.md and remove Contributor's Certification checkbox and language by @WillEngler in #272
- Remove Contributor License Agreement (CLA) in favor of certification in contributing.md by @WillEngler in #267
- Small update to README and CHANGELOG by @orionarcher in #283
π·οΈ Type Hints
- mypy type math.py and test_math.py by @curtischong in #242
- Type test_io, neighbors, and transforms by @curtischong in #243
- Type trajectory by @curtischong in #244
π§Ή House-Keeping
- MAINT: update pins in MACE phonons example. Remove misleading ty from PR template by @CompRhys in #239
New Contributors
- @thomasloux made their first contribution in #257
- @WillEngler made their first contribution in #267
Full Changelog: v0.3.0...v0.4.0