Open laroque opened 6 years ago
We were trying to roll out two coordinated updates to the wire protocol - this and the timestamp precision. And as a result we've gotten neither, although all supported dripline versions are ready for the timestamps.
The issue with this came from dripline-labview, which for awful labview reasons doesn't properly support json making this difficult to implement.
A couple of paths forward:
sendor_info.version
We should just fix the timestamps, it's too easy, and it generates too many errors for operators.
We currently have
sender_info.version
which is of type string and described as "Sender package version"In practice there are at least three different versions of interest (hopefully each in this list implies the one above):
Proposal
Change the type of this field to be a dictionary/map, where keys are the the versioned thing and values are version strings. The wire protocol version would always be required as would the version for the package itself. Any intermediate packages (like the dripline implementation) should be included if they exist.
This would allow us to use "standard" version strings in our packages and still include all of the useful information. It would also enable testing against the version of the wire protocol since the format of that string can be defined in the wire protocol itself.