Skip to content

Update for v8 4.6 #37

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

misterdjules
Copy link
Contributor

This change makes mdb_v8's test suite pass with
https://github.com/nodejs/node/tree/vee-eight-4.6, which is the branch
where V8 4.6.x is integrated into node's master.

There are two main changes. The first one is that Map's
"inobject_properties" property has been renamed to
"inobject_properties_or_constructor_function_index". Since mdb_v8's
doesn't support new V8 primitives yet, we only care about using the
proper name for this property, not about the fact that it has a
different semantic for these new V8 primitives.

The second one is that typed arrays, which are used to represent Buffer
instances since node v4.0.0, store their underlying storage slightly
differently. For V8 versions 4.6 and later, we now use the
JSArrayBufferView and the JSArrayBuffer properties to get access to that
underlying storage, as it seems more reliable and less likely to change
than accessing the first elements' slot, whose representation has
changed between V8 4.5 and 4.6. It used to be a ExternalUint8Array, and
it is now a FixedTypedArray casted as a FixedTypedArrayBase.

The branch of this PR is based on #33 's branch , which is why the changes in #33 also show up. Please consider only the changes in the second commit as part of this PR.

When #33 is merged in master, I'll rebase this PR on top of master.

The associated metadata has been submitted upstream with https://codereview.chromium.org/1363403003/, and a new PR to backport it to nodejs/master so that it ends up in node v5.0.0 will be created asap.

@misterdjules
Copy link
Contributor Author

@davepacheco
Copy link
Contributor

I tested the usual: v0.10.40, v0.12.7, v4.0.0 on x86 and amd64. The test suite passed in all configurations.

@davepacheco davepacheco merged commit f501f97 into TritonDataCenter:master Oct 2, 2015
@davepacheco
Copy link
Contributor

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants