{"action":"created","issue":{"url":"https://api.github.com/repos/AlexeyKupershtokh/node-v8-clone/issues/14","labels_url":"https://api.github.com/repos/AlexeyKupershtokh/node-v8-clone/issues/14/labels{/name}","comments_url":"https://api.github.com/repos/AlexeyKupershtokh/node-v8-clone/issues/14/comments","events_url":"https://api.github.com/repos/AlexeyKupershtokh/node-v8-clone/issues/14/events","html_url":"https://github.com/AlexeyKupershtokh/node-v8-clone/issues/14","id":108608899,"number":14,"title":"Does not compile with Node 4.x","user":{"login":"meredian","id":437622,"avatar_url":"https://avatars.githubusercontent.com/u/437622?v=3","gravatar_id":"","url":"https://api.github.com/users/meredian","html_url":"https://github.com/meredian","followers_url":"https://api.github.com/users/meredian/followers","following_url":"https://api.github.com/users/meredian/following{/other_user}","gists_url":"https://api.github.com/users/meredian/gists{/gist_id}","starred_url":"https://api.github.com/users/meredian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meredian/subscriptions","organizations_url":"https://api.github.com/users/meredian/orgs","repos_url":"https://api.github.com/users/meredian/repos","events_url":"https://api.github.com/users/meredian/events{/privacy}","received_events_url":"https://api.github.com/users/meredian/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-09-28T08:16:00Z","updated_at":"2015-11-04T17:18:53Z","closed_at":null,"body":"Not a surprise, must be related to a lot of internal api changes for newer V8. Unfortunately I have no experience with Node internals, so barely can do myself.\r\n\r\n```\r\n> npm install\r\n\r\n> node-v8-clone@0.6.2 install /Users/meredian/Dropbox/GitHub/jsonsem/node_modules/node-v8-clone\r\n> node-gyp rebuild\r\n\r\n  CXX(target) Release/obj.target/clone/src/clone.o\r\nIn file included from ../src/clone.cc:5:\r\n../node_modules/nan/nan.h:335:68: error: too many arguments to function call, expected at most 2,\r\n      have 4\r\n    return v8::Signature::New(v8::Isolate::GetCurrent(), receiver, argc, argv);\r\n           ~~~~~~~~~~~~~~~~~~                                      ^~~~~~~~~~\r\n/Users/meredian/.node-gyp/4.0.0/include/node/v8.h:4675:3: note: 'New' declared here\r\n  static Local<Signature> New(\r\n  ^\r\nIn file included from ../src/clone.cc:5:\r\n../node_modules/nan/nan.h:417:3: error: redefinition of 'NanNew'\r\n  NanNew<v8::StringObject, v8::Handle<v8::String> >(\r\n  ^\r\n../node_modules/nan/nan.h:410:3: note: previous definition is here\r\n  NanNew<v8::StringObject, v8::Local<v8::String> >(\r\n  ^\r\n../node_modules/nan/nan.h:435:36: error: redefinition of 'NanNew'\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../node_modules/nan/nan.h:429:36: note: previous definition is here\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../node_modules/nan/nan.h:447:36: error: redefinition of 'NanNew'\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../node_modules/nan/nan.h:441:36: note: previous definition is here\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../node_modules/nan/nan.h:616:19: error: no type named 'ExternalAsciiStringResource' in 'v8::String';\r\n      did you mean 'ExternalStringResource'?\r\n      v8::String::ExternalAsciiStringResource *resource) {\r\n      ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n                  ExternalStringResource\r\n/Users/meredian/.node-gyp/4.0.0/include/node/v8.h:2210:19: note: 'ExternalStringResource' declared\r\n      here\r\n  class V8_EXPORT ExternalStringResource\r\n                  ^\r\nIn file included from ../src/clone.cc:5:\r\n../node_modules/nan/nan.h:615:36: error: redefinition of 'NanNew'\r\n  NAN_INLINE v8::Local<v8::String> NanNew(\r\n                                   ^\r\n../node_modules/nan/nan.h:610:36: note: previous definition is here\r\n  NAN_INLINE v8::Local<v8::String> NanNew(\r\n                                   ^\r\n../node_modules/nan/nan.h:630:27: error: redefinition of '_NanEscapeScopeHelper'\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:625:27: note: previous definition is here\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Handle<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:646:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::Undefined(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:634:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:630:27: note: candidate template ignored: substitution failure\r\n      [with T = v8::Primitive]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:651:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::Null(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:634:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:630:27: note: candidate template ignored: substitution failure\r\n      [with T = v8::Primitive]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:656:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::True(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:634:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:630:27: note: candidate template ignored: substitution failure\r\n      [with T = v8::Boolean]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:661:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::False(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:634:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:630:27: note: candidate template ignored: substitution failure\r\n      [with T = v8::Boolean]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:878:13: error: no member named 'smalloc' in namespace 'node'\r\n    , node::smalloc::FreeCallback callback\r\n      ~~~~~~^\r\n../node_modules/nan/nan.h:889: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/meredian/.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note: candidate function not\r\n      viable: no known conversion from 'uint32_t' (aka 'unsigned int') to 'enum encoding' for 3rd\r\n      argument\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\n/Users/meredian/.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note: candidate function not\r\n      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/meredian/.node-gyp/4.0.0/include/node/node_buffer.h:28:40: note: candidate function not\r\n      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/meredian/.node-gyp/4.0.0/include/node/node_buffer.h:36:40: note: candidate function not\r\n      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/clone.cc:5:\r\n../node_modules/nan/nan.h:893:12: error: no viable conversion from 'v8::MaybeLocal<v8::Object>' to\r\n      'v8::Local<v8::Object>'\r\n    return node::Buffer::New(v8::Isolate::GetCurrent(), size);\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n/Users/meredian/.node-gyp/4.0.0/include/node/v8.h:210:7: note: candidate constructor\r\n      (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/meredian/.node-gyp/4.0.0/include/node/v8.h:210:7: note: candidate constructor\r\n      (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/meredian/.node-gyp/4.0.0/include/node/v8.h:214:13: note: candidate template ignored: could not\r\n      match 'Local' against 'MaybeLocal'\r\n  V8_INLINE Local(Local<S> that)\r\n            ^\r\n/Users/meredian/.node-gyp/4.0.0/include/node/v8.h:326:13: note: candidate template ignored: could not\r\n      match 'S *' against 'v8::MaybeLocal<v8::Object>'\r\n  V8_INLINE Local(S* that)\r\n            ^\r\nIn file included from ../src/clone.cc:5:\r\n../node_modules/nan/nan.h:900:26: error: no member named 'Use' in namespace 'node::Buffer'\r\n    return node::Buffer::Use(v8::Isolate::GetCurrent(), data, size);\r\n           ~~~~~~~~~~~~~~^\r\n../node_modules/nan/nan.h:1680:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(handle)->Get(kCallbackIndex)\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:634:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:630:27: note: candidate template ignored: substitution failure\r\n      [with T = v8::Function]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:1767:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(handle->Get(NanNew(key)).As<v8::Object>());\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:634:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../node_modules/nan/nan.h:630:27: note: candidate template ignored: substitution failure\r\n      [with T = v8::Object]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../node_modules/nan/nan.h:1973:12: error: no member named 'IsExternalAscii' in 'v8::String'; did you\r\n      mean 'IsExternal'?\r\n  if (str->IsExternalAscii()) {\r\n           ^~~~~~~~~~~~~~~\r\n           IsExternal\r\n/Users/meredian/.node-gyp/4.0.0/include/node/v8.h:2174:8: note: 'IsExternal' declared here\r\n  bool IsExternal() const;\r\n       ^\r\nIn file included from ../src/clone.cc:5:\r\n../node_modules/nan/nan.h:1974:23: error: no type named 'ExternalAsciiStringResource' in\r\n      'v8::String'; did you mean 'ExternalStringResource'?\r\n    const v8::String::ExternalAsciiStringResource* ext;\r\n          ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n                      ExternalStringResource\r\n/Users/meredian/.node-gyp/4.0.0/include/node/v8.h:2210:19: note: 'ExternalStringResource' declared\r\n      here\r\n  class V8_EXPORT ExternalStringResource\r\n                  ^\r\nfatal error: too many errors emitted, stopping now [-ferror-limit=]\r\n````"},"comment":{"url":"https://api.github.com/repos/AlexeyKupershtokh/node-v8-clone/issues/comments/153797168","html_url":"https://github.com/AlexeyKupershtokh/node-v8-clone/issues/14#issuecomment-153797168","issue_url":"https://api.github.com/repos/AlexeyKupershtokh/node-v8-clone/issues/14","id":153797168,"user":{"login":"woolfi182","id":8964597,"avatar_url":"https://avatars.githubusercontent.com/u/8964597?v=3","gravatar_id":"","url":"https://api.github.com/users/woolfi182","html_url":"https://github.com/woolfi182","followers_url":"https://api.github.com/users/woolfi182/followers","following_url":"https://api.github.com/users/woolfi182/following{/other_user}","gists_url":"https://api.github.com/users/woolfi182/gists{/gist_id}","starred_url":"https://api.github.com/users/woolfi182/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/woolfi182/subscriptions","organizations_url":"https://api.github.com/users/woolfi182/orgs","repos_url":"https://api.github.com/users/woolfi182/repos","events_url":"https://api.github.com/users/woolfi182/events{/privacy}","received_events_url":"https://api.github.com/users/woolfi182/received_events","type":"User","site_admin":false},"created_at":"2015-11-04T17:18:53Z","updated_at":"2015-11-04T17:18:53Z","body":"the same issue i have with Node v4.2.1"}}