[canary-base] test: update for new V8 serialization format#63475
Conversation
|
Review requested:
|
| `; | ||
|
|
||
| const desStr = 'ff0f6f2203666f6f5e007b01'; | ||
| const desStr = 'ff106f2203666f6f5e007b01'; |
There was a problem hiding this comment.
I figured it might be worth it to keep this one as a semver-major signal, as the message above indicates. But on a side note this might be worth to fold into nodejs/TSC#1852 as well..
|
Just a side note... these version bumps can be a bit problematic for folks who use the serialization api to store persistently to disk. In Workers we have a patch to allow the version to be set explicitly for both deserialization and serialization. We haven't yet tried to upstream them but we certainly could. |
|
I think if V8 really changes the format even just for some values, there isn't really too much of a point to only alter the version without backporting changes that actually restore the old layout? It remains a separate question whether we can actually afford maintaining the older versions of layout on newer version of V8. Also V8's serialization format is guaranteed to be backward compatible i.e. V8 version n can handle serialization format n-1, n-2, etc. it's only that it won't work the other way around (version n-1 can't handle data serialized from version n), messing with the version can break the contract in subtle ways. |
|
cc @nodejs/v8-update Planning to land this soon to unbreak canary.. |
V8 bumped its wire-format version from 0x0f to 0x10. Update the expected hex in test-v8-serdes, and derive the v8 header bytes dynamically in test-runner-v8-deserializer so it tracks future bumps automatically. Signed-off-by: Joyee Cheung <joyeec9h3@gmail.com>
V8 bumped its wire-format version from 0x0f to 0x10. Update the expected hex in test-v8-serdes, and derive the v8 header bytes dynamically in test-runner-v8-deserializer so it tracks future bumps automatically.
Fixes: nodejs/node-v8#311