Updates the version handle of variables so they can be strings,
this allows for semantic versions to be used. This mimics the
behaviour of the original Credstash where versions are not
limited to integers only, whether by design or by nature of
Python's dynamic type system.
This feature does have some negative sides; however these
are present in the original Credstash so this a like for like
port:
Sorting is broken if integers and strings are mixed together
for the same variable; however if a variable is only ever
versioned with a string then ordering works, same for integers
Auto-increment with string based versions doesn't quite work
If the choice is made to use Semantic Versioning with variables
then essentially the version must always be specified when
adding a new value, however if you are using SemVer then this
should always be the case.
The rationale behind this is so we can use real application
versions with variables, in the real world simple integers
are not used for application versioning and it doesn't make
sense to version an applications variables separately.
Updates the version handle of variables so they can be strings, this allows for semantic versions to be used. This mimics the behaviour of the original Credstash where versions are not limited to integers only, whether by design or by nature of Python's dynamic type system.
This feature does have some negative sides; however these are present in the original Credstash so this a like for like port:
If the choice is made to use Semantic Versioning with variables then essentially the version must always be specified when adding a new value, however if you are using SemVer then this should always be the case.
The rationale behind this is so we can use real application versions with variables, in the real world simple integers are not used for application versioning and it doesn't make sense to version an applications variables separately.