Following the comments around maintaining two parallel releases of the specification, we should have a discussion about how we want to version our models in the future.
Is the API stable enough to be able to pluck the models out into a separate repository where they can be versioned as releases, or does this add too much overhead on what will hopefully be fairly static objects? [additionally two model versions could not be used simultaneously with this approach]
Should we explicitly add logic for versioning models in this package, e.g. extend OptimadeField to include some kind of "supported versions" attribute per field, so that different implementations can be validated (for example) with different model versions?
Following the comments around maintaining two parallel releases of the specification, we should have a discussion about how we want to version our models in the future.
Is the API stable enough to be able to pluck the models out into a separate repository where they can be versioned as releases, or does this add too much overhead on what will hopefully be fairly static objects? [additionally two model versions could not be used simultaneously with this approach]
Should we explicitly add logic for versioning models in this package, e.g. extend
OptimadeField
to include some kind of "supported versions" attribute per field, so that different implementations can be validated (for example) with different model versions?Paraphrased from post by @ml-evs in https://github.com/Materials-Consortia/optimade-python-tools/issues/593#issuecomment-731199620