-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Closed
Milestone
Description
With the new serialization logic in 6.2, a field has been added to verify that the structure of an object matches expectation. The value of this field is currently dependent on platform specific details (in particular, that our macOS build uses long long for int64_t while Linux is using long), and as a result of this validation some messages cannot be exchanged between platforms.
There are a few possible solutions proposed so far:
- Disable the validation (this is the only proposed protocol compatible change)
- Eliminate platform specific behavior in favor of the current behavior in our Linux build. This would have the effect of breaking compatibility between some 6.2 versions on macOS (and maybe Windows?), but not Linux
- Update the version to 6.3 (i.e. strictly follow compatibility conventions)
So far, I think the consensus has been that we go with option 2, as the versions that would lose compatibility are pre-release versions on the platforms that we don't recommend for production use.
Metadata
Metadata
Assignees
Labels
No labels