Breaking Changes Ahead!
This `pymbar` release has several API changes and some exciting new features (such as JAX acceleration and support)
See this [guide](https://pymbar.readthedocs.io/en/master/moving_from_pymbar3.html) on how to migrate from `pymbar` 3.x to `pymbar` 4.x.
`pymbar` 3.x support
We will still support the `pymbar` 3.x version line as a long term support release. We encourage new `pymbar` users to use the 4.x version, but due to the considerable infrastructure build around `pymbar` 3.x, we will continue to provide maintenance support. Don't expect new features to be backported, but we will fix bugs.
What's Changed
* Fixed return type of multiple values to dict-like object by mrshirts in https://github.com/choderalab/pymbar/pull/325
* Move CI to GHA and start upgrade to Cookiecutter style by Lnaden in https://github.com/choderalab/pymbar/pull/328
* Convert to PyTest by Lnaden in https://github.com/choderalab/pymbar/pull/333
* Reused the gradient calculation in the adaptive algorithm. by mrshirts in https://github.com/choderalab/pymbar/pull/336
* Add CodeCov by Lnaden in https://github.com/choderalab/pymbar/pull/344
* Replace `np.matrix` calls and other warnings by Lnaden in https://github.com/choderalab/pymbar/pull/334
* Fix formatting by mrshirts in https://github.com/choderalab/pymbar/pull/342
* Reduce the cost of check for duplicate states by mrshirts in https://github.com/choderalab/pymbar/pull/337
* Revamping of PMF by mrshirts in https://github.com/choderalab/pymbar/pull/327
* Start Coverage Improvements (Mbar.py) by Lnaden in https://github.com/choderalab/pymbar/pull/347
* Bar.py and exp.py tests by mrshirts in https://github.com/choderalab/pymbar/pull/350
* cleaning up examples by mrshirts in https://github.com/choderalab/pymbar/pull/352
* Remove 2.01 compatible calls for exp and bar. by mrshirts in https://github.com/choderalab/pymbar/pull/354
* Even more coverage! by Lnaden in https://github.com/choderalab/pymbar/pull/357
* From print to logging by jaimergp in https://github.com/choderalab/pymbar/pull/360
* Add linting to CI by jaimergp in https://github.com/choderalab/pymbar/pull/367
* Apply black to the whole package by jaimergp in https://github.com/choderalab/pymbar/pull/371
* camelCase -> snake_case by jaimergp in https://github.com/choderalab/pymbar/pull/372
* Make Pylint less noisy by Lnaden in https://github.com/choderalab/pymbar/pull/375
* Modernize examples by jaimergp in https://github.com/choderalab/pymbar/pull/374
* Refactoring pmf code by mrshirts in https://github.com/choderalab/pymbar/pull/385
* Better dimension checking by mrshirts in https://github.com/choderalab/pymbar/pull/386
* Bin edges support by mrshirts in https://github.com/choderalab/pymbar/pull/387
* Apply Black to examples/ too by jaimergp in https://github.com/choderalab/pymbar/pull/392
* Updated heat capacity example by mrshirts in https://github.com/choderalab/pymbar/pull/394
* Replace "potential of mean force" with "free energy surface" by mrshirts in https://github.com/choderalab/pymbar/pull/397
* Update GHA to use Conda-Incubator by Lnaden in https://github.com/choderalab/pymbar/pull/410
* Bump conda-incubator in GHA to v2 by Lnaden in https://github.com/choderalab/pymbar/pull/411
* Clean out old Omnia references for Pymbar 4.0 branch by Lnaden in https://github.com/choderalab/pymbar/pull/412
* Modernize setup.py and versioning by jaimergp in https://github.com/choderalab/pymbar/pull/413
* Fix for expectations of very small numbers by mrshirts in https://github.com/choderalab/pymbar/pull/441
* Noticed one bug in setlogzero commit by mrshirts in https://github.com/choderalab/pymbar/pull/443
* Syncing Pymbar4 with master by mrshirts in https://github.com/choderalab/pymbar/pull/444
* Getting CI working on the current default branch by mikemhenry in https://github.com/choderalab/pymbar/pull/449
* Pymbar 4.0 adaptive logic by mrshirts in https://github.com/choderalab/pymbar/pull/446
* Pymbar4 add adaptivity by mrshirts in https://github.com/choderalab/pymbar/pull/453
* Convert JAX JIT to Decorators by Lnaden in https://github.com/choderalab/pymbar/pull/451
* Align namespaces to work if JAX is not installed by Lnaden in https://github.com/choderalab/pymbar/pull/454
* Pymbar4 bootstrapping by mrshirts in https://github.com/choderalab/pymbar/pull/448
* Remove old_mbar.py by mrshirts in https://github.com/choderalab/pymbar/pull/457
* Pymbar4 with jax (real try now) by mrshirts in https://github.com/choderalab/pymbar/pull/447
* Pymbar 4.0 by mrshirts in https://github.com/choderalab/pymbar/pull/458
* [WIP] Pymbar4 documentation by mrshirts in https://github.com/choderalab/pymbar/pull/455
* remove special character for now. by mrshirts in https://github.com/choderalab/pymbar/pull/460
* switch to napoleon for better output formatting. by mrshirts in https://github.com/choderalab/pymbar/pull/461
* More working on doc appearance. by mrshirts in https://github.com/choderalab/pymbar/pull/462
* Update classifier to match PyPi expectations. by Lnaden in https://github.com/choderalab/pymbar/pull/465
* Further improve RTD and previous versions. by mrshirts in https://github.com/choderalab/pymbar/pull/466
* * Further improve RTD and previous versions. by mrshirts in https://github.com/choderalab/pymbar/pull/467
**Full Changelog**: https://github.com/choderalab/pymbar/compare/3.0.7...4.0.1