Make dora versions compatible by using separate versioning for dora-message
crate
#614
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.
By versioning the
dora-message
crate individually, we can use the semver rules to encode which versions are compatible. This way, we can allow different versions of dora to work together (e.g. CLI version can be different than node API version), as long as the message formats are compatible. Breaking message format changes are signaled by a semver-incompatible release ofdora-message
. For example, 0.4.0 is not compatible with 0.3.5.One alternative approach could be to use the main version to signal compatibility, i.e. the common version that we use for all dora crates. This has the disadvantage that we might need to bump the minor version of the main dora crate every time we want to change the message format in a breaking way. As we still expect semi-regular breaking changes to the message format in the near future, we want to avoid this churn. Once we consider the message format more stable, we plan to revisit this approach.
Fixes #504
TODO
dora-message
crate if there is no new version.