You are reading content from Scuttlebutt
@aljoscha %GqnZ1w0tYBEzMDNK7ioRTC/3qTKbM5YTmAtK+8frceE=.sha256
Re: %o+3XFaGO6


Or a minor update to support a new hash

Is it really minor though? If it mandates implementations to treat certain messages different than before the update, then all old implementations that have not implemented the update yet suddenly do not conform to the specification anymore. That's a breaking, i.e., major change as I see it; new behavior is not a strict superset of old behavior, but old behavior has to change.

At the very least, you have to very carefully specify how to handle as-of-yet unsupported hashes, and make sure that not knowing some hash format still leaves an implementation conformant to the specification. Following that argument, an implementation that does not know about any hash format should also be conformant (albeit useless). Otherwise, adding hashes clearly is a breaking change.

Join Scuttlebutt now