{"action":"created","issue":{"url":"https://api.github.com/repos/kangax/fabric.js/issues/2666","labels_url":"https://api.github.com/repos/kangax/fabric.js/issues/2666/labels{/name}","comments_url":"https://api.github.com/repos/kangax/fabric.js/issues/2666/comments","events_url":"https://api.github.com/repos/kangax/fabric.js/issues/2666/events","html_url":"https://github.com/kangax/fabric.js/issues/2666","id":120193154,"number":2666,"title":"Installing using node 5.2","user":{"login":"romeovs","id":1250185,"avatar_url":"https://avatars.githubusercontent.com/u/1250185?v=3","gravatar_id":"","url":"https://api.github.com/users/romeovs","html_url":"https://github.com/romeovs","followers_url":"https://api.github.com/users/romeovs/followers","following_url":"https://api.github.com/users/romeovs/following{/other_user}","gists_url":"https://api.github.com/users/romeovs/gists{/gist_id}","starred_url":"https://api.github.com/users/romeovs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/romeovs/subscriptions","organizations_url":"https://api.github.com/users/romeovs/orgs","repos_url":"https://api.github.com/users/romeovs/repos","events_url":"https://api.github.com/users/romeovs/events{/privacy}","received_events_url":"https://api.github.com/users/romeovs/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2015-12-03T15:13:17Z","updated_at":"2015-12-27T16:41:19Z","closed_at":"2015-12-27T16:41:19Z","body":"I cannot get this to install with node `5.2`.\r\n\r\n`npm i canvas` works perfectly but when I do `npm i fabric`, I get:\r\n```\r\nnpm WARN engine fabric@1.5.0: wanted: {\"node\":\">=0.4.0 && <1.0.0\"} (current: {\"node\":\"5.1.0\",\"npm\":\"3.3.12\"})\r\nnpm WARN engine fabric@1.5.0: wanted: {\"node\":\">=0.4.0 && <1.0.0\"} (current: {\"node\":\"5.1.0\",\"npm\":\"3.3.12\"})\r\n\r\n> canvas@1.1.6 install /Users/romeo/node_modules/fabric/node_modules/canvas\r\n> node-gyp rebuild\r\n\r\nxcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance\r\n\r\nxcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance\r\n\r\n  SOLINK_MODULE(target) Release/canvas-postbuild.node\r\n  CXX(target) Release/obj.target/canvas/src/Canvas.o\r\nIn file included from ../src/Canvas.cc:7:\r\nIn file included from ../src/Canvas.h:22:\r\n../../nan/nan.h:342:68: error: too many arguments to function call, expected at most 2, have 4\r\n    return v8::Signature::New(v8::Isolate::GetCurrent(), receiver, argc, argv);\r\n           ~~~~~~~~~~~~~~~~~~                                      ^~~~~~~~~~\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:4674:3: note: 'New' declared here\r\n  static Local<Signature> New(\r\n  ^\r\nIn file included from ../src/Canvas.cc:7:\r\nIn file included from ../src/Canvas.h:22:\r\n../../nan/nan.h:424:3: error: redefinition of 'NanNew'\r\n  NanNew<v8::StringObject, v8::Handle<v8::String> >(\r\n  ^\r\n../../nan/nan.h:417:3: note: previous definition is here\r\n  NanNew<v8::StringObject, v8::Local<v8::String> >(\r\n  ^\r\n../../nan/nan.h:442:36: error: redefinition of 'NanNew'\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../../nan/nan.h:436:36: note: previous definition is here\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../../nan/nan.h:454:36: error: redefinition of 'NanNew'\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../../nan/nan.h:448:36: note: previous definition is here\r\n  NAN_INLINE v8::Local<v8::RegExp> NanNew(\r\n                                   ^\r\n../../nan/nan.h:623:19: error: no type named 'ExternalAsciiStringResource' in 'v8::String'; did you mean\r\n      'ExternalStringResource'?\r\n      v8::String::ExternalAsciiStringResource *resource) {\r\n      ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n                  ExternalStringResource\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:2207:19: note: 'ExternalStringResource' declared here\r\n  class V8_EXPORT ExternalStringResource\r\n                  ^\r\nIn file included from ../src/Canvas.cc:7:\r\nIn file included from ../src/Canvas.h:22:\r\n../../nan/nan.h:622:36: error: redefinition of 'NanNew'\r\n  NAN_INLINE v8::Local<v8::String> NanNew(\r\n                                   ^\r\n../../nan/nan.h:617:36: note: previous definition is here\r\n  NAN_INLINE v8::Local<v8::String> NanNew(\r\n                                   ^\r\n../../nan/nan.h:637:27: error: redefinition of '_NanEscapeScopeHelper'\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:632:27: note: previous definition is here\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Handle<T> val) {\r\n                          ^\r\n../../nan/nan.h:653:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::Undefined(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:641:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:637:27: note: candidate template ignored: substitution failure [with T = v8::Primitive]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:658:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::Null(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:641:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:637:27: note: candidate template ignored: substitution failure [with T = v8::Primitive]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:663:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::True(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:641:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:637:27: note: candidate template ignored: substitution failure [with T = v8::Boolean]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:668:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(v8::False(v8::Isolate::GetCurrent())));\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:641:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:637:27: note: candidate template ignored: substitution failure [with T = v8::Boolean]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:889:13: error: no member named 'smalloc' in namespace 'node'\r\n    , node::smalloc::FreeCallback callback\r\n      ~~~~~~^\r\n../../nan/nan.h:900: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/romeo/.node-gyp/5.1.0/include/node/node_buffer.h:31:40: note: candidate function not viable: no known\r\n      conversion from 'uint32_t' (aka 'unsigned int') to 'enum encoding' for 3rd argument\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\n/Users/romeo/.node-gyp/5.1.0/include/node/node_buffer.h:43:40: note: candidate function not viable: 2nd argument\r\n      ('const char *') would lose const qualifier\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\n/Users/romeo/.node-gyp/5.1.0/include/node/node_buffer.h:28:40: note: candidate function not viable: requires 2\r\n      arguments, but 3 were provided\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate, size_t length);\r\n                                       ^\r\n/Users/romeo/.node-gyp/5.1.0/include/node/node_buffer.h:36:40: note: candidate function not viable: requires 5\r\n      arguments, but 3 were provided\r\nNODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,\r\n                                       ^\r\nIn file included from ../src/Canvas.cc:7:\r\nIn file included from ../src/Canvas.h:22:\r\n../../nan/nan.h:904: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/romeo/.node-gyp/5.1.0/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not\r\n      viable: no known conversion from 'v8::MaybeLocal<v8::Object>' to 'const v8::Local<v8::Object> &' for 1st\r\n      argument\r\nclass Local {\r\n      ^\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not\r\n      viable: no known conversion from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object> &&' for 1st argument\r\nclass Local {\r\n      ^\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local'\r\n      against 'MaybeLocal'\r\n  V8_INLINE Local(Local<S> that)\r\n            ^\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:326:13: note: candidate template ignored: could not match 'S *' against\r\n      'v8::MaybeLocal<v8::Object>'\r\n  V8_INLINE Local(S* that)\r\n            ^\r\nIn file included from ../src/Canvas.cc:7:\r\nIn file included from ../src/Canvas.h:22:\r\n../../nan/nan.h:911: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../../nan/nan.h:1700:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(NanNew(handle)->Get(kCallbackIndex)\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:641:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:637:27: note: candidate template ignored: substitution failure [with T = v8::Function]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:1787:12: error: no matching function for call to '_NanEscapeScopeHelper'\r\n    return NanEscapeScope(handle->Get(NanNew(key)).As<v8::Object>());\r\n           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:641:43: note: expanded from macro 'NanEscapeScope'\r\n# define NanEscapeScope(val) scope.Escape(_NanEscapeScopeHelper(val))\r\n                                          ^~~~~~~~~~~~~~~~~~~~~\r\n../../nan/nan.h:637:27: note: candidate template ignored: substitution failure [with T = v8::Object]\r\n  NAN_INLINE v8::Local<T> _NanEscapeScopeHelper(v8::Local<T> val) {\r\n                          ^\r\n../../nan/nan.h:1993:12: error: no member named 'IsExternalAscii' in 'v8::String'; did you mean 'IsExternal'?\r\n  if (str->IsExternalAscii()) {\r\n           ^~~~~~~~~~~~~~~\r\n           IsExternal\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:2171:8: note: 'IsExternal' declared here\r\n  bool IsExternal() const;\r\n       ^\r\nIn file included from ../src/Canvas.cc:7:\r\nIn file included from ../src/Canvas.h:22:\r\n../../nan/nan.h:1994:23: error: no type named 'ExternalAsciiStringResource' in 'v8::String'; did you mean\r\n      'ExternalStringResource'?\r\n    const v8::String::ExternalAsciiStringResource* ext;\r\n          ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n                      ExternalStringResource\r\n/Users/romeo/.node-gyp/5.1.0/include/node/v8.h:2207:19: note: 'ExternalStringResource' declared here\r\n  class V8_EXPORT ExternalStringResource\r\n                  ^\r\nfatal error: too many errors emitted, stopping now [-ferror-limit=]\r\n20 errors generated.\r\nmake: *** [Release/obj.target/canvas/src/Canvas.o] Error 1\r\ngyp ERR! build error \r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack     at ChildProcess.onExit (/usr/local/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 Darwin 14.5.0\r\ngyp ERR! command \"/usr/local/bin/node\" \"/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /Users/romeo/node_modules/fabric/node_modules/canvas\r\ngyp ERR! node -v v5.1.0\r\ngyp ERR! node-gyp -v v3.0.3\r\ngyp ERR! not ok \r\nnpm WARN install:canvas@1.1.6 canvas@1.1.6 install: `node-gyp rebuild`\r\nnpm WARN install:canvas@1.1.6 Exit status 1\r\nnpm WARN ENOENT ENOENT: no such file or directory, open '/Users/romeo/package.json'\r\nnpm WARN EPACKAGEJSON romeo No description\r\nnpm WARN EPACKAGEJSON romeo No repository field.\r\nnpm WARN EPACKAGEJSON romeo No README data\r\nnpm WARN EPACKAGEJSON romeo No license field.\r\n```"},"comment":{"url":"https://api.github.com/repos/kangax/fabric.js/issues/comments/167425427","html_url":"https://github.com/kangax/fabric.js/issues/2666#issuecomment-167425427","issue_url":"https://api.github.com/repos/kangax/fabric.js/issues/2666","id":167425427,"user":{"login":"kangax","id":383,"avatar_url":"https://avatars.githubusercontent.com/u/383?v=3","gravatar_id":"","url":"https://api.github.com/users/kangax","html_url":"https://github.com/kangax","followers_url":"https://api.github.com/users/kangax/followers","following_url":"https://api.github.com/users/kangax/following{/other_user}","gists_url":"https://api.github.com/users/kangax/gists{/gist_id}","starred_url":"https://api.github.com/users/kangax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kangax/subscriptions","organizations_url":"https://api.github.com/users/kangax/orgs","repos_url":"https://api.github.com/users/kangax/repos","events_url":"https://api.github.com/users/kangax/events{/privacy}","received_events_url":"https://api.github.com/users/kangax/received_events","type":"User","site_admin":false},"created_at":"2015-12-27T16:41:19Z","updated_at":"2015-12-27T16:41:19Z","body":"Duplicate of #2609"}}