Improve robustness and user-friendliness of gmxapi 0.2 package.
(Follow up to #4078 (closed))
The delay in the GROMACS 2021.3 release revealed that the publication of gmxapi 0.2.1 to PyPI was premature and revealed some versioning and packaging aspects that warranted urgent attention.
@eirrgang has uploaded a gmxapi 0.2.2 package to PyPI to improve compatibility and user experience for the gmxapi
Python package and for the sample_restraint
sample code.
This issue coordinates the several merge requests needed to incorporate the updates into the release branch. There is not any particular reason to rush these merges for 2021.3. (It is completely reasonable for these changes to exist only in the git branch until GROMACS 2021.4.)
-
Add API version checks so that 0.2.x Python package can build against any GROMACS 2021 release. -
Add a long_description
to improve appearance on pypi.org. -
Add a LICENSE
file per Python packaging guidelines.
Deferred
These changes can be back-ported to gmxapi 0.1.x, but the current consensus among developers seems to be to do this in a 2020-dev
fork (e.g. https://github.com/kassonlab/gmxapi).
Expanded test coverage (API regression testing) for library client code is clearly appropriate, but can be pursued in master
, and warrants separate issue tracking.