{"action":"closed","issue":{"url":"https://api.github.com/repos/chjj/pty.js/issues/127","labels_url":"https://api.github.com/repos/chjj/pty.js/issues/127/labels{/name}","comments_url":"https://api.github.com/repos/chjj/pty.js/issues/127/comments","events_url":"https://api.github.com/repos/chjj/pty.js/issues/127/events","html_url":"https://github.com/chjj/pty.js/issues/127","id":100386639,"number":127,"title":"Build fails on io.js 3.0.0","user":{"login":"jedverity","id":526284,"avatar_url":"https://avatars.githubusercontent.com/u/526284?v=3","gravatar_id":"","url":"https://api.github.com/users/jedverity","html_url":"https://github.com/jedverity","followers_url":"https://api.github.com/users/jedverity/followers","following_url":"https://api.github.com/users/jedverity/following{/other_user}","gists_url":"https://api.github.com/users/jedverity/gists{/gist_id}","starred_url":"https://api.github.com/users/jedverity/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jedverity/subscriptions","organizations_url":"https://api.github.com/users/jedverity/orgs","repos_url":"https://api.github.com/users/jedverity/repos","events_url":"https://api.github.com/users/jedverity/events{/privacy}","received_events_url":"https://api.github.com/users/jedverity/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-08-11T19:17:08Z","updated_at":"2015-08-24T09:28:34Z","closed_at":"2015-08-24T09:28:34Z","body":"It appears to be a nan issue again as with #122 . I'm on Mac OS 10.10.4.\r\n\r\n```\r\nIn file included from ../src/unix/pty.cc:20:\r\n../node_modules/nan/nan.h:324:27: error: redefinition of 'NanEnsureHandleOrPersistent'\r\n  NAN_INLINE v8::Local<T> NanEnsureHandleOrPersistent(const v8::Local<T> &val) {\r\n                          ^\r\n../node_modules/nan/nan.h:319:17: note: previous definition is here\r\n  v8::Handle<T> NanEnsureHandleOrPersistent(const v8::Handle<T> &val) {\r\n                ^\r\n../node_modules/nan/nan.h:344:27: error: redefinition of 'NanEnsureLocal'\r\n  NAN_INLINE v8::Local<T> NanEnsureLocal(const v8::Handle<T> &val) {\r\n                          ^\r\n../node_modules/nan/nan.h:334:27: note: previous definition is here\r\n  NAN_INLINE v8::Local<T> NanEnsureLocal(const v8::Local<T> &val) {\r\n                          ^\r\n../node_modules/nan/nan.h:757:13: error: no member named 'smalloc' in namespace 'node'\r\n    , node::smalloc::FreeCallback callback\r\n      ~~~~~~^\r\n../node_modules/nan/nan.h:768:12: error: no matching function for call to 'New'\r\n    return node::Buffer::New(v8::Isolate::GetCurrent(), data, size);\r\n           ^~~~~~~~~~~~~~~~~\r\n/Users/.../.node-gyp/3.0.0/include/node/node_buffer.h:35:40: note: candidate function not viable: no known conversion from 'uint32_t' (aka 'unsigned int') to\r\n      'enum encoding' for 3rd argument\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\n/Users/.../.node-gyp/3.0.0/include/node/node_buffer.h:47:40: note: candidate function not viable: 2nd argument ('const char *') would lose const qualifier\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\n/Users/.../.node-gyp/3.0.0/include/node/node_buffer.h:32:40: note: candidate function not viable: requires 2 arguments, but 3 were provided\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate, size_t length);\r\n                                       ^\r\n/Users/.../.node-gyp/3.0.0/include/node/node_buffer.h:40:40: note: candidate function not viable: requires 5 arguments, but 3 were provided\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\nIn file included from ../src/unix/pty.cc:20:\r\n../node_modules/nan/nan.h:772:12: error: no viable conversion from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'\r\n    return node::Buffer::New(v8::Isolate::GetCurrent(), size);\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from\r\n      'v8::MaybeLocal<v8::Object>' to 'const v8::Local<v8::Object> &' for 1st argument\r\nclass Local {\r\n      ^\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from\r\n      'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object> &&' for 1st argument\r\nclass Local {\r\n      ^\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'MaybeLocal'\r\n  V8_INLINE Local(Local<S> that)\r\n            ^\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:327:13: note: candidate template ignored: could not match 'S *' against 'v8::MaybeLocal<v8::Object>'\r\n  V8_INLINE Local(S* that)\r\n            ^\r\nIn file included from ../src/unix/pty.cc:20:\r\n../node_modules/nan/nan.h:779:26: error: no member named 'Use' in namespace 'node::Buffer'\r\n    return node::Buffer::Use(v8::Isolate::GetCurrent(), data, size);\r\n           ~~~~~~~~~~~~~~^\r\nIn file included from ../src/unix/pty.cc:20:\r\nIn file included from ../node_modules/nan/nan.h:24:\r\nIn file included from /Users/.../.node-gyp/3.0.0/include/node/node.h:42:\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Primitive *volatile' from incompatible type 'v8::Value *'\r\n    TYPE_CHECK(T, S);\r\n    ^~~~~~~~~~~~~~~~\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'\r\n    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \\\r\n                                    ^ ~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:501:12: note: in instantiation of function template specialization 'v8::Local<v8::Primitive>::Local<v8::Value>' requested here\r\n    return NanEscapeScope(NanNew(v8::Undefined(v8::Isolate::GetCurrent())));\r\n           ^\r\n../node_modules/nan/nan.h:483:30: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(Nan::imp::NanEnsureLocal(val))\r\n                             ^\r\nIn file included from ../src/unix/pty.cc:20:\r\nIn file included from ../node_modules/nan/nan.h:24:\r\nIn file included from /Users/.../.node-gyp/3.0.0/include/node/node.h:42:\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Boolean *volatile' from incompatible type 'v8::Value *'\r\n    TYPE_CHECK(T, S);\r\n    ^~~~~~~~~~~~~~~~\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'\r\n    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \\\r\n                                    ^ ~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:511:12: note: in instantiation of function template specialization 'v8::Local<v8::Boolean>::Local<v8::Value>' requested here\r\n    return NanEscapeScope(NanNew(v8::True(v8::Isolate::GetCurrent())));\r\n           ^\r\n../node_modules/nan/nan.h:483:30: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(Nan::imp::NanEnsureLocal(val))\r\n                             ^\r\nIn file included from ../src/unix/pty.cc:20:\r\nIn file included from ../node_modules/nan/nan.h:24:\r\nIn file included from /Users/.../.node-gyp/3.0.0/include/node/node.h:42:\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Function *volatile' from incompatible type 'v8::Value *'\r\n    TYPE_CHECK(T, S);\r\n    ^~~~~~~~~~~~~~~~\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'\r\n    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \\\r\n                                    ^ ~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:1645:12: note: in instantiation of function template specialization 'v8::Local<v8::Function>::Local<v8::Value>' requested here\r\n    return NanEscapeScope(NanNew(handle)->Get(kCallbackIndex)\r\n           ^\r\n../node_modules/nan/nan.h:483:30: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(Nan::imp::NanEnsureLocal(val))\r\n                             ^\r\nIn file included from ../src/unix/pty.cc:20:\r\nIn file included from ../node_modules/nan/nan.h:24:\r\nIn file included from /Users/.../.node-gyp/3.0.0/include/node/node.h:42:\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Object *volatile' from incompatible type 'v8::Value *'\r\n    TYPE_CHECK(T, S);\r\n    ^~~~~~~~~~~~~~~~\r\n/Users/.../.node-gyp/3.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'\r\n    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \\\r\n                                    ^ ~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:1776:12: note: in instantiation of function template specialization 'v8::Local<v8::Object>::Local<v8::Value>' requested here\r\n    return NanEscapeScope(\r\n           ^\r\n../node_modules/nan/nan.h:483:30: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(Nan::imp::NanEnsureLocal(val))\r\n```"}}