nodejs / node

Node.js JavaScript runtime ✨🐢🚀✨
https://nodejs.org
Other
107.78k stars 29.68k forks source link

Native Modules do not work in v10.0.0 #20528

Closed bradennapier closed 6 years ago

bradennapier commented 6 years ago

I also tried this on OSX. Any C++ modules I attempt to install do not work with v10. Changing to 9.11.1 makes them all work again.

nvm install v10.0.0
npm install --save uws

I get a build failure essentially. It appears others have reported this is the case with all C++ modules they have attempted with v10. Makes me surprised no reports of it yet.

gyp info it worked if it ends with ok
gyp info using node-gyp@3.6.2
gyp info using node@10.0.0 | linux | x64
gyp info spawn /usr/bin/python2
gyp info spawn args [ '/home/sal/.nvm/versions/node/v10.0.0/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/sal/v2/source/node_modules/uws/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/sal/.nvm/versions/node/v10.0.0/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/sal/.node-gyp/10.0.0/include/node/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/home/sal/.node-gyp/10.0.0',
gyp info spawn args   '-Dnode_gyp_dir=/home/sal/.nvm/versions/node/v10.0.0/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args   '-Dnode_lib_file=/home/sal/.node-gyp/10.0.0/<(target_arch)/node.lib',
gyp info spawn args   '-Dmodule_root_dir=/home/sal/v2/source/node_modules/uws',
gyp info spawn args   '-Dnode_engine=v8',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.' ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/sal/v2/source/node_modules/uws/build'
  CXX(target) Release/obj.target/uws/src/Extensions.o
  CXX(target) Release/obj.target/uws/src/Group.o
  CXX(target) Release/obj.target/uws/src/Networking.o
  CXX(target) Release/obj.target/uws/src/Hub.o
  CXX(target) Release/obj.target/uws/src/Node.o
  CXX(target) Release/obj.target/uws/src/WebSocket.o
  CXX(target) Release/obj.target/uws/src/HTTPSocket.o
  CXX(target) Release/obj.target/uws/src/Socket.o
  CXX(target) Release/obj.target/uws/src/addon.o
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In lambda function:
../src/addon.h:21:124: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, noop), 0, nullptr);
                                                                                                                            ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In constructor ‘NativeString::NativeString(const v8::Local<v8::Value>&)’:
../src/addon.h:37:70: warning: ‘v8::String::Utf8Value::Utf8Value(v8::Local<v8::Value>)’ is deprecated: Use Isolate version [-Wdeprecated-declarations]
             utf8Value = new (utf8ValueMemory) String::Utf8Value(value);
                                                                      ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/v8.h:26:0,
                 from /home/sal/.node-gyp/10.0.0/include/node/node.h:63,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2822:28: note: declared here
                   explicit Utf8Value(Local<v8::Value> obj));
                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8config.h:318:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In lambda function:
../src/addon.h:341:131: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *errorCallback), 1, argv);
                                                                                                                                   ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:3:0:
../src/http.h: In static member function ‘static void HttpServer::Request::headers(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>&)’:
../src/http.h:31:156: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, unsigned int&)’
                     args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) header.value, String::kNormalString, header.valueLength));
                                                                                                                                                            ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h: In static member function ‘static void HttpServer::Request::method(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>&)’:
../src/http.h:45:128: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "GET", String::kNormalString, 3));
                                                                                                                                ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:48:128: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "PUT", String::kNormalString, 3));
                                                                                                                                ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:51:129: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "POST", String::kNormalString, 4));
                                                                                                                                 ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:54:129: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "HEAD", String::kNormalString, 4));
                                                                                                                                 ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:57:130: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "PATCH", String::kNormalString, 5));
                                                                                                                                  ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:60:130: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "TRACE", String::kNormalString, 5));
                                                                                                                                  ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:63:131: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "DELETE", String::kNormalString, 6));
                                                                                                                                   ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:66:132: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "OPTIONS", String::kNormalString, 7));
                                                                                                                                    ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h:69:132: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate*, uint8_t*, v8::String::NewStringType, int)’
                 args.GetReturnValue().Set(String::NewFromOneByte(args.GetIsolate(), (uint8_t *) "CONNECT", String::kNormalString, 7));
                                                                                                                                    ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h: In static member function ‘static v8::Local<v8::Object> HttpServer::Request::getTemplateObject(v8::Isolate*)’:
../src/http.h:99:89: error: no matching function for call to ‘v8::Function::NewInstance()’
             Local<Object> reqObjectLocal = reqTemplateLocal->GetFunction()->NewInstance();
                                                                                         ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>, int, v8::Local<v8::Value>*) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note:   candidate expects 3 arguments, 0 provided
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note:   candidate expects 1 argument, 0 provided
In file included from ../src/addon.cpp:3:0:
../src/http.h:102:70: warning: ‘void v8::ObjectTemplate::SetNamedPropertyHandler(v8::NamedPropertyGetterCallback, v8::NamedPropertySetterCallback, v8::NamedPropertyQueryCallback, v8::NamedPropertyDeleterCallback, v8::NamedPropertyEnumeratorCallback, v8::Local<v8::Value>)’ is deprecated: Use SetHandler(const NamedPropertyHandlerConfiguration) with the kOnlyInterceptStrings flag set. [-Wdeprecated-declarations]
             headersTemplate->SetNamedPropertyHandler(Request::headers);
                                                                      ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/v8.h:26:0,
                 from /home/sal/.node-gyp/10.0.0/include/node/node.h:63,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:5815:12: note: declared here
       void SetNamedPropertyHandler(
            ^
/home/sal/.node-gyp/10.0.0/include/node/v8config.h:318:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^
In file included from ../src/addon.cpp:3:0:
../src/http.h: In static member function ‘static void HttpServer::Response::writeHead(const v8::FunctionCallbackInfo<v8::Value>&)’:
../src/http.h:149:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                     for (int i = 0; i < headers->Length(); i++) {
                                       ^
../src/http.h: In static member function ‘static v8::Local<v8::Object> HttpServer::Response::getTemplateObject(v8::Isolate*)’:
../src/http.h:196:65: error: no matching function for call to ‘v8::Function::NewInstance()’
             return resTemplateLocal->GetFunction()->NewInstance();
                                                                 ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>, int, v8::Local<v8::Value>*) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note:   candidate expects 3 arguments, 0 provided
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note:   candidate expects 1 argument, 0 provided
In file included from ../src/addon.cpp:3:0:
../src/http.h: In lambda function:
../src/http.h:227:155: error: no matching function for call to ‘v8::String::NewFromOneByte(v8::Isolate* const&, uint8_t*, v8::String::NewStringType, unsigned int)’
             reqObject->SetInternalField(4, String::NewFromOneByte(isolate, (uint8_t *) req.getUrl().value, String::kNormalString, req.getUrl().valueLength));
                                                                                                                                                           ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note: candidate: static v8::MaybeLocal<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::NewStringType, int)
   static V8_WARN_UNUSED_RESULT MaybeLocal<String> NewFromOneByte(
                                                   ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:2736:51: note:   no known conversion for argument 3 from ‘v8::String::NewStringType’ to ‘v8::NewStringType’
In file included from ../src/addon.cpp:3:0:
../src/http.h: In static member function ‘static void HttpServer::createServer(const v8::FunctionCallbackInfo<v8::Value>&)’:
../src/http.h:293:122: error: no matching function for call to ‘v8::Function::NewInstance()’
             args.GetReturnValue().Set(newInstance = Local<Function>::New(args.GetIsolate(), httpPersistent)->NewInstance());
                                                                                                                          ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>, int, v8::Local<v8::Value>*) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note:   candidate expects 3 arguments, 0 provided
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note:   candidate expects 1 argument, 0 provided
In file included from ../src/addon.cpp:3:0:
../src/http.h: In static member function ‘static void HttpServer::getExpressApp(const v8::FunctionCallbackInfo<v8::Value>&)’:
../src/http.h:320:159: error: no matching function for call to ‘v8::Object::SetPrototype(v8::Local<v8::Value>)’
             express->Get(String::NewFromUtf8(isolate, "request"))->ToObject()->SetPrototype(Local<Object>::New(args.GetIsolate(), reqTemplate)->GetPrototype());
                                                                                                                                                               ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3308:37: note: candidate: v8::Maybe<bool> v8::Object::SetPrototype(v8::Local<v8::Context>, v8::Local<v8::Value>)
   V8_WARN_UNUSED_RESULT Maybe<bool> SetPrototype(Local<Context> context,
                                     ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3308:37: note:   candidate expects 2 arguments, 1 provided
In file included from ../src/addon.cpp:3:0:
../src/http.h:321:160: error: no matching function for call to ‘v8::Object::SetPrototype(v8::Local<v8::Value>)’
             express->Get(String::NewFromUtf8(isolate, "response"))->ToObject()->SetPrototype(Local<Object>::New(args.GetIsolate(), resTemplate)->GetPrototype());
                                                                                                                                                                ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3308:37: note: candidate: v8::Maybe<bool> v8::Object::SetPrototype(v8::Local<v8::Context>, v8::Local<v8::Value>)
   V8_WARN_UNUSED_RESULT Maybe<bool> SetPrototype(Local<Context> context,
                                     ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3308:37: note:   candidate expects 2 arguments, 1 provided
In file included from ../src/addon.cpp:3:0:
../src/http.h:327:60: error: no matching function for call to ‘v8::Function::NewInstance()’
             args.GetReturnValue().Set(express->NewInstance());
                                                            ^
In file included from /home/sal/.node-gyp/10.0.0/include/node/node.h:63:0,
                 from ../src/addon.h:1,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>, int, v8::Local<v8::Value>*) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3848:44: note:   candidate expects 3 arguments, 0 provided
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Function::NewInstance(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(
                                            ^
/home/sal/.node-gyp/10.0.0/include/node/v8.h:3851:44: note:   candidate expects 1 argument, 0 provided
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onConnection(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, uWS::HttpRequest)> [with bool isServer = true]’:
../src/addon.h:254:55:   required from ‘struct onConnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]::<lambda(struct uWS::WebSocket<true>*, struct uWS::HttpRequest)>’
../src/addon.h:254:5:   required from ‘void onConnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]’
../src/addon.h:443:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = true]’
../src/addon.cpp:8:88:   required from here
../src/addon.h:258:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *connectionCallback), 1, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onDisconnection(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, int, char*, size_t)> [with bool isServer = true; size_t = long unsigned int]’:
../src/addon.h:319:61:   required from ‘struct onDisconnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]::<lambda(struct uWS::WebSocket<true>*, int, char*, size_t)>’
../src/addon.h:319:5:   required from ‘void onDisconnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]’
../src/addon.h:445:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = true]’
../src/addon.cpp:8:88:   required from here
../src/addon.h:326:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *disconnectionCallback), 4, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onPing(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, const char*, size_t)> [with bool isServer = true; size_t = long unsigned int]’:
../src/addon.h:286:29:   required from ‘struct onPing(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]::<lambda(struct uWS::WebSocket<true>*, const char*, size_t)>’
../src/addon.h:286:5:   required from ‘void onPing(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]’
../src/addon.h:456:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = true]’
../src/addon.cpp:8:88:   required from here
../src/addon.h:290:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *pingCallback), 2, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onPong(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, const char*, size_t)> [with bool isServer = true; size_t = long unsigned int]’:
../src/addon.h:302:29:   required from ‘struct onPong(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]::<lambda(struct uWS::WebSocket<true>*, const char*, size_t)>’
../src/addon.h:302:5:   required from ‘void onPong(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]’
../src/addon.h:457:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = true]’
../src/addon.cpp:8:88:   required from here
../src/addon.h:306:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *pongCallback), 2, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onConnection(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, uWS::HttpRequest)> [with bool isServer = false]’:
../src/addon.h:254:55:   required from ‘struct onConnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]::<lambda(struct uWS::WebSocket<false>*, struct uWS::HttpRequest)>’
../src/addon.h:254:5:   required from ‘void onConnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]’
../src/addon.h:443:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = false]’
../src/addon.cpp:9:88:   required from here
../src/addon.h:258:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *connectionCallback), 1, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onDisconnection(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, int, char*, size_t)> [with bool isServer = false; size_t = long unsigned int]’:
../src/addon.h:319:61:   required from ‘struct onDisconnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]::<lambda(struct uWS::WebSocket<false>*, int, char*, size_t)>’
../src/addon.h:319:5:   required from ‘void onDisconnection(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]’
../src/addon.h:445:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = false]’
../src/addon.cpp:9:88:   required from here
../src/addon.h:326:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *disconnectionCallback), 4, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onPing(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, const char*, size_t)> [with bool isServer = false; size_t = long unsigned int]’:
../src/addon.h:286:29:   required from ‘struct onPing(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]::<lambda(struct uWS::WebSocket<false>*, const char*, size_t)>’
../src/addon.h:286:5:   required from ‘void onPing(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]’
../src/addon.h:456:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = false]’
../src/addon.cpp:9:88:   required from here
../src/addon.h:290:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *pingCallback), 2, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘onPong(const v8::FunctionCallbackInfo<v8::Value>&)::<lambda(uWS::WebSocket<isServer>*, const char*, size_t)> [with bool isServer = false; size_t = long unsigned int]’:
../src/addon.h:302:29:   required from ‘struct onPong(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]::<lambda(struct uWS::WebSocket<false>*, const char*, size_t)>’
../src/addon.h:302:5:   required from ‘void onPong(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]’
../src/addon.h:457:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = false]’
../src/addon.cpp:9:88:   required from here
../src/addon.h:306:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(isolate, isolate->GetCurrentContext()->Global(), Local<Function>::New(isolate, *pongCallback), 2, argv);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘void sendCallback(uWS::WebSocket<isServer>*, void*, bool, void*) [with bool isServer = true]’:
../src/addon.h:179:18:   required from ‘void send(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = true]’
../src/addon.h:435:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = true]’
../src/addon.cpp:8:88:   required from here
../src/addon.h:163:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(sc->isolate, sc->isolate->GetCurrentContext()->Global(), Local<Function>::New(sc->isolate, sc->jsCallback), 0, nullptr);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from ../src/addon.cpp:2:0:
../src/addon.h: In instantiation of ‘void sendCallback(uWS::WebSocket<isServer>*, void*, bool, void*) [with bool isServer = false]’:
../src/addon.h:179:18:   required from ‘void send(const v8::FunctionCallbackInfo<v8::Value>&) [with bool isServer = false]’
../src/addon.h:435:24:   required from ‘Namespace<isServer>::Namespace(v8::Isolate*) [with bool isServer = false]’
../src/addon.cpp:9:88:   required from here
../src/addon.h:163:27: warning: ‘v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
         node::MakeCallback(sc->isolate, sc->isolate->GetCurrentContext()->Global(), Local<Function>::New(sc->isolate, sc->jsCallback), 0, nullptr);
                           ^
In file included from ../src/addon.h:1:0,
                 from ../src/addon.cpp:2:
/home/sal/.node-gyp/10.0.0/include/node/node.h:172:50: note: declared here
                 NODE_EXTERN v8::Local<v8::Value> MakeCallback(
                                                  ^
/home/sal/.node-gyp/10.0.0/include/node/node.h:88:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
uws.target.mk:100: recipe for target 'Release/obj.target/uws/src/addon.o' failed
make: *** [Release/obj.target/uws/src/addon.o] Error 1
make: Leaving directory '/home/sal/v2/source/node_modules/uws/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/sal/.nvm/versions/node/v10.0.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at ChildProcess.emit (events.js:182:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:225:12)
gyp ERR! System Linux 4.4.0-1055-aws
gyp ERR! command "/home/sal/.nvm/versions/node/v10.0.0/bin/node" "/home/sal/.nvm/versions/node/v10.0.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/sal/v2/source/node_modules/uws
gyp ERR! node -v v10.0.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
bradennapier commented 6 years ago

https://github.com/uNetworking/uWebSockets-bindings/pull/2