Skip to content

Support node v10x #125

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

Closed
3 tasks done
springmeyer opened this issue Apr 26, 2018 · 2 comments
Closed
3 tasks done

Support node v10x #125

springmeyer opened this issue Apr 26, 2018 · 2 comments

Comments

@springmeyer
Copy link
Contributor

springmeyer commented Apr 26, 2018

Node v10 was released on Tuesday: https://nodejs.org/en/blog/release/v10.0.0/.

This is a big deal because node does not release even numbered major releases very often.

Supporting node v10 will require upgrading to the latest nan release.

This means we'll need to deal with new v8/nan deprecations. Otherwise the builds will fail due to node-cpp-skel's use of -Werror and the new deprecations of Nan::MakeCallback (https://github.com/nodejs/nan/blob/master/doc/node_misc.md#nanmakecallback)

The deprecation errors look like:

../src/object_async/hello_async.cpp:186:19: error: 'Call' is deprecated [-Werror,-Wdeprecated-declarations]
        callback->Call(argc, static_cast<v8::Local<v8::Value>*>(argv));

The task ahead is to:

Open question: should node-cpp-skel be testing, in its job matrix, both node v6, v8, and v10? These are all currently within the LTS window (https://github.com/nodejs/Release#release-schedule). Or should node-cpp-skel just test the latest LTS version (in this case, right now v10) to keep the matrix under control and assume that downstream users of node-cpp-skel will add support for the versions they need?

NOTE: alternatively node-cpp-skel can (and likely should soon) move to using N-API instead of nan, which would mean that we'd be able to stop building binaries for each node version as those binaries would be compatible across MAJOR versions (perhaps with a few gochas). This is tracked at #45.

@springmeyer
Copy link
Contributor Author

new deprecations of Nan::MakeCallback

These can be fixed by following the guidelines at https://github.com/nodejs/nan/blob/master/doc/asyncworker.md#api_nan_async_queue_worker

This class internally handles the details of creating an AsyncResource, and running the callback in the correct async context. To be able to identify the async resources created by this class in async-hooks, provide a resource_name to the constructor. It is recommended that the module name be used as a prefix to the resource_name to avoid collisions in the names. For more details see AsyncResource documentation. The resource_name needs to stay valid for the lifetime of the worker instance.

springmeyer pushed a commit that referenced this issue May 1, 2018

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
springmeyer pushed a commit that referenced this issue May 3, 2018

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
springmeyer pushed a commit that referenced this issue Jun 23, 2018

Partially verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
We cannot verify signatures from co-authors, and some of the co-authors attributed to this commit require their commits to be signed.
springmeyer added a commit that referenced this issue Jun 23, 2018

Partially verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
We cannot verify signatures from co-authors, and some of the co-authors attributed to this commit require their commits to be signed.
Upgrade to [email protected] - refs #125
springmeyer pushed a commit that referenced this issue Jun 27, 2018

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
springmeyer added a commit that referenced this issue Jun 27, 2018

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Start building for node v10 and v8 - refs #125
@springmeyer
Copy link
Contributor Author

done with #144

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

No branches or pull requests

1 participant