{"action":"created","issue":{"url":"https://api.github.com/repos/socketio/socket.io/issues/2228","labels_url":"https://api.github.com/repos/socketio/socket.io/issues/2228/labels{/name}","comments_url":"https://api.github.com/repos/socketio/socket.io/issues/2228/comments","events_url":"https://api.github.com/repos/socketio/socket.io/issues/2228/events","html_url":"https://github.com/socketio/socket.io/issues/2228","id":105492340,"number":2228,"title":"Node v4.0.0 - Build failing","user":{"login":"cjsaylor","id":157755,"avatar_url":"https://avatars.githubusercontent.com/u/157755?v=3","gravatar_id":"","url":"https://api.github.com/users/cjsaylor","html_url":"https://github.com/cjsaylor","followers_url":"https://api.github.com/users/cjsaylor/followers","following_url":"https://api.github.com/users/cjsaylor/following{/other_user}","gists_url":"https://api.github.com/users/cjsaylor/gists{/gist_id}","starred_url":"https://api.github.com/users/cjsaylor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cjsaylor/subscriptions","organizations_url":"https://api.github.com/users/cjsaylor/orgs","repos_url":"https://api.github.com/users/cjsaylor/repos","events_url":"https://api.github.com/users/cjsaylor/events{/privacy}","received_events_url":"https://api.github.com/users/cjsaylor/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-09-09T00:11:07Z","updated_at":"2015-09-12T17:11:39Z","closed_at":null,"body":"When installing socket.io latest with node V4.0.0 (stable), the following build failure occurs.\r\n\r\n```\r\n> utf-8-validate@1.1.0 install /app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate\r\n> node-gyp rebuild\r\n\r\nmake: Entering directory `/app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate/build'\r\n  CXX(target) Release/obj.target/validation/src/validation.o\r\nIn file included from ../src/validation.cc:15:0:\r\n../node_modules/nan/nan.h:261:25: error: redefinition of 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Local<T>)'\r\n../node_modules/nan/nan.h:256:25: error: 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Handle<T>)' previously declared here\r\n../node_modules/nan/nan.h:661:13: error: 'node::smalloc' has not been declared\r\n../node_modules/nan/nan.h:661:35: error: expected ',' or '...' before 'callback'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(char*, size_t, int)':\r\n../node_modules/nan/nan.h:665:50: error: 'callback' was not declared in this scope\r\n../node_modules/nan/nan.h:665:60: error: 'hint' was not declared in this scope\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(const char*, uint32_t)':\r\n../node_modules/nan/nan.h:672:67: error: call of overloaded 'New(v8::Isolate*, const char*&, uint32_t&)' is ambiguous\r\n../node_modules/nan/nan.h:672:67: note: candidates are:\r\nIn file included from ../src/validation.cc:10:0:\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, v8::Local<v8::String>, node::encoding) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note:   no known conversion for argument 3 from 'uint32_t {aka unsigned int}' to 'node::encoding'\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note:   no known conversion for argument 2 from 'const char*' to 'char*'\r\nIn file included from ../src/validation.cc:15:0:\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(uint32_t)':\r\n../node_modules/nan/nan.h:676:61: error: could not convert 'node::Buffer::New(v8::Isolate::GetCurrent(), ((size_t)size))' from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanBufferUse(char*, uint32_t)':\r\n../node_modules/nan/nan.h:683:12: error: 'Use' is not a member of 'node::Buffer'\r\nmake: *** [Release/obj.target/validation/src/validation.o] Error 1\r\nmake: Leaving directory `/app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate/build'\r\ngyp ERR! build error\r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack     at ChildProcess.onExit (/nodejs/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)\r\ngyp ERR! stack     at emitTwo (events.js:87:13)\r\ngyp ERR! stack     at ChildProcess.emit (events.js:172:7)\r\ngyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)\r\ngyp ERR! System Linux 4.0.9-boot2docker\r\ngyp ERR! command \"/nodejs/bin/node\" \"/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate\r\ngyp ERR! node -v v4.0.0\r\ngyp ERR! node-gyp -v v3.0.1\r\ngyp ERR! not ok\r\n\r\n> bufferutil@1.1.0 install /app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/bufferutil\r\n> node-gyp rebuild\r\n\r\nmake: Entering directory `/app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/bufferutil/build'\r\n  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o\r\nIn file included from ../src/bufferutil.cc:16:0:\r\n../node_modules/nan/nan.h:261:25: error: redefinition of 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Local<T>)'\r\n../node_modules/nan/nan.h:256:25: error: 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Handle<T>)' previously declared here\r\n../node_modules/nan/nan.h:661:13: error: 'node::smalloc' has not been declared\r\n../node_modules/nan/nan.h:661:35: error: expected ',' or '...' before 'callback'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(char*, size_t, int)':\r\n../node_modules/nan/nan.h:665:50: error: 'callback' was not declared in this scope\r\n../node_modules/nan/nan.h:665:60: error: 'hint' was not declared in this scope\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(const char*, uint32_t)':\r\n../node_modules/nan/nan.h:672:67: error: call of overloaded 'New(v8::Isolate*, const char*&, uint32_t&)' is ambiguous\r\n../node_modules/nan/nan.h:672:67: note: candidates are:\r\nIn file included from ../src/bufferutil.cc:10:0:\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, v8::Local<v8::String>, node::encoding) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note:   no known conversion for argument 3 from 'uint32_t {aka unsigned int}' to 'node::encoding'\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note:   no known conversion for argument 2 from 'const char*' to 'char*'\r\nIn file included from ../src/bufferutil.cc:16:0:\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(uint32_t)':\r\n../node_modules/nan/nan.h:676:61: error: could not convert 'node::Buffer::New(v8::Isolate::GetCurrent(), ((size_t)size))' from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanBufferUse(char*, uint32_t)':\r\n../node_modules/nan/nan.h:683:12: error: 'Use' is not a member of 'node::Buffer'\r\nmake: *** [Release/obj.target/bufferutil/src/bufferutil.o] Error 1\r\nmake: Leaving directory `/app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/bufferutil/build'\r\ngyp ERR! build error\r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack     at ChildProcess.onExit (/nodejs/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)\r\ngyp ERR! stack     at emitTwo (events.js:87:13)\r\ngyp ERR! stack     at ChildProcess.emit (events.js:172:7)\r\ngyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)\r\ngyp ERR! System Linux 4.0.9-boot2docker\r\ngyp ERR! command \"/nodejs/bin/node\" \"/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /app/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/bufferutil\r\ngyp ERR! node -v v4.0.0\r\ngyp ERR! node-gyp -v v3.0.1\r\ngyp ERR! not ok\r\nnpm WARN optional dep failed, continuing utf-8-validate@1.1.0\r\nnpm WARN optional dep failed, continuing bufferutil@1.1.0\r\n\r\n> utf-8-validate@1.1.0 install /app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/utf-8-validate\r\n> node-gyp rebuild\r\n\r\nmake: Entering directory `/app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/utf-8-validate/build'\r\n  CXX(target) Release/obj.target/validation/src/validation.o\r\nIn file included from ../src/validation.cc:15:0:\r\n../node_modules/nan/nan.h:261:25: error: redefinition of 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Local<T>)'\r\n../node_modules/nan/nan.h:256:25: error: 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Handle<T>)' previously declared here\r\n../node_modules/nan/nan.h:661:13: error: 'node::smalloc' has not been declared\r\n../node_modules/nan/nan.h:661:35: error: expected ',' or '...' before 'callback'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(char*, size_t, int)':\r\n../node_modules/nan/nan.h:665:50: error: 'callback' was not declared in this scope\r\n../node_modules/nan/nan.h:665:60: error: 'hint' was not declared in this scope\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(const char*, uint32_t)':\r\n../node_modules/nan/nan.h:672:67: error: call of overloaded 'New(v8::Isolate*, const char*&, uint32_t&)' is ambiguous\r\n../node_modules/nan/nan.h:672:67: note: candidates are:\r\nIn file included from ../src/validation.cc:10:0:\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, v8::Local<v8::String>, node::encoding) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note:   no known conversion for argument 3 from 'uint32_t {aka unsigned int}' to 'node::encoding'\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note:   no known conversion for argument 2 from 'const char*' to 'char*'\r\nIn file included from ../src/validation.cc:15:0:\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(uint32_t)':\r\n../node_modules/nan/nan.h:676:61: error: could not convert 'node::Buffer::New(v8::Isolate::GetCurrent(), ((size_t)size))' from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanBufferUse(char*, uint32_t)':\r\n../node_modules/nan/nan.h:683:12: error: 'Use' is not a member of 'node::Buffer'\r\nmake: *** [Release/obj.target/validation/src/validation.o] Error 1\r\nmake: Leaving directory `/app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/utf-8-validate/build'\r\ngyp ERR! build error\r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack     at ChildProcess.onExit (/nodejs/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)\r\ngyp ERR! stack     at emitTwo (events.js:87:13)\r\ngyp ERR! stack     at ChildProcess.emit (events.js:172:7)\r\ngyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)\r\ngyp ERR! System Linux 4.0.9-boot2docker\r\ngyp ERR! command \"/nodejs/bin/node\" \"/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/utf-8-validate\r\ngyp ERR! node -v v4.0.0\r\ngyp ERR! node-gyp -v v3.0.1\r\ngyp ERR! not ok\r\n\r\n> bufferutil@1.1.0 install /app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/bufferutil\r\n> node-gyp rebuild\r\n\r\nmake: Entering directory `/app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/bufferutil/build'\r\n  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o\r\nIn file included from ../src/bufferutil.cc:16:0:\r\n../node_modules/nan/nan.h:261:25: error: redefinition of 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Local<T>)'\r\n../node_modules/nan/nan.h:256:25: error: 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Handle<T>)' previously declared here\r\n../node_modules/nan/nan.h:661:13: error: 'node::smalloc' has not been declared\r\n../node_modules/nan/nan.h:661:35: error: expected ',' or '...' before 'callback'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(char*, size_t, int)':\r\n../node_modules/nan/nan.h:665:50: error: 'callback' was not declared in this scope\r\n../node_modules/nan/nan.h:665:60: error: 'hint' was not declared in this scope\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(const char*, uint32_t)':\r\n../node_modules/nan/nan.h:672:67: error: call of overloaded 'New(v8::Isolate*, const char*&, uint32_t&)' is ambiguous\r\n../node_modules/nan/nan.h:672:67: note: candidates are:\r\nIn file included from ../src/bufferutil.cc:10:0:\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, v8::Local<v8::String>, node::encoding) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note:   no known conversion for argument 3 from 'uint32_t {aka unsigned int}' to 'node::encoding'\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t) <near match>\r\n/root/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note:   no known conversion for argument 2 from 'const char*' to 'char*'\r\nIn file included from ../src/bufferutil.cc:16:0:\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(uint32_t)':\r\n../node_modules/nan/nan.h:676:61: error: could not convert 'node::Buffer::New(v8::Isolate::GetCurrent(), ((size_t)size))' from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'\r\n../node_modules/nan/nan.h: In function 'v8::Local<v8::Object> NanBufferUse(char*, uint32_t)':\r\n../node_modules/nan/nan.h:683:12: error: 'Use' is not a member of 'node::Buffer'\r\nmake: *** [Release/obj.target/bufferutil/src/bufferutil.o] Error 1\r\nmake: Leaving directory `/app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/bufferutil/build'\r\ngyp ERR! build error\r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack     at ChildProcess.onExit (/nodejs/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)\r\ngyp ERR! stack     at emitTwo (events.js:87:13)\r\ngyp ERR! stack     at ChildProcess.emit (events.js:172:7)\r\ngyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)\r\ngyp ERR! System Linux 4.0.9-boot2docker\r\ngyp ERR! command \"/nodejs/bin/node\" \"/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /app/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/bufferutil\r\ngyp ERR! node -v v4.0.0\r\ngyp ERR! node-gyp -v v3.0.1\r\ngyp ERR! not ok\r\nnpm WARN optional dep failed, continuing utf-8-validate@1.1.0\r\nnpm WARN optional dep failed, continuing bufferutil@1.1.0\r\n```\r\n\r\nThis is obviously a compilation problem with upstream packages on `utf-8-validate` and `bufferutil`, never-the-less a release will need to be made with their subsequent releases.\r\n\r\nI will be adding tickets in these two projects as a result and reference this ticket."},"comment":{"url":"https://api.github.com/repos/socketio/socket.io/issues/comments/139798058","html_url":"https://github.com/socketio/socket.io/issues/2228#issuecomment-139798058","issue_url":"https://api.github.com/repos/socketio/socket.io/issues/2228","id":139798058,"user":{"login":"ChALkeR","id":291301,"avatar_url":"https://avatars.githubusercontent.com/u/291301?v=3","gravatar_id":"","url":"https://api.github.com/users/ChALkeR","html_url":"https://github.com/ChALkeR","followers_url":"https://api.github.com/users/ChALkeR/followers","following_url":"https://api.github.com/users/ChALkeR/following{/other_user}","gists_url":"https://api.github.com/users/ChALkeR/gists{/gist_id}","starred_url":"https://api.github.com/users/ChALkeR/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChALkeR/subscriptions","organizations_url":"https://api.github.com/users/ChALkeR/orgs","repos_url":"https://api.github.com/users/ChALkeR/repos","events_url":"https://api.github.com/users/ChALkeR/events{/privacy}","received_events_url":"https://api.github.com/users/ChALkeR/received_events","type":"User","site_admin":false},"created_at":"2015-09-12T17:11:39Z","updated_at":"2015-09-12T17:11:39Z","body":"Adding to the list: https://github.com/nodejs/node/issues/2798."}}