Skip to content

Commit fe2e6e6

Browse files
authored
Update NAN version to support upcoming node v10 release (mathiask88#39)
* make nodejs v10 ready
1 parent 0b94d73 commit fe2e6e6

5 files changed

Lines changed: 10 additions & 12 deletions

File tree

.travis.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,10 @@ sudo: false
44
language: node_js
55

66
node_js:
7+
- "10"
78
- "9"
89
- "8"
9-
- "7"
1010
- "6"
11-
- "5"
1211
- "4"
1312

1413
os:

appveyor.yml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,10 @@ environment:
44
# Test against these versions of Node.js
55
matrix:
66
# node.js
7+
- nodejs_version: "10"
78
- nodejs_version: "9"
89
- nodejs_version: "8"
9-
- nodejs_version: "7"
1010
- nodejs_version: "6"
11-
- nodejs_version: "5"
1211
- nodejs_version: "4"
1312

1413
# Build on both platforms
@@ -20,8 +19,6 @@ platform:
2019
install:
2120
# Get the latest version of $env:nodejs_version
2221
- ps: Update-NodeJsInstallation (Get-NodeJsLatestBuild $env:nodejs_version) $env:platform
23-
- npm -g install npm 2>&1>nul
24-
- SET PATH=%APPDATA%\npm;%PATH%
2522
# Output useful info for debugging.
2623
- node --version
2724
- npm --version

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
"license": "MIT",
2424
"readmeFilename": "README.md",
2525
"dependencies": {
26-
"nan": "~2.9.2",
26+
"nan": "~2.10.0",
2727
"bindings": "~1.3.0",
2828
"prebuild-install": "^2.4.0"
2929
},

src/node_snap7_server.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -643,7 +643,7 @@ NAN_MODULE_INIT(S7Server::Init) {
643643

644644
NAN_METHOD(S7Server::New) {
645645
if (info.IsConstructCall()) {
646-
S7Server *s7Server = new S7Server();
646+
S7Server *s7Server = new S7Server(info.This());
647647

648648
s7Server->Wrap(info.This());
649649
info.GetReturnValue().Set(info.This());
@@ -655,7 +655,8 @@ NAN_METHOD(S7Server::New) {
655655
}
656656
}
657657

658-
S7Server::S7Server() {
658+
S7Server::S7Server(v8::Local<v8::Object> resource)
659+
: async_resource("S7Server:emit", resource) {
659660
lastError = 0;
660661
snap7Server = new TS7Server();
661662

@@ -769,7 +770,7 @@ void S7Server::HandleEvent(uv_async_t* handle, int status) {
769770
event_obj
770771
};
771772

772-
Nan::MakeCallback(s7server->handle(), "emit", 2, argv);
773+
s7server->async_resource.runInAsyncScope(s7server->handle(), "emit", 2, argv);
773774
event_list_g.pop_front();
774775
}
775776
uv_mutex_unlock(&mutex_event);
@@ -822,7 +823,7 @@ void S7Server::HandleReadWriteEvent(uv_async_t* handle, int status) {
822823
Nan::New<v8::Function>(S7Server::RWBufferCallback)
823824
};
824825

825-
Nan::MakeCallback(s7server->handle(), "emit", 6, argv);
826+
s7server->async_resource.runInAsyncScope(s7server->handle(), "emit", 6, argv);
826827
}
827828

828829
void IOWorkerServer::Execute() {

src/node_snap7_server.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ typedef struct {
2626

2727
class S7Server : public Nan::ObjectWrap {
2828
public:
29-
S7Server();
29+
S7Server(v8::Local<v8::Object> resource);
3030
static NAN_MODULE_INIT(Init);
3131
static NAN_METHOD(New);
3232

@@ -73,6 +73,7 @@ class S7Server : public Nan::ObjectWrap {
7373
TS7Server *snap7Server;
7474
std::map<int, std::map<int, TBufferInfo> > area2buffer;
7575
int lastError;
76+
Nan::AsyncResource async_resource;
7677

7778
private:
7879
~S7Server();

0 commit comments

Comments
 (0)