Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add a
payu_minimum_version
option toconfig.yaml
. This runs a check at the start of theExperimet.setup
comparing the current payu version and raises aRuntimeError
if version is earlier than the configured minimum version.I added a dependency on the
packaging
lib to parse and compare versions, which seems to the recommended library for parsing version strings (https://stackoverflow.com/a/11887885, https://setuptools.pypa.io/en/latest/deprecated/distutils-legacy.html#prefer-setuptools). I could do some regex parsing, but this library can handle already handles versions like1.0
,v0.1
,1.0.0+4.gabc1234
etc. So hopefully it'll be less buggy and will be able to support future version formats..I added the check to the start of the setup method to the experiment class which seemed the logical place for it at the moment. So unfortunately it's adding more logic to an already long file. I thought about adding a
setup.py
file for setup helper methods, but I am not sure whether that'll make it better having one file for one small function?Closes #147