cancel
Showing results for 
Search instead for 
Did you mean: 

Building nuxeo-web-ui fails on OpenSUSE Thumbleweed

Mike_Kaganski
Confirmed Champ
Confirmed Champ

Cloned https://github.com/nuxeo/nuxeo-web-ui, and trying to run

npm install

I get an error related to fibers:

mike@localhost:~/nuxeo-web-ui/packages/nuxeo-web-ui-ftest> npm install

mike@localhost:~/nuxeo-web-ui/packages/nuxeo-web-ui-ftest> npm install

> fibers@3.1.1 install /home/mike/nuxeo-web-ui/packages/nuxeo-web-ui-ftest/node_modules/fibers
> node build.js || nodejs build.js

make: Entering directory '/home/mike/nuxeo-web-ui/packages/nuxeo-web-ui-ftest/node_modules/fibers/build'
  CXX(target) Release/obj.target/fibers/src/fibers.o
../src/fibers.cc:68:2: error: ‘Handle’ does not name a type
   68 |  Handle<String> NewLatin1String(Isolate* isolate, const char* string) {
      |  ^~~~~~
../src/fibers.cc:72:2: error: ‘Handle’ does not name a type
   72 |  Handle<String> NewLatin1Symbol(Isolate* isolate, const char* string) {
      |  ^~~~~~
../src/fibers.cc:94:2: error: ‘Handle’ does not name a type
   94 |  Handle<Object> NewInstance(Isolate* isolate, Local<Function> fn, int argc, Local<Value> argv[]) {
      |  ^~~~~~
../src/fibers.cc:104:2: error: ‘Handle’ does not name a type
  104 |  Handle<Number> ToNumber(Local<Value> value) {
      |  ^~~~~~
../src/fibers.cc:114:50: error: ‘Handle’ has not been declared
  114 |  Local<Value> GetStackTrace(TryCatch* try_catch, Handle<Context> context) {
      |                                                  ^~~~~~
../src/fibers.cc:114:56: error: expected ‘,’ or ‘...’ before ‘<’ token
  114 |  Local<Value> GetStackTrace(TryCatch* try_catch, Handle<Context> context) {
      |                                                        ^
../src/fibers.cc: In function ‘v8::Local<v8::Value> uni::GetStackTrace(uni::TryCatch*, int)’:
../src/fibers.cc:115:32: error: ‘context’ was not declared in this scope; did you mean ‘setcontext’?
  115 |   return try_catch->StackTrace(context).ToLocalChecked();
      |                                ^~~~~~~
      |                                setcontext
../src/fibers.cc: At global scope:
../src/fibers.cc:127:39: error: ‘Handle’ has not been declared
  127 |  void fixStackLimit(Isolate* isolate, Handle<Context> context) {
      |                                       ^~~~~~
../src/fibers.cc:127:45: error: expected ‘,’ or ‘...’ before ‘<’ token
  127 |  void fixStackLimit(Isolate* isolate, Handle<Context> context) {
      |                                             ^
../src/fibers.cc: In function ‘void uni::fixStackLimit(v8::Isolate*, int)’:
../src/fibers.cc:128:19: error: ‘context’ was not declared in this scope; did you mean ‘setcontext’?
  128 |   Script::Compile(context, uni::NewLatin1String(isolate, "void 0;")).ToLocalChecked();
      |                   ^~~~~~~
      |                   setcontext
../src/fibers.cc:128:33: error: ‘NewLatin1String’ is not a member of ‘uni’
  128 |   Script::Compile(context, uni::NewLatin1String(isolate, "void 0;")).ToLocalChecked();
      |                                 ^~~~~~~~~~~~~~~
../src/fibers.cc: At global scope:
../src/fibers.cc:149:58: error: ‘Handle’ has not been declared
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |                                                          ^~~~~~
../src/fibers.cc:149:64: error: expected ‘,’ or ‘...’ before ‘<’ token
  149 | id Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |                                                             ^

../src/fibers.cc: In function ‘void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’:
../src/fibers.cc:150:29: error: ‘handle’ was not declared in this scope
  150 |   persistent.Reset(isolate, handle);
      |                             ^~~~~~
../src/fibers.cc: At global scope:
../src/fibers.cc:162:7: error: variable or field ‘SetInternalPointer’ declared void
  162 |  void SetInternalPointer(Handle<T> handle, int index, void* val) {
      |       ^~~~~~~~~~~~~~~~~~
../src/fibers.cc:162:26: error: ‘Handle’ was not declared in this scope
  162 |  void SetInternalPointer(Handle<T> handle, int index, void* val) {
      |                          ^~~~~~
../src/fibers.cc:162:34: error: expected primary-expression before ‘>’ token
  162 |  void SetInternalPointer(Handle<T> handle, int index, void* val) {
      |                                  ^
../src/fibers.cc:162:36: error: ‘handle’ was not declared in this scope
  162 |  void SetInternalPointer(Handle<T> handle, int index, void* val) {
      |                                    ^~~~~~
../src/fibers.cc:162:44: error: expected primary-expression before ‘int’
  162 |  void SetInternalPointer(Handle<T> handle, int index, void* val) {
      |                                            ^~~
../src/fibers.cc:162:55: error: expected primary-expression before ‘void’
  162 |  void SetInternalPointer(Handle<T> handle, int index, void* val) {
      |                                                       ^~~~
../src/fibers.cc:166:27: error: ‘Handle’ was not declared in this scope
  166 |  void* GetInternalPointer(Handle<T> handle, int index) {
      |                           ^~~~~~
../src/fibers.cc:166:35: error: expected primary-expression before ‘>’ token
  166 |  void* GetInternalPointer(Handle<T> handle, int index) {
      |                                   ^
../src/fibers.cc:166:37: error: ‘handle’ was not declared in this scope
  166 |  void* GetInternalPointer(Handle<T> handle, int index) {
      |                                     ^~~~~~
../src/fibers.cc:166:45: error: expected primary-expression before ‘int’
  166 |  void* GetInternalPointer(Handle<T> handle, int index) {
      |                                             ^~~
../src/fibers.cc:166:54: error: expression list treated as compound expression in initializer [-fpermissive]
  166 |  void* GetInternalPointer(Handle<T> handle, int index) {
      |                                                      ^
../src/fibers.cc:166:55: error: expected ‘;’ before ‘{’ token
  166 |  void* GetInternalPointer(Handle<T> handle, int index) {
      |                                                       ^~
      |                                                       ;
../src/fibers.cc:171:2: error: ‘Handle’ does not name a type
  171 |  Handle<T> Deref(Isolate* isolate, Persistent<T>& handle) {
      |  ^~~~~~
../src/fibers.cc:176:7: error: variable or field ‘Return’ declared void
  176 |  void Return(Handle<T> handle, const Arguments& args) {
      |       ^~~~~~
../src/fibers.cc:176:14: error: ‘Handle’ was not declared in this scope
  176 |  void Return(Handle<T> handle, const Arguments& args) {
      |              ^~~~~~
../src/fibers.cc:176:22: error: expected primary-expression before ‘>’ token
  176 |  void Return(Handle<T> handle, const Arguments& args) {
      |                      ^
../src/fibers.cc:176:24: error: ‘handle’ was not declared in this scope
  176 |  void Return(Handle<T> handle, const Arguments& args) {
      |                        ^~~~~~
../src/fibers.cc:176:32: error: expected primary-expression before ‘const’
  176 |  void Return(Handle<T> handle, const Arguments& args) {
      |                                ^~~~~
../src/fibers.cc:180:7: error: variable or field ‘Return’ declared void
  180 |  void Return(Handle<T> handle, GetterCallbackInfo info) {
      |       ^~~~~~
../src/fibers.cc:180:14: error: ‘Handle’ was not declared in this scope
  180 |  void Return(Handle<T> handle, GetterCallbackInfo info) {
      |              ^~~~~~
../src/fibers.cc:180:22: error: expected primary-expression before ‘>’ token
  180 |  void Return(Handle<T> handle, GetterCallbackInfo info) {
      |                      ^
../src/fibers.cc:180:24: error: ‘handle’ was not declared in this scope
  180 |  void Return(Handle<T> handle, GetterCallbackInfo info) {
      |                        ^~~~~~
../src/fibers.cc:180:51: error: expected primary-expression before ‘info’
  180 |  void Return(Handle<T> handle, GetterCallbackInfo info) {
      |                                                   ^~~~
../src/fibers.cc:188:2: error: ‘Handle’ does not name a type
  188 |  Handle<Value> ThrowException(Isolate* isolate, Handle<Value> exception) {
      |  ^~~~~~
../src/fibers.cc:192:2: error: ‘Handle’ does not name a type
  192 |  Handle<Context> GetCurrentContext(Isolate* isolate) {
      |  ^~~~~~
../src/fibers.cc:196:2: error: ‘Handle’ does not name a type
  196 |  Handle<Primitive> Undefined(Isolate* isolate) {
      |  ^~~~~~
../src/fibers.cc:200:2: error: ‘Handle’ does not name a type
  200 |  Handle<Boolean> NewBoolean(Isolate* isolate, bool value) {
      |  ^~~~~~
../src/fibers.cc:204:2: error: ‘Handle’ does not name a type
  204 |  Handle<Number> NewNumber(Isolate* isolate, double value) {
      |  ^~~~~~
../src/fibers.cc:208:2: error: ‘Handle’ does not name a type
  208 |  Handle<FunctionTemplate> NewFunctionTemplate(
      |  ^~~~~~
../src/fibers.cc:218:2: error: ‘Handle’ does not name a type
  218 |  Handle<Signature> NewSignature(
      |  ^~~~~~
../src/fibers.cc: In function ‘void uni::SetAccessor(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::String>, uni::FunctionType (*)(v8::Local<v8::String>, const GetterCallbackInfo&), void (*)(v8::Local<v8::String>, v8::Local<v8::Value>, const SetterCallbackInfo&))’:
../src/fibers.cc:341:59: warning: cast between incompatible function types from ‘uni::FunctionType (*)(v8::Local<v8::String>, const GetterCallbackInfo&)’ {aka ‘void (*)(v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value>&)’} to ‘v8::AccessorNameGetterCallback’ {aka ‘void (*)(v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value>&)’} [-Wcast-function-type]
  341 |   object->SetAccessor(isolate->GetCurrentContext(), name, (AccessorNameGetterCallback)getter, (AccessorNameSetterCallback)setter).ToChecked();
      |                                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/fibers.cc:341:95: warning: cast between incompatible function types from ‘void (*)(v8::Local<v8::String>, v8::Local<v8::Value>, const SetterCallbackInfo&)’ {aka ‘void (*)(v8::Local<v8::String>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void>&)’} to ‘v8::AccessorNameSetterCallback’ {aka ‘void (*)(v8::Local<v8::Name>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void>&)’} [-Wcast-function-type]
  341 | CurrentContext(), name, (AccessorNameGetterCallback)getter, (AccessorNameSetterCallback)setter).ToChecked();
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

../src/fibers.cc: At global scope:
../src/fibers.cc:408:17: error: expected ‘;’ at end of member declaration
  408 |   static Fiber& Unwrap(Handle<Object> handle) {
      |                 ^~~~~~
      |                       ;
../src/fibers.cc:408:30: error: expected ‘)’ before ‘<’ token
  408 |   static Fiber& Unwrap(Handle<Object> handle) {
      |                       ~      ^
      |                              )
../src/fibers.cc:414:15: error: expected ‘)’ before ‘<’ token
  414 |   Fiber(Handle<Object> handle, Handle<Function> cb, Handle<Context> v8_context) :
      |        ~      ^
      |               )
../src/fibers.cc:680:3: error: ‘Handle’ does not name a type
  680 |   Handle<Value> ReturnYielded() {
      |   ^~~~~~
../src/fibers.cc:842:20: error: ‘Handle’ has not been declared
  842 |   static void Init(Handle<Object> target) {
      |                    ^~~~~~
../src/fibers.cc:842:26: error: expected ‘,’ or ‘...’ before ‘<’ token
  842 |   static void Init(Handle<Object> target) {
      |                          ^
In file included from ../src/fibers.cc:3:
../src/fibers.cc: In static member function ‘static void Fiber::WeakCallback(void*)’:
../src/fibers.cc:458:23: error: ‘class v8::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
  458 |    assert(that.handle.IsNearDeath());
      |                       ^~~~~~~~~~~
../src/fibers.cc: In static member function ‘static void Fiber::DestroyOrphans()’:
../src/fibers.cc:495:22: error: ‘Deref’ is not a member of ‘uni’
  495 |      auto stack(uni::Deref(that.isolate, fatal_stack));
      |                      ^~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::New(const Arguments&)’:
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:517:5: note: in expansion of macro ‘THROW’
  517 |     THROW(Exception::TypeError, "Fiber expects 1 argument");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:517:5: note: in expansion of macro ‘THROW’
  517 |     THROW(Exception::TypeError, "Fiber expects 1 argument");
      |     ^~~~~
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:519:5: note: in expansion of macro ‘THROW’
  519 |     THROW(Exception::TypeError, "Fiber expects a function");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:519:5: note: in expansion of macro ‘THROW’
  519 |     THROW(Exception::TypeError, "Fiber expects a function");
      |     ^~~~~
../src/fibers.cc:521:5: error: ‘Handle’ was not declared in this scope; did you mean ‘handle’?
  521 |     Handle<Value> argv[1] = { args[0] };
      |     ^~~~~~
      |     handle
../src/fibers.cc:521:17: error: expected primary-expression before ‘>’ token
  521 |     Handle<Value> argv[1] = { args[0] };
      |                 ^
../src/fibers.cc:521:19: error: ‘argv’ was not declared in this scope; did you mean ‘args’?
  521 |     Handle<Value> argv[1] = { args[0] };
      |                   ^~~~
      |                   args
../src/fibers.cc:522:29: error: ‘NewInstance’ is not a member of ‘uni’
  522 |     return uni::Return(uni::NewInstance(Isolate::GetCurrent(), uni::Deref(Isolate::GetCurrent(), tmpl)->GetFunction(), 1, argv), args);
      |                             ^~~~~~~~~~~
../src/fibers.cc:522:69: error: ‘Deref’ is not a member of ‘uni’
  522 | rn uni::Return(uni::NewInstance(Isolate::GetCurrent(), uni::Deref(Isolate::GetCurrent(), tmpl)->GetFunction(), 1, argv), args);
      |                                                             ^~~~~

../src/fibers.cc:525:4: error: ‘Handle’ was not declared in this scope; did you mean ‘handle’?
  525 |    Handle<Function> fn = Handle<Function>::Cast(args[0]);
      |    ^~~~~~
      |    handle
../src/fibers.cc:525:19: error: expected primary-expression before ‘>’ token
  525 |    Handle<Function> fn = Handle<Function>::Cast(args[0]);
      |                   ^
../src/fibers.cc:525:21: error: ‘fn’ was not declared in this scope
  525 |    Handle<Function> fn = Handle<Function>::Cast(args[0]);
      |                     ^~
../src/fibers.cc:525:41: error: expected primary-expression before ‘>’ token
  525 |    Handle<Function> fn = Handle<Function>::Cast(args[0]);
      |                                         ^
../src/fibers.cc:525:44: error: ‘::Cast’ has not been declared
  525 |    Handle<Function> fn = Handle<Function>::Cast(args[0]);
      |                                            ^~~~
../src/fibers.cc:526:36: error: ‘GetCurrentContext’ is not a member of ‘uni’
  526 |    new Fiber(args.This(), fn, uni::GetCurrentContext(Isolate::GetCurrent()));
      |                                    ^~~~~~~~~~~~~~~~~
../src/fibers.cc:527:40: error: no matching function for call to ‘Return(v8::Local<v8::Object>, const Arguments&)’
  527 |    return uni::Return(args.This(), args);
      |                                        ^
../src/fibers.cc:184:7: note: candidate: ‘template<class T> void uni::Return(v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, uni::GetterCallbackInfo)’
  184 |  void Return(Persistent<T>& handle, GetterCallbackInfo info) {
      |       ^~~~~~
../src/fibers.cc:184:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:527:40: note:   ‘v8::Local<v8::Object>’ is not derived from ‘v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >’
  527 |    return uni::Return(args.This(), args);
      |                                        ^
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::Run(const Arguments&)’:
../src/fibers.cc:535:38: error: no match for call to ‘(Fiber) (v8::Local<v8::Object>)’
  535 |    Fiber& that = Unwrap(args.Holder());
      |                                      ^
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:541:5: note: in expansion of macro ‘THROW’
  541 |     THROW(Exception::Error, "This Fiber is already running");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:541:5: note: in expansion of macro ‘THROW’
  541 |     THROW(Exception::Error, "This Fiber is already running");
      |     ^~~~~
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:543:5: note: in expansion of macro ‘THROW’
  543 |     THROW(Exception::TypeError, "run() excepts 1 or no arguments");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:543:5: note: in expansion of macro ‘THROW’
  543 |     THROW(Exception::TypeError, "run() excepts 1 or no arguments");
      |     ^~~~~
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:554:6: note: in expansion of macro ‘THROW’
  554 |      THROW(Exception::RangeError, "Out of memory");
      |      ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:554:6: note: in expansion of macro ‘THROW’
  554 |      THROW(Exception::RangeError, "Out of memory");
      |      ^~~~~
../src/fibers.cc:564:52: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::Value>&, v8::Local<v8::Value>)’
  564 |      uni::Reset(that.isolate, that.yielded, args[0]);
      |                                                    ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:564:51: note:   cannot convert ‘(& args)->v8::FunctionCallbackInfo<v8::Value>::operator[](0)’ (type ‘v8::Local<v8::Value>’) to type ‘int’
  564 |      uni::Reset(that.isolate, that.yielded, args[0]);
      |                                             ~~~~~~^
../src/fibers.cc:566:57: error: ‘Undefined’ is not a member of ‘uni’; did you mean ‘v8::Undefined’?
  566 |      uni::Reset<Value>(that.isolate, that.yielded, uni::Undefined(that.isolate));
      |                                                         ^~~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:11933:18: note: ‘v8::Undefined’ declared here
11933 | Local<Primitive> Undefined(Isolate* isolate) {
      |                  ^~~~~~~~~
../src/fibers.cc:570:28: error: ‘class Fiber’ has no member named ‘ReturnYielded’
  570 |    return uni::Return(that.ReturnYielded(), args);
      |                            ^~~~~~~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::ThrowInto(const Arguments&)’:
../src/fibers.cc:577:38: error: no match for call to ‘(Fiber) (v8::Local<v8::Object>)’
  577 |    Fiber& that = Unwrap(args.Holder());
      |                                      ^
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:580:5: note: in expansion of macro ‘THROW’
  580 |     THROW(Exception::Error, "This Fiber is not yielding");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:580:5: note: in expansion of macro ‘THROW’
  580 |     THROW(Exception::Error, "This Fiber is not yielding");
      |     ^~~~~
../src/fibers.cc:582:56: error: ‘Undefined’ is not a member of ‘uni’; did you mean ‘v8::Undefined’?
  582 |     uni::Reset<Value>(that.isolate, that.yielded, uni::Undefined(that.isolate));
      |                                                        ^~~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:11933:18: note: ‘v8::Undefined’ declared here
11933 | Local<Primitive> Undefined(Isolate* isolate) {
      |                  ^~~~~~~~~
../src/fibers.cc:584:51: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::Value>&, v8::Local<v8::Value>)’
  584 |     uni::Reset(that.isolate, that.yielded, args[0]);
      |                                                   ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:584:50: note:   cannot convert ‘(& args)->v8::FunctionCallbackInfo<v8::Value>::operator[](0)’ (type ‘v8::Local<v8::Value>’) to type ‘int’
  584 |     uni::Reset(that.isolate, that.yielded, args[0]);
      |                                            ~~~~~~^
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:586:5: note: in expansion of macro ‘THROW’
  586 |     THROW(Exception::TypeError, "throwInto() expects 1 or no arguments");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:586:5: note: in expansion of macro ‘THROW’
  586 |     THROW(Exception::TypeError, "throwInto() expects 1 or no arguments");
      |     ^~~~~
../src/fibers.cc:590:28: error: ‘class Fiber’ has no member named ‘ReturnYielded’
  590 |    return uni::Return(that.ReturnYielded(), args);
      |                            ^~~~~~~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::Reset(const Arguments&)’:
../src/fibers.cc:598:38: error: no match for call to ‘(Fiber) (v8::Local<v8::Object>)’
  598 |    Fiber& that = Unwrap(args.Holder());
      |                                      ^
../src/fibers.cc:601:29: error: ‘Undefined’ is not a member of ‘uni’; did you mean ‘v8::Undefined’?
  601 |     return uni::Return(uni::Undefined(that.isolate), args);
      |                             ^~~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:11933:18: note: ‘v8::Undefined’ declared here
11933 | Local<Primitive> Undefined(Isolate* isolate) {
      |                  ^~~~~~~~~
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:603:5: note: in expansion of macro ‘THROW’
  603 |     THROW(Exception::Error, "This Fiber is not yielding");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:603:5: note: in expansion of macro ‘THROW’
  603 |     THROW(Exception::Error, "This Fiber is not yielding");
      |     ^~~~~
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:605:5: note: in expansion of macro ‘THROW’
  605 |     THROW(Exception::TypeError, "reset() expects no arguments");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:605:5: note: in expansion of macro ‘THROW’
  605 |     THROW(Exception::TypeError, "reset() expects no arguments");
      |     ^~~~~
../src/fibers.cc:613:4: error: ‘Handle’ was not declared in this scope; did you mean ‘handle’?
  613 |    Handle<Value> val = uni::Deref(that.isolate, that.yielded);
      |    ^~~~~~
      |    handle
../src/fibers.cc:613:16: error: expected primary-expression before ‘>’ token
  613 |    Handle<Value> val = uni::Deref(that.isolate, that.yielded);
      |                ^
../src/fibers.cc:613:18: error: ‘val’ was not declared in this scope
  613 |    Handle<Value> val = uni::Deref(that.isolate, that.yielded);
      |                  ^~~
../src/fibers.cc:613:29: error: ‘Deref’ is not a member of ‘uni’
  613 |    Handle<Value> val = uni::Deref(that.isolate, that.yielded);
      |                             ^~~~~
../src/fibers.cc:616:29: error: ‘ThrowException’ is not a member of ‘uni’
  616 |     return uni::Return(uni::ThrowException(that.isolate, val), args);
      |                             ^~~~~~~~~~~~~~
../src/fibers.cc: In member function ‘void Fiber::UnwindStack()’:
../src/fibers.cc:635:4: error: ‘Handle’ was not declared in this scope; did you mean ‘handle’?
  635 |    Handle<Value> zombie_exception = Exception::Error(uni::NewLatin1String(isolate, "This Fiber is a zombie"));
      |    ^~~~~~
      |    handle
../src/fibers.cc:635:16: error: expected primary-expression before ‘>’ token
  635 |    Handle<Value> zombie_exception = Exception::Error(uni::NewLatin1String(isolate, "This Fiber is a zombie"));
      |                ^
../src/fibers.cc:635:59: error: ‘NewLatin1String’ is not a member of ‘uni’
  635 |    Handle<Value> zombie_exception = Exception::Error(uni::NewLatin1String(isolate, "This Fiber is a zombie"));
      |                                                           ^~~~~~~~~~~~~~~
../src/fibers.cc:636:64: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::Value>&, v8::Persistent<v8::Value>&)’
  636 |    uni::Reset(isolate, this->zombie_exception, zombie_exception);
      |                                                                ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:636:48: note:   cannot convert ‘((Fiber*)this)->Fiber::zombie_exception’ (type ‘v8::Persistent<v8::Value>’) to type ‘int’
  636 |    uni::Reset(isolate, this->zombie_exception, zombie_exception);
      |                                                ^~~~~~~~~~~~~~~~
../src/fibers.cc:637:49: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::Value>&, v8::Persistent<v8::Value>&)’
  637 |    uni::Reset(isolate, yielded, zombie_exception);
      |                                                 ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:637:33: note:   cannot convert ‘((Fiber*)this)->Fiber::zombie_exception’ (type ‘v8::Persistent<v8::Value>’) to type ‘int’
  637 |    uni::Reset(isolate, yielded, zombie_exception);
      |                                 ^~~~~~~~~~~~~~~~
../src/fibers.cc:650:46: error: ‘Undefined’ is not a member of ‘uni’; did you mean ‘v8::Undefined’?
  650 |     uni::Reset<Value>(isolate, yielded, uni::Undefined(isolate));
      |                                              ^~~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:11933:18: note: ‘v8::Undefined’ declared here
11933 | Local<Primitive> Undefined(Isolate* isolate) {
      |                  ^~~~~~~~~
../src/fibers.cc: In static member function ‘static void Fiber::RunFiber(void**)’:
../src/fibers.cc:712:5: error: ‘Handle’ was not declared in this scope; did you mean ‘handle’?
  712 |     Handle<Context> v8_context = uni::Deref(that.isolate, that.v8_context);
      |     ^~~~~~
      |     handle
../src/fibers.cc:712:19: error: expected primary-expression before ‘>’ token
  712 |     Handle<Context> v8_context = uni::Deref(that.isolate, that.v8_context);
      |                   ^
../src/fibers.cc:712:21: error: invalid use of member ‘Fiber::v8_context’ in static member function
  712 |     Handle<Context> v8_context = uni::Deref(that.isolate, that.v8_context);
      |                     ^~~~~~~~~~
../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc:712:39: error: ‘Deref’ is not a member of ‘uni’
  712 |     Handle<Context> v8_context = uni::Deref(that.isolate, that.v8_context);
      |                                       ^~~~~
../src/fibers.cc:713:5: error: invalid use of member ‘Fiber::v8_context’ in static member function
  713 |     v8_context->Enter();
      |     ^~~~~~~~~~
../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc:715:38: error: invalid use of member ‘Fiber::v8_context’ in static member function
  715 |     uni::fixStackLimit(that.isolate, v8_context);
      |                                      ^~~~~~~~~~
../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc:717:17: error: expected primary-expression before ‘>’ token
  717 |     Handle<Value> yielded;
      |                 ^
../src/fibers.cc:717:19: error: invalid use of member ‘Fiber::yielded’ in static member function
  717 |     Handle<Value> yielded;
      |                   ^~~~~~~
../src/fibers.cc:399:21: note: declared here
  399 |   Persistent<Value> yielded;
      |                     ^~~~~~~
../src/fibers.cc:719:18: error: expected primary-expression before ‘>’ token
  719 |      Handle<Value> argv[1] = { (*args)[0] };
      |                  ^
../src/fibers.cc:719:20: error: ‘argv’ was not declared in this scope; did you mean ‘args’?
  719 |      Handle<Value> argv[1] = { (*args)[0] };
      |                    ^~~~
      |                    args
../src/fibers.cc:720:6: error: invalid use of member ‘Fiber::yielded’ in static member function
  720 |      yielded = uni::Deref(that.isolate, that.cb)->Call(v8_context->Global(), 1, argv);
      |      ^~~~~~~
../src/fibers.cc:399:21: note: declared here
  399 |   Persistent<Value> yielded;
      |                     ^~~~~~~
../src/fibers.cc:720:21: error: ‘Deref’ is not a member of ‘uni’
  720 |      yielded = uni::Deref(that.isolate, that.cb)->Call(v8_context->Global(), 1, argv);
      |                     ^~~~~
../src/fibers.cc:720:56: error: invalid use of member ‘Fiber::v8_context’ in static member function
  720 |      yielded = uni::Deref(that.isolate, that.cb)->Call(v8_context->Global(), 1, argv);
      |                                                        ^~~~~~~~~~
../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc:722:6: error: invalid use of member ‘Fiber::yielded’ in static member function
  722 |      yielded = uni::Deref(that.isolate, that.cb)->Call(v8_context->Global(), 0, NULL);
      |      ^~~~~~~
../src/fibers.cc:399:21: note: declared here
  399 |   Persistent<Value> yielded;
      |                     ^~~~~~~
../src/fibers.cc:722:21: error: ‘Deref’ is not a member of ‘uni’
  722 |      yielded = uni::Deref(that.isolate, that.cb)->Call(v8_context->Global(), 0, NULL);
      |                     ^~~~~
../src/fibers.cc:722:56: error: invalid use of member ‘Fiber::v8_context’ in static member function
  722 |      yielded = uni::Deref(that.isolate, that.cb)->Call(v8_context->Global(), 0, NULL);
      |                                                        ^~~~~~~~~~
../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc:726:66: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::Value>&, v8::Local<v8::Value>)’
  726 |      uni::Reset(that.isolate, that.yielded, try_catch.Exception());
      |                                                                  ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:726:64: note:   cannot convert ‘try_catch.uni::TryCatch::<anonymous>.v8::TryCatch::Exception()’ (type ‘v8::Local<v8::Value>’) to type ‘int’
  726 |      uni::Reset(that.isolate, that.yielded, try_catch.Exception());
      |                                             ~~~~~~~~~~~~~~~~~~~^~
../src/fibers.cc:728:50: error: ‘Deref’ is not a member of ‘uni’
  728 |      if (that.zombie && !that.resetting && !uni::Deref(that.isolate, that.yielded)->StrictEquals(uni::Deref(that.isolate, that.zombie_exception))) {
      |                                                  ^~~~~
../src/fibers.cc:728:103: error: ‘Deref’ is not a member of ‘uni’
  728 |  !uni::Deref(that.isolate, that.yielded)->StrictEquals(uni::Deref(that.isolate, that.zombie_exception))) {
      |                                                             ^~~~~

../src/fibers.cc:730:76: error: invalid use of member ‘Fiber::v8_context’ in static member function
  730 | t(that.isolate, fatal_stack, uni::GetStackTrace(&try_catch, v8_context));
      |                                                             ^~~~~~~~~~

../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc:733:45: error: invalid use of member ‘Fiber::yielded’ in static member function
  733 |      uni::Reset(that.isolate, that.yielded, yielded);
      |                                             ^~~~~~~
../src/fibers.cc:399:21: note: declared here
  399 |   Persistent<Value> yielded;
      |                     ^~~~~~~
../src/fibers.cc:748:5: error: invalid use of member ‘Fiber::v8_context’ in static member function
  748 |     v8_context->Exit();
      |     ^~~~~~~~~~
../src/fibers.cc:397:23: note: declared here
  397 |   Persistent<Context> v8_context;
      |                       ^~~~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::Yield_(const Arguments&)’:
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:763:5: note: in expansion of macro ‘THROW’
  763 |     THROW(Exception::Error, "yield() called with no fiber running");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:763:5: note: in expansion of macro ‘THROW’
  763 |     THROW(Exception::Error, "yield() called with no fiber running");
      |     ^~~~~
../src/fibers.cc:769:29: error: ‘ThrowException’ is not a member of ‘uni’
  769 |     return uni::Return(uni::ThrowException(that.isolate, uni::Deref(that.isolate, that.zombie_exception)), args);
      |                             ^~~~~~~~~~~~~~
../src/fibers.cc:769:63: error: ‘Deref’ is not a member of ‘uni’
  769 |   return uni::Return(uni::ThrowException(that.isolate, uni::Deref(that.isolate, that.zombie_exception)), args);
      |                                                             ^~~~~

../src/fibers.cc:771:60: error: cannot convert ‘v8::Local<v8::Primitive>’ to ‘int’
  771 |     uni::Reset<Value>(that.isolate, that.yielded, Undefined(that.isolate));
      |                                                   ~~~~~~~~~^~~~~~~~~~~~~~
      |                                                            |
      |                                                            v8::Local<v8::Primitive>
../src/fibers.cc:149:58: note:   initializing argument 3 of ‘void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int) [with T = v8::Value]’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |                                                          ^~~~~~
../src/fibers.cc:773:51: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::Value>&, v8::Local<v8::Value>)’
  773 |     uni::Reset(that.isolate, that.yielded, args[0]);
      |                                                   ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:773:50: note:   cannot convert ‘(& args)->v8::FunctionCallbackInfo<v8::Value>::operator[](0)’ (type ‘v8::Local<v8::Value>’) to type ‘int’
  773 |     uni::Reset(that.isolate, that.yielded, args[0]);
      |                                            ~~~~~~^
../src/fibers.cc:10:45: error: ‘ThrowException’ is not a member of ‘uni’
   10 | #define THROW(x, m) return uni::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                             ^~~~~~~~~~~~~~
../src/fibers.cc:775:5: note: in expansion of macro ‘THROW’
  775 |     THROW(Exception::TypeError, "yield() expects 1 or no arguments");
      |     ^~~~~
../src/fibers.cc:10:90: error: ‘NewLatin1String’ is not a member of ‘uni’
   10 | i::Return(uni::ThrowException(Isolate::GetCurrent(), x(uni::NewLatin1String(Isolate::GetCurrent(), m))), args)
      |                                                             ^~~~~~~~~~~~~~~

../src/fibers.cc:775:5: note: in expansion of macro ‘THROW’
  775 |     THROW(Exception::TypeError, "yield() expects 1 or no arguments");
      |     ^~~~~
../src/fibers.cc:798:28: error: ‘class Fiber’ has no member named ‘ReturnYielded’
  798 |    return uni::Return(that.ReturnYielded(), args);
      |                            ^~~~~~~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::GetStarted(v8::Local<v8::String>, const GetterCallbackInfo&)’:
../src/fibers.cc:806:29: error: ‘Undefined’ is not a member of ‘uni’; did you mean ‘v8::Undefined’?
  806 |     return uni::Return(uni::Undefined(Isolate::GetCurrent()), info);
      |                             ^~~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:317:27: note: ‘v8::Undefined’ declared here
  317 |   friend Local<Primitive> Undefined(Isolate* isolate);
      |                           ^~~~~~~~~
../src/fibers.cc:808:36: error: no match for call to ‘(Fiber) (v8::Local<v8::Object>)’
  808 |    Fiber& that = Unwrap(info.This());
      |                                    ^
../src/fibers.cc:809:28: error: ‘NewBoolean’ is not a member of ‘uni’
  809 |    return uni::Return(uni::NewBoolean(that.isolate, that.started), info);
      |                            ^~~~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::GetCurrent(v8::Local<v8::String>, const GetterCallbackInfo&)’:
../src/fibers.cc:816:29: error: ‘Undefined’ is not a member of ‘uni’; did you mean ‘v8::Undefined’?
  816 |     return uni::Return(uni::Undefined(Isolate::GetCurrent()), info);
      |                             ^~~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:317:27: note: ‘v8::Undefined’ declared here
  317 |   friend Local<Primitive> Undefined(Isolate* isolate);
      |                           ^~~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::GetPoolSize(v8::Local<v8::String>, const GetterCallbackInfo&)’:
../src/fibers.cc:824:28: error: ‘NewNumber’ is not a member of ‘uni’
  824 |    return uni::Return(uni::NewNumber(Isolate::GetCurrent(), Coroutine::pool_size), info);
      |                            ^~~~~~~~~
../src/fibers.cc: In static member function ‘static void Fiber::SetPoolSize(v8::Local<v8::String>, v8::Local<v8::Value>, const SetterCallbackInfo&)’:
../src/fibers.cc:828:32: error: ‘ToNumber’ is not a member of ‘uni’
  828 |    Coroutine::pool_size = uni::ToNumber(value)->Value();
      |                                ^~~~~~~~
../src/fibers.cc: In static member function ‘static uni::FunctionType Fiber::GetFibersCreated(v8::Local<v8::String>, const GetterCallbackInfo&)’:
../src/fibers.cc:835:28: error: ‘NewNumber’ is not a member of ‘uni’
  835 |    return uni::Return(uni::NewNumber(Isolate::GetCurrent(), Coroutine::coroutines_created()), info);
      |                            ^~~~~~~~~
../src/fibers.cc: In static member function ‘static void Fiber::Init(int)’:
../src/fibers.cc:853:4: error: ‘Handle’ was not declared in this scope; did you mean ‘handle’?
  853 |    Handle<FunctionTemplate> tmpl = uni::NewFunctionTemplate(isolate, New);
      |    ^~~~~~
      |    handle
../src/fibers.cc:853:27: error: expected primary-expression before ‘>’ token
  853 |    Handle<FunctionTemplate> tmpl = uni::NewFunctionTemplate(isolate, New);
      |                           ^
../src/fibers.cc:853:41: error: ‘NewFunctionTemplate’ is not a member of ‘uni’
  853 |    Handle<FunctionTemplate> tmpl = uni::NewFunctionTemplate(isolate, New);
      |                                         ^~~~~~~~~~~~~~~~~~~
../src/fibers.cc:854:41: error: no matching function for call to ‘Reset(v8::Isolate*&, v8::Persistent<v8::FunctionTemplate>&, v8::Persistent<v8::FunctionTemplate>&)’
  854 |    uni::Reset(isolate, Fiber::tmpl, tmpl);
      |                                         ^
../src/fibers.cc:149:7: note: candidate: ‘template<class T> void uni::Reset(v8::Isolate*, v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, int)’
  149 |  void Reset(Isolate* isolate, Persistent<T>& persistent, Handle<T> handle) {
      |       ^~~~~
../src/fibers.cc:149:7: note:   template argument deduction/substitution failed:
../src/fibers.cc:854:37: note:   cannot convert ‘Fiber::tmpl’ (type ‘v8::Persistent<v8::FunctionTemplate>’) to type ‘int’
  854 |    uni::Reset(isolate, Fiber::tmpl, tmpl);
      |                                     ^~~~
../src/fibers.cc:855:8: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’
  855 |    tmpl->SetClassName(uni::NewLatin1Symbol(isolate, "Fiber"));
      |        ^~
../src/fibers.cc:855:28: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  855 |    tmpl->SetClassName(uni::NewLatin1Symbol(isolate, "Fiber"));
      |                            ^~~~~~~~~~~~~~~
../src/fibers.cc:859:20: error: expected primary-expression before ‘>’ token
  859 |    Handle<Signature> sig = uni::NewSignature(isolate, tmpl);
      |                    ^
../src/fibers.cc:859:22: error: ‘sig’ was not declared in this scope; did you mean ‘sig_t’?
  859 |    Handle<Signature> sig = uni::NewSignature(isolate, tmpl);
      |                      ^~~
      |                      sig_t
../src/fibers.cc:859:33: error: ‘NewSignature’ is not a member of ‘uni’
  859 |    Handle<Signature> sig = uni::NewSignature(isolate, tmpl);
      |                                 ^~~~~~~~~~~~
../src/fibers.cc:860:8: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’
  860 |    tmpl->InstanceTemplate()->SetInternalFieldCount(1);
      |        ^~
../src/fibers.cc:863:25: error: expected primary-expression before ‘>’ token
  863 |    Handle<ObjectTemplate> proto = tmpl->PrototypeTemplate();
      |                         ^
../src/fibers.cc:863:27: error: ‘proto’ was not declared in this scope
  863 |    Handle<ObjectTemplate> proto = tmpl->PrototypeTemplate();
      |                           ^~~~~
../src/fibers.cc:863:39: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’
  863 |    Handle<ObjectTemplate> proto = tmpl->PrototypeTemplate();
      |                                       ^~
../src/fibers.cc:864:20: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  864 |    proto->Set(uni::NewLatin1Symbol(isolate, "reset"),
      |                    ^~~~~~~~~~~~~~~
../src/fibers.cc:865:10: error: ‘NewFunctionTemplate’ is not a member of ‘uni’
  865 |     uni::NewFunctionTemplate(isolate, Reset, Handle<Value>(), sig));
      |          ^~~~~~~~~~~~~~~~~~~
../src/fibers.cc:865:58: error: expected primary-expression before ‘>’ token
  865 |     uni::NewFunctionTemplate(isolate, Reset, Handle<Value>(), sig));
      |                                                          ^
../src/fibers.cc:865:60: error: expected primary-expression before ‘)’ token
  865 |     uni::NewFunctionTemplate(isolate, Reset, Handle<Value>(), sig));
      |                                                            ^
../src/fibers.cc:866:20: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  866 |    proto->Set(uni::NewLatin1Symbol(isolate, "run"),
      |                    ^~~~~~~~~~~~~~~
../src/fibers.cc:867:10: error: ‘NewFunctionTemplate’ is not a member of ‘uni’
  867 |     uni::NewFunctionTemplate(isolate, Run, Handle<Value>(), sig));
      |          ^~~~~~~~~~~~~~~~~~~
../src/fibers.cc:867:56: error: expected primary-expression before ‘>’ token
  867 |     uni::NewFunctionTemplate(isolate, Run, Handle<Value>(), sig));
      |                                                        ^
../src/fibers.cc:867:58: error: expected primary-expression before ‘)’ token
  867 |     uni::NewFunctionTemplate(isolate, Run, Handle<Value>(), sig));
      |                                                          ^
../src/fibers.cc:868:20: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  868 |    proto->Set(uni::NewLatin1Symbol(isolate, "throwInto"),
      |                    ^~~~~~~~~~~~~~~
../src/fibers.cc:869:10: error: ‘NewFunctionTemplate’ is not a member of ‘uni’
  869 |     uni::NewFunctionTemplate(isolate, ThrowInto, Handle<Value>(), sig));
      |          ^~~~~~~~~~~~~~~~~~~
../src/fibers.cc:869:62: error: expected primary-expression before ‘>’ token
  869 |    uni::NewFunctionTemplate(isolate, ThrowInto, Handle<Value>(), sig));
      |                                                             ^

../src/fibers.cc:869:64: error: expected primary-expression before ‘)’ token
  869 |    uni::NewFunctionTemplate(isolate, ThrowInto, Handle<Value>(), sig));
      |                                                               ^

../src/fibers.cc:870:28: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  870 |    proto->SetAccessor(uni::NewLatin1Symbol(isolate, "started"), GetStarted);
      |                            ^~~~~~~~~~~~~~~
../src/fibers.cc:873:19: error: expected primary-expression before ‘>’ token
  873 |    Handle<Function> yield = uni::NewFunctionTemplate(isolate, Yield_)->GetFunction();
      |                   ^
../src/fibers.cc:873:21: error: ‘yield’ was not declared in this scope; did you mean ‘yielded’?
  873 |    Handle<Function> yield = uni::NewFunctionTemplate(isolate, Yield_)->GetFunction();
      |                     ^~~~~
      |                     yielded
../src/fibers.cc:873:34: error: ‘NewFunctionTemplate’ is not a member of ‘uni’
  873 |    Handle<Function> yield = uni::NewFunctionTemplate(isolate, Yield_)->GetFunction();
      |                                  ^~~~~~~~~~~~~~~~~~~
../src/fibers.cc:874:17: error: expected primary-expression before ‘>’ token
  874 |    Handle<String> sym_yield = uni::NewLatin1Symbol(isolate, "yield");
      |                 ^
../src/fibers.cc:874:19: error: ‘sym_yield’ was not declared in this scope; did you mean ‘sched_yield’?
  874 |    Handle<String> sym_yield = uni::NewLatin1Symbol(isolate, "yield");
      |                   ^~~~~~~~~
      |                   sched_yield
../src/fibers.cc:874:36: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  874 |    Handle<String> sym_yield = uni::NewLatin1Symbol(isolate, "yield");
      |                                    ^~~~~~~~~~~~~~~
../src/fibers.cc:875:4: error: ‘target’ was not declared in this scope
  875 |    target->Set(sym_yield, yield);
      |    ^~~~~~
../src/fibers.cc:878:19: error: expected primary-expression before ‘>’ token
  878 |    Handle<Function> fn = tmpl->GetFunction();
      |                   ^
../src/fibers.cc:878:21: error: ‘fn’ was not declared in this scope
  878 |    Handle<Function> fn = tmpl->GetFunction();
      |                     ^~
../src/fibers.cc:878:30: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’
  878 |    Handle<Function> fn = tmpl->GetFunction();
      |                              ^~
../src/fibers.cc:880:39: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  880 |    uni::SetAccessor(isolate, fn, uni::NewLatin1Symbol(isolate, "current"), GetCurrent);
      |                                       ^~~~~~~~~~~~~~~
../src/fibers.cc:881:39: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  881 |    uni::SetAccessor(isolate, fn, uni::NewLatin1Symbol(isolate, "poolSize"), GetPoolSize, SetPoolSize);
      |                                       ^~~~~~~~~~~~~~~
../src/fibers.cc:882:39: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  882 |    uni::SetAccessor(isolate, fn, uni::NewLatin1Symbol(isolate, "fibersCreated"), GetFibersCreated);
      |                                       ^~~~~~~~~~~~~~~
../src/fibers.cc:885:21: error: ‘NewLatin1Symbol’ is not a member of ‘uni’
  885 |    target->Set(uni::NewLatin1Symbol(isolate, "Fiber"), fn);
      |                     ^~~~~~~~~~~~~~~
../src/fibers.cc: At global scope:
../src/fibers.cc:901:6: error: variable or field ‘init’ declared void
  901 | void init(Handle<Object> target) {
      |      ^~~~
../src/fibers.cc:901:11: error: ‘Handle’ was not declared in this scope
  901 | void init(Handle<Object> target) {
      |           ^~~~~~
../src/fibers.cc:901:24: error: expected primary-expression before ‘>’ token
  901 | void init(Handle<Object> target) {
      |                        ^
../src/fibers.cc:901:26: error: ‘target’ was not declared in this scope
  901 | void init(Handle<Object> target) {
      |                          ^~~~~~
In file included from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
../src/fibers.cc:916:21: error: ‘init’ was not declared in this scope; did you mean ‘int’?
  916 | NODE_MODULE(fibers, init)
      |                     ^~~~
/usr/include/node14/node.h:748:36: note: in definition of macro ‘NODE_MODULE_X’
  748 |       (node::addon_register_func) (regfunc),                          \
      |                                    ^~~~~~~
../src/fibers.cc:916:1: note: in expansion of macro ‘NODE_MODULE’
  916 | NODE_MODULE(fibers, init)
      | ^~~~~~~~~~~
../src/fibers.cc: In instantiation of ‘void uni::Return(v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&, uni::GetterCallbackInfo) [with T = v8::Object; uni::GetterCallbackInfo = v8::PropertyCallbackInfo<v8::Value>]’:
../src/fibers.cc:814:45:   required from here
../src/fibers.cc:185:28: error: no matching function for call to ‘v8::ReturnValue<v8::Value>::Set(v8::Persistent<v8::Object>&)’
  185 |   info.GetReturnValue().Set(handle);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:4220:18: note: candidate: ‘template<class S> void v8::ReturnValue<T>::Set(const v8::Global<S>&) [with S = S; T = v8::Value]’
 4220 |   V8_INLINE void Set(const Global<S>& handle);
      |                  ^~~
/usr/include/node14/v8.h:4220:18: note:   template argument deduction/substitution failed:
../src/fibers.cc:185:28: note:   ‘v8::Persistent<v8::Object>’ is not derived from ‘const v8::Global<T>’
  185 |   info.GetReturnValue().Set(handle);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:4222:18: note: candidate: ‘template<class S> void v8::ReturnValue<T>::Set(const v8::TracedReferenceBase<S>&) [with S = S; T = v8::Value]’
 4222 |   V8_INLINE void Set(const TracedReferenceBase<S>& handle);
      |                  ^~~
/usr/include/node14/v8.h:4222:18: note:   template argument deduction/substitution failed:
../src/fibers.cc:185:28: note:   ‘v8::Persistent<v8::Object>’ is not derived from ‘const v8::TracedReferenceBase<T>’
  185 |   info.GetReturnValue().Set(handle);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:4224:18: note: candidate: ‘template<class S> void v8::ReturnValue<T>::Set(v8::Local<S>) [with S = S; T = v8::Value]’
 4224 |   V8_INLINE void Set(const Local<S> handle);
      |                  ^~~
/usr/include/node14/v8.h:4224:18: note:   template argument deduction/substitution failed:
../src/fibers.cc:185:28: note:   ‘v8::Persistent<v8::Object>’ is not derived from ‘v8::Local<T>’
  185 |   info.GetReturnValue().Set(handle);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
In file included from /usr/include/node14/node.h:67,
                 from ../src/coroutine.h:1,
                 from ../src/fibers.cc:1:
/usr/include/node14/v8.h:11142:6: note: candidate: ‘void v8::ReturnValue<T>::Set(bool) [with T = v8::Value]’
11142 | void ReturnValue<T>::Set(bool value) {
      |      ^~~~~~~~~~~~~~
/usr/include/node14/v8.h:11142:31: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::Object>’ to ‘bool’
11142 | void ReturnValue<T>::Set(bool value) {
      |                          ~~~~~^~~~~
/usr/include/node14/v8.h:11113:6: note: candidate: ‘void v8::ReturnValue<T>::Set(double) [with T = v8::Value]’
11113 | void ReturnValue<T>::Set(double i) {
      |      ^~~~~~~~~~~~~~
/usr/include/node14/v8.h:11113:33: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::Object>’ to ‘double’
11113 | void ReturnValue<T>::Set(double i) {
      |                          ~~~~~~~^
/usr/include/node14/v8.h:11119:6: note: candidate: ‘void v8::ReturnValue<T>::Set(int32_t) [with T = v8::Value; int32_t = int]’
11119 | void ReturnValue<T>::Set(int32_t i) {
      |      ^~~~~~~~~~~~~~
/usr/include/node14/v8.h:11119:34: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::Object>’ to ‘int32_t’ {aka ‘int’}
11119 | void ReturnValue<T>::Set(int32_t i) {
      |                          ~~~~~~~~^
/usr/include/node14/v8.h:11130:6: note: candidate: ‘void v8::ReturnValue<T>::Set(uint32_t) [with T = v8::Value; uint32_t = unsigned int]’
11130 | void ReturnValue<T>::Set(uint32_t i) {
      |      ^~~~~~~~~~~~~~
/usr/include/node14/v8.h:11130:35: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::Object>’ to ‘uint32_t’ {aka ‘unsigned int’}
11130 | void ReturnValue<T>::Set(uint32_t i) {
      |                          ~~~~~~~~~^
/usr/include/node14/v8.h:4239:18: note: candidate: ‘template<class S> void v8::ReturnValue<T>::Set(S*) [with S = S; T = v8::Value]’
 4239 |   V8_INLINE void Set(S* whatever);
      |                  ^~~
/usr/include/node14/v8.h:4239:18: note:   template argument deduction/substitution failed:
../src/fibers.cc:185:28: note:   mismatched types ‘S*’ and ‘v8::Persistent<v8::Object>’
  185 |   info.GetReturnValue().Set(handle);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
make: *** [fibers.target.mk:94: Release/obj.target/fibers/src/fibers.o] Error 1
make: Leaving directory '/home/mike/nuxeo-web-ui/packages/nuxeo-web-ui-ftest/node_modules/fibers/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib64/node_modules/npm14/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:314:20)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12)
gyp ERR! System Linux 5.8.14-1-default
gyp ERR! command "/usr/bin/node14" "/usr/lib64/node_modules/npm14/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--release"
gyp ERR! cwd /home/mike/nuxeo-web-ui/packages/nuxeo-web-ui-ftest/node_modules/fibers
gyp ERR! node -v v14.13.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
node-gyp exited with code: 1
Please make sure you are using a supported platform and node version. If you
would like to compile fibers on this machine please make sure you have setup your
build environment--
Windows + OS X instructions here: https://github.com/nodejs/node-gyp
Ubuntu users please run: `sudo apt-get install g++ build-essential`
RHEL users please run: `yum install gcc-c++` and `yum groupinstall 'Development Tools'` 
Alpine users please run: `sudo apk add python make g++`
sh: nodejs: command not found
npm WARN @nuxeo/nuxeo-web-ui-ftest@3.0.2-SNAPSHOT No repository field.

npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR! fibers@3.1.1 install: `node build.js || nodejs build.js`
npm ERR! spawn ENOENT
npm ERR! 
npm ERR! Failed at the fibers@3.1.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/mike/.npm/_logs/2020-10-22T15_28_03_501Z-debug.log

Tried to npm install fibers, that succeeds, but npm install still fails.

1 ACCEPTED ANSWER

Mike_Kaganski
Confirmed Champ
Confirmed Champ

Installing and using nodejs10 and npm10 solved the issue:

sudo zypper in nodejs10
npm10 install

View answer in original post

2 REPLIES 2

Mike_Kaganski
Confirmed Champ
Confirmed Champ

Trying the configuration found in https

Mike_Kaganski
Confirmed Champ
Confirmed Champ

Installing and using nodejs10 and npm10 solved the issue:

sudo zypper in nodejs10
npm10 install
Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.