Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V8 plugin fails to build with recent libv8 source #430

Open
jonassmedegaard opened this issue Dec 27, 2018 · 10 comments
Open

V8 plugin fails to build with recent libv8 source #430

jonassmedegaard opened this issue Dec 27, 2018 · 10 comments

Comments

@jonassmedegaard
Copy link

Hi,

the v8 plugin succesfully builds with the libv8 3.14 as shipped in Debian for some years.
If fails to build with newer libv8 howver. E.g. fails like this with libv8 6.2 (as shipped with Debian in package nodejs-dev 8.11.2~dfsg-1):

CFLAGS=-I/usr/include/nodejs/deps/v8/include \
uwsgi --build-plugin /usr/src/uwsgi/plugins/v8
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::SetAllowCodeGenerationFromStringsCallback(v8::DeprecatedAllowCodeGenerationFromStringsCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10230:19: warning: cast between incompatible function types from 'v8::DeprecatedAllowCodeGenerationFromStringsCallback' {aka 'bool (*)(v8::Local<v8::Context>)'} to 'v8::FreshNewAllowCodeGenerationFromStringsCallback' {aka 'bool (*)(v8::Local<v8::Context>, v8::Local<v8::String>)'} [-Wcast-function-type]
           callback));
                   ^
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::RemoveGCPrologueCallback(v8::GCCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10275:53: warning: cast between incompatible function types from 'v8::GCCallback' {aka 'void (*)(v8::GCType, v8::GCCallbackFlags)'} to 'v8::Isolate::GCCallback' {aka 'void (*)(v8::Isolate*, v8::GCType, v8::GCCallbackFlags)'} [-Wcast-function-type]
       reinterpret_cast<Isolate::GCCallback>(callback));
                                                     ^
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::RemoveGCEpilogueCallback(v8::GCCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10282:53: warning: cast between incompatible function types from 'v8::GCCallback' {aka 'void (*)(v8::GCType, v8::GCCallbackFlags)'} to 'v8::Isolate::GCCallback' {aka 'void (*)(v8::Isolate*, v8::GCType, v8::GCCallbackFlags)'} [-Wcast-function-type]
       reinterpret_cast<Isolate::GCCallback>(callback));
                                                     ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: At global scope:
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:17:69: error: 'Arguments' in namespace 'v8' does not name a type
 static v8::Handle<v8::Value> uwsgi_v8_api_register_signal(const v8::Arguments& args) {
                                                                     ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'v8::Handle<v8::Value> uwsgi_v8_api_register_signal(const int&)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:19:18: error: request for member 'Length' in 'args', which is of non-class type 'const int'
         if (args.Length() > 2) {
                  ^~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:20:32: error: invalid types 'const int[int]' for array subscript
   uint8_t uwsgi_signal = args[0]->Uint32Value();
                                ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:21:43: error: invalid types 'const int[int]' for array subscript
   v8::String::Utf8Value signal_kind(args[1]->ToString());
                                           ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:23:110: error: invalid types 'const int[int]' for array subscript
   v8::Persistent<v8::Function> func = v8::Persistent<v8::Function>::New(v8::Handle<v8::Function>::Cast(args[2]));
                                                                                                              ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:36:20: error: too few arguments to function 'v8::Local<v8::Boolean> v8::True(v8::Isolate*)'
    return v8::True();
                    ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10150:16: note: declared here
 Local<Boolean> True(Isolate* isolate) {
                ^~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:41:25: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
    return v8::Undefined();
                         ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:45:19: error: too few arguments to function 'v8::Local<v8::Boolean> v8::True(v8::Isolate*)'
   return v8::True();
                   ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10150:16: note: declared here
 Local<Boolean> True(Isolate* isolate) {
                ^~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:48:30: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
         return v8::Undefined();
                              ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: At global scope:
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:51:66: error: 'Arguments' in namespace 'v8' does not name a type
 static v8::Handle<v8::Value> uwsgi_v8_api_register_rpc(const v8::Arguments& args) {
                                                                  ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'v8::Handle<v8::Value> uwsgi_v8_api_register_rpc(const int&)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:53:18: error: request for member 'Length' in 'args', which is of non-class type 'const int'
         if (args.Length() > 1) {
                  ^~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:54:36: error: invalid types 'const int[int]' for array subscript
   v8::String::Utf8Value name(args[0]->ToString());
                                    ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:56:12: error: request for member 'Length' in 'args', which is of non-class type 'const int'
   if (args.Length() > 2) {
            ^~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:57:19: error: invalid types 'const int[int]' for array subscript
    j_argc = args[2]->Uint32Value();
                   ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:60:110: error: invalid types 'const int[int]' for array subscript
   v8::Persistent<v8::Function> func = v8::Persistent<v8::Function>::New(v8::Handle<v8::Function>::Cast(args[1]));
                                                                                                              ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:77:21: error: too few arguments to function 'v8::Local<v8::Boolean> v8::True(v8::Isolate*)'
     return v8::True();
                     ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10150:16: note: declared here
 Local<Boolean> True(Isolate* isolate) {
                ^~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:82:46: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
                         return v8::Undefined();
                                              ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:90:25: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
    return v8::Undefined();
                         ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:93:19: error: too few arguments to function 'v8::Local<v8::Boolean> v8::True(v8::Isolate*)'
   return v8::True();
                   ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10150:16: note: declared here
 Local<Boolean> True(Isolate* isolate) {
                ^~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:96:30: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
         return v8::Undefined();
                              ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'void uwsgi_v8_load_file(int, char*)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:102:23: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
  uv8.contexts[core_id]->Enter();
                       ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:103:18: error: 'v8::HandleScope::HandleScope()' is protected within this context
  v8::HandleScope handle_scope;
                  ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:109:74: error: 'New' is not a member of 'v8::String'
         v8::Handle<v8::Script> script = v8::Script::Compile( v8::String::New(code), v8::String::New(filename) );
                                                                          ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:109:97: error: 'New' is not a member of 'v8::String'
         v8::Handle<v8::Script> script = v8::Script::Compile( v8::String::New(code), v8::String::New(filename) );
                                                                                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: At global scope:
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:122:57: error: 'Arguments' in namespace 'v8' does not name a type
 static v8::Handle<v8::Value> uwsgi_v8_api_log(const v8::Arguments& args) {
                                                         ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'v8::Handle<v8::Value> uwsgi_v8_api_log(const int&)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:124:18: error: request for member 'Length' in 'args', which is of non-class type 'const int'
         if (args.Length() > 0) {
                  ^~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:125:49: error: invalid types 'const int[int]' for array subscript
                 v8::String::Utf8Value str(args[0]->ToString());
                                                 ^
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:134:30: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
         return v8::Undefined();
                              ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'v8::Persistent<v8::Context> uwsgi_v8_new_isolate(int)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:141:49: error: no matching function for call to 'v8::Isolate::New()'
         v8::Isolate *isolate = v8::Isolate::New();
                                                 ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:6979:19: note: candidate: 'static v8::Isolate* v8::Isolate::New(const v8::Isolate::CreateParams&)'
   static Isolate* New(const CreateParams& params);
                   ^~~
/usr/include/nodejs/deps/v8/include/v8.h:6979:19: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:148:9: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
  context->Enter();
         ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:150:18: error: 'v8::HandleScope::HandleScope()' is protected within this context
  v8::HandleScope handle_scope;
                  ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:153:60: error: no matching function for call to 'v8::Object::New()'
         v8::Handle<v8::Object> uwsgi_api = v8::Object::New();
                                                            ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:154:36: error: 'New' is not a member of 'v8::String'
         uwsgi_api->Set(v8::String::New("log"), v8::FunctionTemplate::New(uwsgi_v8_api_log)->GetFunction());
                                    ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:154:90: error: no matching function for call to 'v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))'
         uwsgi_api->Set(v8::String::New("log"), v8::FunctionTemplate::New(uwsgi_v8_api_log)->GetFunction());
                                                                                          ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note: candidate: 'static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Local<v8::Value>, v8::Local<v8::Signature>, int, v8::ConstructorBehavior)'
   static Local<FunctionTemplate> New(
                                  ^~~
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note:   no known conversion for argument 1 from 'v8::Handle<v8::Value>(const int&)' {aka 'v8::Local<v8::Value>(const int&)'} to 'v8::Isolate*'
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:155:36: error: 'New' is not a member of 'v8::String'
         uwsgi_api->Set(v8::String::New("register_rpc"), v8::FunctionTemplate::New(uwsgi_v8_api_register_rpc)->GetFunction());
                                    ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:155:108: error: no matching function for call to 'v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))'
         uwsgi_api->Set(v8::String::New("register_rpc"), v8::FunctionTemplate::New(uwsgi_v8_api_register_rpc)->GetFunction());
                                                                                                            ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note: candidate: 'static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Local<v8::Value>, v8::Local<v8::Signature>, int, v8::ConstructorBehavior)'
   static Local<FunctionTemplate> New(
                                  ^~~
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note:   no known conversion for argument 1 from 'v8::Handle<v8::Value>(const int&)' {aka 'v8::Local<v8::Value>(const int&)'} to 'v8::Isolate*'
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:156:36: error: 'New' is not a member of 'v8::String'
         uwsgi_api->Set(v8::String::New("register_signal"), v8::FunctionTemplate::New(uwsgi_v8_api_register_signal)->GetFunction());
                                    ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:156:114: error: no matching function for call to 'v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))'
         uwsgi_api->Set(v8::String::New("register_signal"), v8::FunctionTemplate::New(uwsgi_v8_api_register_signal)->GetFunction());
                                                                                                                  ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note: candidate: 'static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Local<v8::Value>, v8::Local<v8::Signature>, int, v8::ConstructorBehavior)'
   static Local<FunctionTemplate> New(
                                  ^~~
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note:   no known conversion for argument 1 from 'v8::Handle<v8::Value>(const int&)' {aka 'v8::Local<v8::Value>(const int&)'} to 'v8::Isolate*'
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:158:16: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         context->Global()->Set(v8::String::New("uwsgi"), uwsgi_api);
                ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:158:44: error: 'New' is not a member of 'v8::String'
         context->Global()->Set(v8::String::New("uwsgi"), uwsgi_api);
                                            ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'void uwsgi_v8_configurator(char*, char**)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:206:18: error: 'v8::HandleScope::HandleScope()' is protected within this context
  v8::HandleScope handle_scope;
                  ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:213:53: error: no matching function for call to 'v8::Context::New()'
  v8::Handle<v8::Context> context = v8::Context::New();
                                                     ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:8532:25: note: candidate: 'static v8::Local<v8::Context> v8::Context::New(v8::Isolate*, v8::ExtensionConfiguration*, v8::MaybeLocal<v8::ObjectTemplate>, v8::MaybeLocal<v8::Value>)'
   static Local<Context> New(
                         ^~~
/usr/include/nodejs/deps/v8/include/v8.h:8532:25: note:   candidate expects 4 arguments, 0 provided
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:219:67: error: 'New' is not a member of 'v8::String'
  v8::Handle<v8::Script> script = v8::Script::Compile( v8::String::New(code), v8::String::New(filename) );
                                                                   ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:219:90: error: 'New' is not a member of 'v8::String'
  v8::Handle<v8::Script> script = v8::Script::Compile( v8::String::New(code), v8::String::New(filename) );
                                                                                          ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:244:56: error: 'New' is not a member of 'v8::String'
    uint32_t opt_l = value->ToObject()->Get(v8::String::New("length"))->ToObject()->Uint32Value();
                                                        ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'uint64_t uwsgi_v8_rpc(void*, uint8_t, char**, uint16_t*, char**)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:264:23: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
  uv8.contexts[core_id]->Enter();
                       ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:265:18: error: 'v8::HandleScope::HandleScope()' is protected within this context
  v8::HandleScope handle_scope;
                  ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:272:25: error: 'New' is not a member of 'v8::String'
   argj[i] = v8::String::New(argv[i], argvs[i]);
                         ^~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:277:39: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Function>'
  v8::Handle<v8::Value> result = l_func->Call(uv8.contexts[core_id]->Global(), argc, argj);
                                       ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:277:67: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
  v8::Handle<v8::Value> result = l_func->Call(uv8.contexts[core_id]->Global(), argc, argj);
                                                                   ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:294:17: error: 'IdleNotification' is not a member of 'v8::V8'
  while(!v8::V8::IdleNotification()) {};
                 ^~~~~~~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc: In function 'int uwsgi_v8_signal_handler(uint8_t, void*)':
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:313:30: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         uv8.contexts[core_id]->Enter();
                              ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:314:25: error: 'v8::HandleScope::HandleScope()' is protected within this context
         v8::HandleScope handle_scope;
                         ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:316:31: error: no matching function for call to 'v8::Number::New(uint8_t&)'
  argj[0] = v8::Number::New(sig);
                               ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:2916:24: note: candidate: 'static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)'
   static Local<Number> New(Isolate* isolate, double value);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:2916:24: note:   candidate expects 2 arguments, 1 provided
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:319:39: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Function>'
  v8::Handle<v8::Value> result = l_func->Call(uv8.contexts[core_id]->Global(), 1, argj);
                                       ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:319:67: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
  v8::Handle<v8::Value> result = l_func->Call(uv8.contexts[core_id]->Global(), 1, argj);
                                                                   ^~
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:321:17: error: 'IdleNotification' is not a member of 'v8::V8'
  while(!v8::V8::IdleNotification()) {};
                 ^~~~~~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h: In instantiation of 'static void v8::NonCopyablePersistentTraits<T>::Uncompilable() [with O = v8::Object; T = v8::Function]':
/usr/include/nodejs/deps/v8/include/v8.h:644:25:   required from 'static void v8::NonCopyablePersistentTraits<T>::Copy(const v8::Persistent<S, M>&, v8::NonCopyablePersistentTraits<T>::NonCopyablePersistent*) [with S = v8::Function; M = v8::NonCopyablePersistentTraits<v8::Function>; T = v8::Function; v8::NonCopyablePersistentTraits<T>::NonCopyablePersistent = v8::Persistent<v8::Function>]'
/usr/include/nodejs/deps/v8/include/v8.h:9184:10:   required from 'void v8::Persistent<T, M>::Copy(const v8::Persistent<S, M>&) [with S = v8::Function; M2 = v8::NonCopyablePersistentTraits<v8::Function>; T = v8::Function; M = v8::NonCopyablePersistentTraits<v8::Function>]'
/usr/include/nodejs/deps/v8/include/v8.h:717:5:   required from 'v8::Persistent<T, M>& v8::Persistent<T, M>::operator=(const v8::Persistent<T, M>&) [with T = v8::Function; M = v8::NonCopyablePersistentTraits<v8::Function>]'
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:33:25:   required from here
/usr/include/nodejs/deps/v8/include/v8.h:162:37: error: cannot convert 'v8::Primitive*' to 'v8::Object* volatile' in assignment
     *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h:648:5: note: in expansion of macro 'TYPE_CHECK'
     TYPE_CHECK(O, Primitive);
     ^~~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h: In instantiation of 'static void v8::NonCopyablePersistentTraits<T>::Uncompilable() [with O = v8::Object; T = v8::Context]':
/usr/include/nodejs/deps/v8/include/v8.h:644:25:   required from 'static void v8::NonCopyablePersistentTraits<T>::Copy(const v8::Persistent<S, M>&, v8::NonCopyablePersistentTraits<T>::NonCopyablePersistent*) [with S = v8::Context; M = v8::NonCopyablePersistentTraits<v8::Context>; T = v8::Context; v8::NonCopyablePersistentTraits<T>::NonCopyablePersistent = v8::Persistent<v8::Context>]'
/usr/include/nodejs/deps/v8/include/v8.h:9184:10:   required from 'void v8::Persistent<T, M>::Copy(const v8::Persistent<S, M>&) [with S = v8::Context; M2 = v8::NonCopyablePersistentTraits<v8::Context>; T = v8::Context; M = v8::NonCopyablePersistentTraits<v8::Context>]'
/usr/include/nodejs/deps/v8/include/v8.h:710:5:   required from 'v8::Persistent<T, M>::Persistent(const v8::Persistent<T, M>&) [with T = v8::Context; M = v8::NonCopyablePersistentTraits<v8::Context>]'
/usr/src/uwsgi/plugins/v8/v8_uwsgi.cc:147:63:   required from here
/usr/include/nodejs/deps/v8/include/v8.h:162:37: error: cannot convert 'v8::Primitive*' to 'v8::Object* volatile' in assignment
     *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h:648:5: note: in expansion of macro 'TYPE_CHECK'
     TYPE_CHECK(O, Primitive);
     ^~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::SetAllowCodeGenerationFromStringsCallback(v8::DeprecatedAllowCodeGenerationFromStringsCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10230:19: warning: cast between incompatible function types from 'v8::DeprecatedAllowCodeGenerationFromStringsCallback' {aka 'bool (*)(v8::Local<v8::Context>)'} to 'v8::FreshNewAllowCodeGenerationFromStringsCallback' {aka 'bool (*)(v8::Local<v8::Context>, v8::Local<v8::String>)'} [-Wcast-function-type]
           callback));
                   ^
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::RemoveGCPrologueCallback(v8::GCCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10275:53: warning: cast between incompatible function types from 'v8::GCCallback' {aka 'void (*)(v8::GCType, v8::GCCallbackFlags)'} to 'v8::Isolate::GCCallback' {aka 'void (*)(v8::Isolate*, v8::GCType, v8::GCCallbackFlags)'} [-Wcast-function-type]
       reinterpret_cast<Isolate::GCCallback>(callback));
                                                     ^
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::RemoveGCEpilogueCallback(v8::GCCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10282:53: warning: cast between incompatible function types from 'v8::GCCallback' {aka 'void (*)(v8::GCType, v8::GCCallbackFlags)'} to 'v8::Isolate::GCCallback' {aka 'void (*)(v8::Isolate*, v8::GCType, v8::GCCallbackFlags)'} [-Wcast-function-type]
       reinterpret_cast<Isolate::GCCallback>(callback));
                                                     ^
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc: At global scope:
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:46:69: error: 'Arguments' in namespace 'v8' does not name a type
 static v8::Handle < v8::Value > uwsgi_v8_commonjs_require(const v8::Arguments &);
                                                                     ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc: In function 'v8::Persistent<v8::Context> uwsgi_v8_setup_context()':
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:55:18: error: 'v8::HandleScope::HandleScope()' is protected within this context
  v8::HandleScope handle_scope;
                  ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:69:64: error: no matching function for call to 'v8::Context::New()'
         v8::Persistent<v8::Context> context = v8::Context::New();
                                                                ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:8532:25: note: candidate: 'static v8::Local<v8::Context> v8::Context::New(v8::Isolate*, v8::ExtensionConfiguration*, v8::MaybeLocal<v8::ObjectTemplate>, v8::MaybeLocal<v8::Value>)'
   static Local<Context> New(
                         ^~~
/usr/include/nodejs/deps/v8/include/v8.h:8532:25: note:   candidate expects 4 arguments, 0 provided
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:70:16: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         context->Enter();
                ^~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:72:48: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         v8::Handle<v8::Object> global = context->Global();
                                                ^~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:74:60: error: no matching function for call to 'v8::Object::New()'
         v8::Handle < v8::Object > system = v8::Object::New();
                                                            ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:75:56: error: no matching function for call to 'v8::Array::New()'
         v8::Handle < v8::Array > args = v8::Array::New();
                                                        ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3524:23: note: candidate: 'static v8::Local<v8::Array> v8::Array::New(v8::Isolate*, int)'
   static Local<Array> New(Isolate* isolate, int length = 0);
                       ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3524:23: note:   candidate expects 2 arguments, 0 provided
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:78:45: error: no matching function for call to 'v8::Integer::New(int&)'
                 args->Set(v8::Integer::New(i), v8::String::New(uwsgi.argv[i]));
                                             ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:2929:25: note: candidate: 'static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)'
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^~~
/usr/include/nodejs/deps/v8/include/v8.h:2929:25: note:   candidate expects 2 arguments, 1 provided
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:78:60: error: 'New' is not a member of 'v8::String'
                 args->Set(v8::Integer::New(i), v8::String::New(uwsgi.argv[i]));
                                                            ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:80:33: error: 'New' is not a member of 'v8::String'
         system->Set(v8::String::New("args"), args);
                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:81:57: error: no matching function for call to 'v8::Object::New()'
         v8::Handle < v8::Object > env = v8::Object::New();
                                                         ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:82:33: error: 'New' is not a member of 'v8::String'
         system->Set(v8::String::New("env"), env);
                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:83:33: error: 'New' is not a member of 'v8::String'
         global->Set(v8::String::New("require"), v8::FunctionTemplate::New(uwsgi_v8_commonjs_require)->GetFunction());
                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:83:100: error: no matching function for call to 'v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))'
         global->Set(v8::String::New("require"), v8::FunctionTemplate::New(uwsgi_v8_commonjs_require)->GetFunction());
                                                                                                    ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note: candidate: 'static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Local<v8::Value>, v8::Local<v8::Signature>, int, v8::ConstructorBehavior)'
   static Local<FunctionTemplate> New(
                                  ^~~
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note:   no known conversion for argument 1 from 'v8::Handle<v8::Value>(const int&)' {aka 'v8::Local<v8::Value>(const int&)'} to 'v8::Isolate*'
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:84:33: error: 'New' is not a member of 'v8::String'
         global->Set(v8::String::New("system"), system);
                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc: In function 'v8::Handle<v8::Value> uwsgi_v8_commonjs_require_do(char*)':
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:101:53: error: no matching function for call to 'v8::Object::New()'
  v8::Local < v8::Object > exports = v8::Object::New();
                                                     ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:102:15: error: 'GetCurrent' is not a member of 'v8::Context'
  v8::Context::GetCurrent()->Global()->Set(v8::String::New("exports"), exports);
               ^~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:102:55: error: 'New' is not a member of 'v8::String'
  v8::Context::GetCurrent()->Global()->Set(v8::String::New("exports"), exports);
                                                       ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:105:69: error: 'New' is not a member of 'v8::String'
  v8::Handle < v8::Script > script = v8::Script::Compile(v8::String::New(code), v8::String::New(filename));
                                                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:105:92: error: 'New' is not a member of 'v8::String'
  v8::Handle < v8::Script > script = v8::Script::Compile(v8::String::New(code), v8::String::New(filename));
                                                                                            ^~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:113:24: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
   return v8::Undefined();
                        ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc: At global scope:
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:119:69: error: 'Arguments' in namespace 'v8' does not name a type
 static v8::Handle < v8::Value > uwsgi_v8_commonjs_require(const v8::Arguments & args) {
                                                                     ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc: In function 'v8::Handle<v8::Value> uwsgi_v8_commonjs_require(const int&)':
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:120:11: error: request for member 'Length' in 'args', which is of non-class type 'const int'
  if (args.Length() > 0) {
           ^~~~~~
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:121:43: error: invalid types 'const int[int]' for array subscript
   v8::String::Utf8Value module_name(args[0]->ToString());
                                           ^
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:160:23: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
  return v8::Undefined();
                       ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_commonjs.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h: In instantiation of 'static void v8::NonCopyablePersistentTraits<T>::Uncompilable() [with O = v8::Object; T = v8::Context]':
/usr/include/nodejs/deps/v8/include/v8.h:644:25:   required from 'static void v8::NonCopyablePersistentTraits<T>::Copy(const v8::Persistent<S, M>&, v8::NonCopyablePersistentTraits<T>::NonCopyablePersistent*) [with S = v8::Context; M = v8::NonCopyablePersistentTraits<v8::Context>; T = v8::Context; v8::NonCopyablePersistentTraits<T>::NonCopyablePersistent = v8::Persistent<v8::Context>]'
/usr/include/nodejs/deps/v8/include/v8.h:9184:10:   required from 'void v8::Persistent<T, M>::Copy(const v8::Persistent<S, M>&) [with S = v8::Context; M2 = v8::NonCopyablePersistentTraits<v8::Context>; T = v8::Context; M = v8::NonCopyablePersistentTraits<v8::Context>]'
/usr/include/nodejs/deps/v8/include/v8.h:710:5:   required from 'v8::Persistent<T, M>::Persistent(const v8::Persistent<T, M>&) [with T = v8::Context; M = v8::NonCopyablePersistentTraits<v8::Context>]'
/usr/src/uwsgi/plugins/v8/v8_commonjs.cc:85:16:   required from here
/usr/include/nodejs/deps/v8/include/v8.h:162:37: error: cannot convert 'v8::Primitive*' to 'v8::Object* volatile' in assignment
     *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h:648:5: note: in expansion of macro 'TYPE_CHECK'
     TYPE_CHECK(O, Primitive);
     ^~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::SetAllowCodeGenerationFromStringsCallback(v8::DeprecatedAllowCodeGenerationFromStringsCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10230:19: warning: cast between incompatible function types from 'v8::DeprecatedAllowCodeGenerationFromStringsCallback' {aka 'bool (*)(v8::Local<v8::Context>)'} to 'v8::FreshNewAllowCodeGenerationFromStringsCallback' {aka 'bool (*)(v8::Local<v8::Context>, v8::Local<v8::String>)'} [-Wcast-function-type]
           callback));
                   ^
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::RemoveGCPrologueCallback(v8::GCCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10275:53: warning: cast between incompatible function types from 'v8::GCCallback' {aka 'void (*)(v8::GCType, v8::GCCallbackFlags)'} to 'v8::Isolate::GCCallback' {aka 'void (*)(v8::Isolate*, v8::GCType, v8::GCCallbackFlags)'} [-Wcast-function-type]
       reinterpret_cast<Isolate::GCCallback>(callback));
                                                     ^
/usr/include/nodejs/deps/v8/include/v8.h: In static member function 'static void v8::V8::RemoveGCEpilogueCallback(v8::GCCallback)':
/usr/include/nodejs/deps/v8/include/v8.h:10282:53: warning: cast between incompatible function types from 'v8::GCCallback' {aka 'void (*)(v8::GCType, v8::GCCallbackFlags)'} to 'v8::Isolate::GCCallback' {aka 'void (*)(v8::Isolate*, v8::GCType, v8::GCCallbackFlags)'} [-Wcast-function-type]
       reinterpret_cast<Isolate::GCCallback>(callback));
                                                     ^
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc: At global scope:
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:6:65: error: 'Arguments' in namespace 'v8' does not name a type
 static v8::Handle<v8::Value> uwsgi_v8_jsgi_body_chunk(const v8::Arguments& args) {
                                                                 ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc: In function 'v8::Handle<v8::Value> uwsgi_v8_jsgi_body_chunk(const int&)':
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:8:18: error: request for member 'Length' in 'args', which is of non-class type 'const int'
         if (args.Length() > 1) {
                  ^~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:9:51: error: invalid types 'const int[int]' for array subscript
                 v8::String::Utf8Value chunk(args[0]->ToString());
                                                   ^
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:13:60: error: invalid types 'const int[int]' for array subscript
   if (uwsgi_response_write_body_do(wsgi_req, *chunk, args[0]->ToString()->Length())) {
                                                            ^
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:14:15: error: 'ThrowException' is not a member of 'v8'
    return v8::ThrowException(v8::Exception::Error(v8::String::New("unable to send JSGI body")));
               ^~~~~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:14:15: note: suggested alternative: 'Exception'
    return v8::ThrowException(v8::Exception::Error(v8::String::New("unable to send JSGI body")));
               ^~~~~~~~~~~~~~
               Exception
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:14:63: error: 'New' is not a member of 'v8::String'
    return v8::ThrowException(v8::Exception::Error(v8::String::New("unable to send JSGI body")));
                                                               ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:18:30: error: too few arguments to function 'v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)'
         return v8::Undefined();
                              ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:313:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc: In function 'void uwsgi_v8_jsgi_fill_request(wsgi_request*, v8::Handle<v8::Object>)':
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:22:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("method"), v8::String::New(wsgi_req->method, wsgi_req->method_len));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:22:48: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("method"), v8::String::New(wsgi_req->method, wsgi_req->method_len));
                                                ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:23:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("scriptName"), v8::String::New(wsgi_req->script_name, wsgi_req->script_name_len));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:23:52: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("scriptName"), v8::String::New(wsgi_req->script_name, wsgi_req->script_name_len));
                                                    ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:24:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("pathInfo"), v8::String::New(wsgi_req->path_info, wsgi_req->path_info_len));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:24:50: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("pathInfo"), v8::String::New(wsgi_req->path_info, wsgi_req->path_info_len));
                                                  ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:25:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("queryString"), v8::String::New(wsgi_req->query_string, wsgi_req->query_string_len));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:25:53: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("queryString"), v8::String::New(wsgi_req->query_string, wsgi_req->query_string_len));
                                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:26:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("host"), v8::String::New(wsgi_req->host, wsgi_req->host_len));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:26:46: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("host"), v8::String::New(wsgi_req->host, wsgi_req->host_len));
                                              ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:28:22: error: 'New' is not a member of 'v8::String'
   o->Set(v8::String::New("scheme"), v8::String::New(wsgi_req->scheme, wsgi_req->scheme_len));
                      ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:28:49: error: 'New' is not a member of 'v8::String'
   o->Set(v8::String::New("scheme"), v8::String::New(wsgi_req->scheme, wsgi_req->scheme_len));
                                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:31:22: error: 'New' is not a member of 'v8::String'
   o->Set(v8::String::New("scheme"), v8::String::New("http"));
                      ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:31:49: error: 'New' is not a member of 'v8::String'
   o->Set(v8::String::New("scheme"), v8::String::New("http"));
                                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:33:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("remoteAddr"), v8::String::New(wsgi_req->remote_addr, wsgi_req->remote_addr_len));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:33:52: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("remoteAddr"), v8::String::New(wsgi_req->remote_addr, wsgi_req->remote_addr_len));
                                                    ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:35:22: error: 'New' is not a member of 'v8::String'
   o->Set(v8::String::New("remoteUser"), v8::String::New(wsgi_req->remote_user, wsgi_req->remote_user_len));
                      ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:35:53: error: 'New' is not a member of 'v8::String'
   o->Set(v8::String::New("remoteUser"), v8::String::New(wsgi_req->remote_user, wsgi_req->remote_user_len));
                                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:37:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("serverSoftware"), v8::String::New("uWSGI " UWSGI_VERSION));
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:37:56: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("serverSoftware"), v8::String::New("uWSGI " UWSGI_VERSION));
                                                        ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:39:47: error: no matching function for call to 'v8::Object::New()'
  v8::Handle<v8::Value> jsgi = v8::Object::New();
                                               ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:41:37: error: 'New' is not a member of 'v8::String'
   jsgi->ToObject()->Set(v8::String::New("multithread"), v8::True());
                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:41:66: error: too few arguments to function 'v8::Local<v8::Boolean> v8::True(v8::Isolate*)'
   jsgi->ToObject()->Set(v8::String::New("multithread"), v8::True());
                                                                  ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10150:16: note: declared here
 Local<Boolean> True(Isolate* isolate) {
                ^~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:44:37: error: 'New' is not a member of 'v8::String'
   jsgi->ToObject()->Set(v8::String::New("multithread"), v8::False());
                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:44:67: error: too few arguments to function 'v8::Local<v8::Boolean> v8::False(v8::Isolate*)'
   jsgi->ToObject()->Set(v8::String::New("multithread"), v8::False());
                                                                   ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10159:16: note: declared here
 Local<Boolean> False(Isolate* isolate) {
                ^~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:48:37: error: 'New' is not a member of 'v8::String'
   jsgi->ToObject()->Set(v8::String::New("multiprocess"), v8::True());
                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:48:67: error: too few arguments to function 'v8::Local<v8::Boolean> v8::True(v8::Isolate*)'
   jsgi->ToObject()->Set(v8::String::New("multiprocess"), v8::True());
                                                                   ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10150:16: note: declared here
 Local<Boolean> True(Isolate* isolate) {
                ^~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:51:37: error: 'New' is not a member of 'v8::String'
   jsgi->ToObject()->Set(v8::String::New("multiprocess"), v8::False());
                                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:51:68: error: too few arguments to function 'v8::Local<v8::Boolean> v8::False(v8::Isolate*)'
   jsgi->ToObject()->Set(v8::String::New("multiprocess"), v8::False());
                                                                    ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:10159:16: note: declared here
 Local<Boolean> False(Isolate* isolate) {
                ^~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:53:21: error: 'New' is not a member of 'v8::String'
  o->Set(v8::String::New("jsgi"), jsgi);
                     ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc: In function 'int uwsgi_v8_request(wsgi_request*)':
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:77:30: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         uv8.contexts[core_id]->Enter();
                              ^~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:78:25: error: 'v8::HandleScope::HandleScope()' is protected within this context
         v8::HandleScope handle_scope;
                         ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:80:35: error: no matching function for call to 'v8::Object::New()'
         argj[0] = v8::Object::New();
                                   ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:82:62: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Function>'
         v8::Handle<v8::Value> result = uv8.jsgi_func[core_id]->Call(uv8.contexts[core_id]->Global(), 1, argj);
                                                              ^~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:82:90: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         v8::Handle<v8::Value> result = uv8.jsgi_func[core_id]->Call(uv8.contexts[core_id]->Global(), 1, argj);
                                                                                          ^~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:86:47: error: 'New' is not a member of 'v8::String'
  status = result->ToObject()->Get(v8::String::New("status"));
                                               ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:91:48: error: 'New' is not a member of 'v8::String'
  headers = result->ToObject()->Get(v8::String::New("headers"));
                                                ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:96:45: error: 'New' is not a member of 'v8::String'
  body = result->ToObject()->Get(v8::String::New("body"));
                                             ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:116:77: error: 'New' is not a member of 'v8::String'
                         uint32_t opt_l = value->ToObject()->Get(v8::String::New("length"))->ToObject()->Uint32Value();
                                                                             ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:130:77: error: 'New' is not a member of 'v8::String'
  forEach = v8::Handle<v8::Function>::Cast(body->ToObject()->Get(v8::String::New("forEach")));
                                                                             ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:131:40: error: no match for 'operator=' (operand types are 'v8::Handle<v8::Value>' {aka 'v8::Local<v8::Value>'} and 'v8::Persistent<v8::Function>')
  argj[0] = uv8.jsgi_writer_func[core_id];
                                        ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:197:7: note: candidate: 'constexpr v8::Local<v8::Value>& v8::Local<v8::Value>::operator=(const v8::Local<v8::Value>&)'
 class Local {
       ^~~~~
/usr/include/nodejs/deps/v8/include/v8.h:197:7: note:   no known conversion for argument 1 from 'v8::Persistent<v8::Function>' to 'const v8::Local<v8::Value>&'
/usr/include/nodejs/deps/v8/include/v8.h:197:7: note: candidate: 'constexpr v8::Local<v8::Value>& v8::Local<v8::Value>::operator=(v8::Local<v8::Value>&&)'
/usr/include/nodejs/deps/v8/include/v8.h:197:7: note:   no known conversion for argument 1 from 'v8::Persistent<v8::Function>' to 'v8::Local<v8::Value>&&'
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:135:24: error: 'IdleNotification' is not a member of 'v8::V8'
         while(!v8::V8::IdleNotification()) {};
                        ^~~~~~~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc: In function 'v8::Persistent<v8::Function> uwsgi_v8_load_jsgi(int, char*)':
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:142:30: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::Context>'
         uv8.contexts[core_id]->Enter();
                              ^~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:143:25: error: 'v8::HandleScope::HandleScope()' is protected within this context
         v8::HandleScope handle_scope;
                         ^~~~~~~~~~~~
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:875:13: note: declared protected here
   V8_INLINE HandleScope() {}
             ^~~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:148:57: error: no matching function for call to 'v8::Object::New()'
         v8::Local<v8::Object> exports = v8::Object::New();
                                                         ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note: candidate: 'static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)'
   static Local<Object> New(Isolate* isolate);
                        ^~~
/usr/include/nodejs/deps/v8/include/v8.h:3491:24: note:   candidate expects 1 argument, 0 provided
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:149:22: error: 'GetCurrent' is not a member of 'v8::Context'
         v8::Context::GetCurrent()->Global()->Set(v8::String::New("exports"), exports);
                      ^~~~~~~~~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:149:62: error: 'New' is not a member of 'v8::String'
         v8::Context::GetCurrent()->Global()->Set(v8::String::New("exports"), exports);
                                                              ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:152:74: error: 'New' is not a member of 'v8::String'
         v8::Handle<v8::Script> script = v8::Script::Compile( v8::String::New(code), v8::String::New(filename) );
                                                                          ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:152:97: error: 'New' is not a member of 'v8::String'
         v8::Handle<v8::Script> script = v8::Script::Compile( v8::String::New(code), v8::String::New(filename) );
                                                                                                 ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:163:118: error: no matching function for call to 'v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))'
  uv8.jsgi_writer_func[core_id] = v8::Persistent<v8::Function>::New(v8::FunctionTemplate::New(uwsgi_v8_jsgi_body_chunk)->GetFunction());
                                                                                                                      ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note: candidate: 'static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Local<v8::Value>, v8::Local<v8::Signature>, int, v8::ConstructorBehavior)'
   static Local<FunctionTemplate> New(
                                  ^~~
/usr/include/nodejs/deps/v8/include/v8.h:5445:34: note:   no known conversion for argument 1 from 'v8::Handle<v8::Value>(const int&)' {aka 'v8::Local<v8::Value>(const int&)'} to 'v8::Isolate*'
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:165:55: error: 'New' is not a member of 'v8::String'
  v8::Handle<v8::Value> app = exports->Get(v8::String::New("app"));
                                                       ^~~
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:172:80: error: no matching function for call to 'v8::Persistent<v8::Function>::New(v8::Local<v8::Function>)'
    return v8::Persistent<v8::Function>::New(v8::Handle<v8::Function>::Cast(app));
                                                                                ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:9167:4: note: candidate: 'static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Function]'
 T* PersistentBase<T>::New(Isolate* isolate, T* that) {
    ^~~~~~~~~~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h:9167:4: note:   candidate expects 2 arguments, 1 provided
/usr/src/uwsgi/plugins/v8/v8_jsgi.cc:181:82: error: no matching function for call to 'v8::Persistent<v8::Function>::New(v8::Local<v8::Function>)'
   return v8::Persistent<v8::Function>::New(v8::Handle<v8::Function>::Cast(result));
                                                                                  ^
In file included from /usr/src/uwsgi/plugins/v8/v8_uwsgi.h:2,
                 from /usr/src/uwsgi/plugins/v8/v8_jsgi.cc:1:
/usr/include/nodejs/deps/v8/include/v8.h:9167:4: note: candidate: 'static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Function]'
 T* PersistentBase<T>::New(Isolate* isolate, T* that) {
    ^~~~~~~~~~~~~~~~~
/usr/include/nodejs/deps/v8/include/v8.h:9167:4: note:   candidate expects 2 arguments, 1 provided
*** uWSGI building and linking plugin from /usr/src/uwsgi/plugins/v8 ***
[x86_64-linux-gnu-gcc -pthread] v8_plugin.so
*** unable to build v8 plugin ***

Since is quite unfortunate, since libv8 3.14 is quite old and is unlikely to be available in production environemts due to lack of attention for patching its potential security flaws. Specifically, that library not be included in the upcoming stable release of Debian. :-(

@xrmx
Copy link
Collaborator

xrmx commented Dec 27, 2018

I'd say just disable the plugin for debian, if nobody cared upstream pretty sure there's not much interest in debian.

@jonassmedegaard
Copy link
Author

For Debian the plugin has already been isolated to gracefully be omitted without loosing all of uWSGI if this issue does not get addressed in time.

That said, I would very much appreciate this issue getting fixed properly: I consider this plugin valuable for production systems.

@unbit
Copy link
Owner

unbit commented Dec 27, 2018

hi @jonassmedegaard do you know of any company using it ? if someone is using it in production systems maybe we can ask for a sponsorship

@jonassmedegaard
Copy link
Author

Sorry, I am not in touch with anyone with money to spare using uWSGI, company or not.

@jonassmedegaard
Copy link
Author

whoops - sorry: I realize now that I filed this against the docs not the code project - should I re-file or can owners of these projects reassign?

@unbit
Copy link
Owner

unbit commented Dec 27, 2018

@jonassmedegaard not a problem, by the way, i do not know of anyone using the v8 plugin so unless @xrmx has some objection i think we can start deprecating it.

@jonassmedegaard
Copy link
Author

oh - I am sad to hear that :-(

I have not yet had the need for it, but was hoping to soon explore uWSGI-based hosting of exciting stuff like https://solid.inrupt.com/ using that plugin.

@jonassmedegaard
Copy link
Author

...and for far simpler projects as well - e.g. Leaflet maps slightly too complex to be served as static files.

@xrmx
Copy link
Collaborator

xrmx commented Dec 28, 2018

@jonassmedegaard regarding solid i think it requires the node api, v8 may not be enough

@jonassmedegaard
Copy link
Author

jonassmedegaard commented Dec 28, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants