-
-
Notifications
You must be signed in to change notification settings - Fork 33.2k
Closed
Labels
testIssues and PRs related to the tests.Issues and PRs related to the tests.v8 moduleIssues and PRs related to the "v8" subsystem.Issues and PRs related to the "v8" subsystem.
Description
Version
No response
Platform
No response
Subsystem
No response
What steps will reproduce the bug?
The test has this subtest:
{
const buf = Buffer.from('ff0d6f2203666f6f5e007b01', 'hex');
const des = new v8.DefaultDeserializer(buf);
des.readHeader();
const ser = new v8.DefaultSerializer();
ser.writeHeader();
ser.writeValue(des.readValue());
assert.deepStrictEqual(buf, ser.releaseBuffer()); <<< here
assert.strictEqual(des.getWireFormatVersion(), 0x0d);
}
Where you're asserting that V8's ValueSerializer produces exactly this buffer when you serialize a TypedArray.
Asserting this prevents V8 from upgrading the ValueSerializer format and is generally not very useful.
The guarantee we have though is that you can still deserialize this exact data and you'll get a TypedArray, since the format is backwards-compatible.
What we don't guarantee is that if you serialize the TypedArray again, you'll get this exact buffer back. Note that the buffer contains the ValueSerializer version number (the first 0d right after ff). We don't guarantee that we don't ever upgrade the version.
How often does it reproduce? Is there a required condition?
No response
What is the expected behavior?
No response
What do you see instead?
(See above)
Additional information
No response
Metadata
Metadata
Assignees
Labels
testIssues and PRs related to the tests.Issues and PRs related to the tests.v8 moduleIssues and PRs related to the "v8" subsystem.Issues and PRs related to the "v8" subsystem.