tum-esi / shadow-thing Goto Github PK
View Code? Open in Web Editor NEWCreates and deploys a virtual Web of Things servient based on its Thing Description
License: MIT License
Creates and deploys a virtual Web of Things servient based on its Thing Description
License: MIT License
There are some examples for sensors and the traffic light but an example of a more actuator oriented device like a robot or the iconic coffee machine are needed to demonstrate the possibilities.
Similar to how the console asks for the configuration, we can also allow a virtual thing creation from scratch. This means that if the use does not give a TD input, he/she is prompted with options to add properties, actions, etc
npm install virtual-thing or after cloning from GitHub, the installation fails with the following error:
> [email protected] preinstall /home/eko/Gitlab/virtual-thing
> rm -rf thingweb.node-wot && rm -rf node_modules && rm -rf package-lock.json
> [email protected] install /home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize
> node-gyp rebuild
make: Entering directory '/home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize/build'
CXX(target) Release/obj.target/urdna2015/lib/native/IdentifierIssuer.o
CXX(target) Release/obj.target/urdna2015/lib/native/MessageDigest.o
CXX(target) Release/obj.target/urdna2015/lib/native/NQuads.o
CXX(target) Release/obj.target/urdna2015/lib/native/addon.o
In file included from ../../nan/nan_converters.h:67,
from ../../nan/nan.h:221,
from ../lib/native/addon.cc:10:
../../nan/nan_converters_43_inl.h: In static member function ‘static Nan::imp::ToFactoryBase<v8::Boolean>::return_t Nan::imp::ToFactory<v8::Boolean>::convert(v8::Local<v8::Value>)’:
../../nan/nan_converters_43_inl.h:18:51: warning: ‘v8::MaybeLocal<v8::Boolean> v8::Value::ToBoolean(v8::Local<v8::Context>) const’ is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
18 | val->To ## TYPE(isolate->GetCurrentContext()) \
| ^
../../nan/nan_converters_43_inl.h:22:1: note: in expansion of macro ‘X’
22 | X(Boolean)
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:2537:59: note: declared here
2537 | V8_WARN_UNUSED_RESULT MaybeLocal<Boolean> ToBoolean(
| ^~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../../nan/nan_converters.h:67,
from ../../nan/nan.h:221,
from ../lib/native/addon.cc:10:
../../nan/nan_converters_43_inl.h: In static member function ‘static Nan::imp::ValueFactoryBase<bool>::return_t Nan::imp::ToFactory<bool>::convert(v8::Local<v8::Value>)’:
../../nan/nan_converters_43_inl.h:37:57: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
37 | return val->NAME ## Value(isolate->GetCurrentContext()); \
| ^
../../nan/nan_converters_43_inl.h:40:1: note: in expansion of macro ‘X’
40 | X(bool, Boolean)
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:2575:51: note: declared here
2575 | V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
| ^~~~~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189,
from ../../nan/nan.h:222,
from ../lib/native/addon.cc:10:
../../nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase<v8::Function>::return_t Nan::imp::Factory<v8::Function>::New(Nan::FunctionCallback, v8::Local<v8::Value>)’:
../../nan/nan_implementation_12_inl.h:103:42: error: cannot convert ‘v8::Isolate*’ to ‘v8::Local<v8::Context>’
103 | return scope.Escape(v8::Function::New( isolate
| ^~~~~~~
| |
| v8::Isolate*
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:4139:22: note: initializing argument 1 of ‘static v8::MaybeLocal<v8::Function> v8::Function::New(v8::Local<v8::Context>, v8::FunctionCallback, v8::Local<v8::Value>, int, v8::ConstructorBehavior, v8::SideEffectType)’
4139 | Local<Context> context, FunctionCallback callback,
| ~~~~~~~~~~~~~~~^~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Local<v8::Value>)’:
../../nan/nan.h:1064:78: warning: ‘v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1064 | v8::Local<v8::String> string = from->ToString(v8::Isolate::GetCurrent());
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:2557:31: note: declared here
2557 | Local<String> ToString(Isolate* isolate) const);
| ^~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1855:64: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1855 | New(persistentHandle)->Set(New(key).ToLocalChecked(), value);
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3372:22: note: declared here
3372 | bool Set(Local<Value> key, Local<Value> value));
| ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1861:42: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1861 | New(persistentHandle)->Set(key, value);
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3372:22: note: declared here
3372 | bool Set(Local<Value> key, Local<Value> value));
| ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1867:44: warning: ‘bool v8::Object::Set(uint32_t, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1867 | New(persistentHandle)->Set(index, value);
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3381:22: note: declared here
3381 | bool Set(uint32_t index, Local<Value> value));
| ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const’:
../../nan/nan.h:1873:61: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1873 | New(persistentHandle)->Get(New(key).ToLocalChecked()));
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3425:51: note: declared here
3425 | V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
| ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const v8::Local<v8::String>&) const’:
../../nan/nan.h:1879:55: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1879 | return scope.Escape(New(persistentHandle)->Get(key));
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3425:51: note: declared here
3425 | V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
| ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(uint32_t) const’:
../../nan/nan.h:1884:57: warning: ‘v8::Local<v8::Value> v8::Object::Get(uint32_t)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
1884 | return scope.Escape(New(persistentHandle)->Get(index));
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3429:51: note: declared here
3429 | V8_DEPRECATED("Use maybe version", Local<Value> Get(uint32_t index));
| ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker*)’:
../../nan/nan.h:2208:62: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
2208 | , reinterpret_cast<uv_after_work_cb>(AsyncExecuteComplete)
| ^
In file included from /usr/include/c++/9.1.0/cassert:44,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node_object_wrap.h:26,
from ../../nan/nan.h:54,
from ../lib/native/addon.cc:10:
../../nan/nan_object_wrap.h: In destructor ‘virtual Nan::ObjectWrap::~ObjectWrap()’:
../../nan/nan_object_wrap.h:24:25: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
24 | assert(persistent().IsNearDeath());
| ^~~~~~~~~~~
In file included from ../../nan/nan.h:2698,
from ../lib/native/addon.cc:10:
../../nan/nan_object_wrap.h: In member function ‘void Nan::ObjectWrap::MakeWeak()’:
../../nan/nan_object_wrap.h:67:34: warning: ‘void v8::PersistentBase<T>::MarkIndependent() [with T = v8::Object]’ is deprecated: Weak objects are always considered independent. Use TracedGlobal when trying to use EmbedderHeapTracer. Use a strong handle when trying to keep an object alive. [-Wdeprecated-declarations]
67 | persistent().MarkIndependent();
| ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:567:22: note: declared here
567 | V8_INLINE void MarkIndependent());
| ^~~~~~~~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
311 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from /usr/include/c++/9.1.0/cassert:44,
from /home/eko/.cache/node-gyp/12.9.1/include/node/node_object_wrap.h:26,
from ../../nan/nan.h:54,
from ../lib/native/addon.cc:10:
../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’:
../../nan/nan_object_wrap.h:124:26: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
124 | assert(wrap->handle_.IsNearDeath());
| ^~~~~~~~~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:28:11: error: ‘v8::Handle’ has not been declared
28 | using v8::Handle;
| ^~~~~~
../lib/native/addon.cc: In member function ‘virtual void Urdna2015Worker::HandleOKCallback()’:
../lib/native/addon.cc:64:27: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
64 | callback->Call(2, argv);
| ^
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h:1655:3: note: declared here
1655 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:74:27: error: ‘Handle’ does not name a type
74 | Dataset& dataset, const Handle<Array>& datasetArray);
| ^~~~~~
../lib/native/addon.cc:74:33: error: expected ‘,’ or ‘...’ before ‘<’ token
74 | Dataset& dataset, const Handle<Array>& datasetArray);
| ^
../lib/native/addon.cc:77:9: error: ‘Handle’ does not name a type
77 | const Handle<Object>& object,
| ^~~~~~
../lib/native/addon.cc:77:15: error: expected ‘,’ or ‘...’ before ‘<’ token
77 | const Handle<Object>& object,
| ^
../lib/native/addon.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE Main(Nan::NAN_METHOD_ARGS_TYPE)’:
../lib/native/addon.cc:96:3: error: ‘Handle’ was not declared in this scope
96 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^~~~~~
../lib/native/addon.cc:96:16: error: expected primary-expression before ‘>’ token
96 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^
../lib/native/addon.cc:96:18: error: ‘object’ was not declared in this scope
96 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^~~~~~
../lib/native/addon.cc:96:40: error: expected primary-expression before ‘>’ token
96 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^
../lib/native/addon.cc:96:43: error: ‘::Cast’ has not been declared
96 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^~~~
../lib/native/addon.cc:103:15: error: expected primary-expression before ‘>’ token
103 | Handle<Array> datasetArray =
| ^
../lib/native/addon.cc:103:17: error: ‘datasetArray’ was not declared in this scope
103 | Handle<Array> datasetArray =
| ^~~~~~~~~~~~
../lib/native/addon.cc:104:17: error: expected primary-expression before ‘>’ token
104 | Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
| ^
../lib/native/addon.cc:104:20: error: ‘::Cast’ has not been declared
104 | Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
| ^~~~
../lib/native/addon.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE MainSync(Nan::NAN_METHOD_ARGS_TYPE)’:
../lib/native/addon.cc:133:3: error: ‘Handle’ was not declared in this scope
133 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^~~~~~
../lib/native/addon.cc:133:16: error: expected primary-expression before ‘>’ token
133 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^
../lib/native/addon.cc:133:18: error: ‘object’ was not declared in this scope
133 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^~~~~~
../lib/native/addon.cc:133:40: error: expected primary-expression before ‘>’ token
133 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^
../lib/native/addon.cc:133:43: error: ‘::Cast’ has not been declared
133 | Handle<Object> object = Handle<Object>::Cast(info[0]);
| ^~~~
../lib/native/addon.cc:140:15: error: expected primary-expression before ‘>’ token
140 | Handle<Array> datasetArray =
| ^
../lib/native/addon.cc:140:17: error: ‘datasetArray’ was not declared in this scope
140 | Handle<Array> datasetArray =
| ^~~~~~~~~~~~
../lib/native/addon.cc:141:17: error: expected primary-expression before ‘>’ token
141 | Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
| ^
../lib/native/addon.cc:141:20: error: ‘::Cast’ has not been declared
141 | Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
| ^~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:162:49: error: ‘Handle’ does not name a type
162 | static bool fillDataset(Dataset& dataset, const Handle<Array>& datasetArray) {
| ^~~~~~
../lib/native/addon.cc:162:55: error: expected ‘,’ or ‘...’ before ‘<’ token
162 | static bool fillDataset(Dataset& dataset, const Handle<Array>& datasetArray) {
| ^
../lib/native/addon.cc: In function ‘bool fillDataset(RdfCanonize::Dataset&, int)’:
../lib/native/addon.cc:174:27: error: ‘datasetArray’ was not declared in this scope
174 | for(size_t di = 0; di < datasetArray->Length(); ++di) {
| ^~~~~~~~~~~~
../lib/native/addon.cc:175:5: error: ‘Handle’ was not declared in this scope
175 | Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
| ^~~~~~
../lib/native/addon.cc:175:18: error: expected primary-expression before ‘>’ token
175 | Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
| ^
../lib/native/addon.cc:175:20: error: ‘quad’ was not declared in this scope; did you mean ‘quad_t’?
175 | Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
| ^~~~
| quad_t
../lib/native/addon.cc:175:40: error: expected primary-expression before ‘>’ token
175 | Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
| ^
../lib/native/addon.cc:175:43: error: ‘::Cast’ has not been declared
175 | Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
| ^~~~
../lib/native/addon.cc:179:18: error: expected primary-expression before ‘>’ token
179 | Handle<Object> subject =
| ^
../lib/native/addon.cc:179:20: error: ‘subject’ was not declared in this scope; did you mean ‘subjectKey’?
179 | Handle<Object> subject =
| ^~~~~~~
| subjectKey
../lib/native/addon.cc:180:20: error: expected primary-expression before ‘>’ token
180 | Handle<Object>::Cast(quad->Get(subjectKey));
| ^
../lib/native/addon.cc:180:23: error: ‘::Cast’ has not been declared
180 | Handle<Object>::Cast(quad->Get(subjectKey));
| ^~~~
../lib/native/addon.cc:181:18: error: expected primary-expression before ‘>’ token
181 | Handle<Object> predicate =
| ^
../lib/native/addon.cc:181:20: error: ‘predicate’ was not declared in this scope; did you mean ‘predicateKey’?
181 | Handle<Object> predicate =
| ^~~~~~~~~
| predicateKey
../lib/native/addon.cc:182:20: error: expected primary-expression before ‘>’ token
182 | Handle<Object>::Cast(quad->Get(predicateKey));
| ^
../lib/native/addon.cc:182:23: error: ‘::Cast’ has not been declared
182 | Handle<Object>::Cast(quad->Get(predicateKey));
| ^~~~
../lib/native/addon.cc:183:18: error: expected primary-expression before ‘>’ token
183 | Handle<Object> object =
| ^
../lib/native/addon.cc:183:20: error: ‘object’ was not declared in this scope; did you mean ‘objectKey’?
183 | Handle<Object> object =
| ^~~~~~
| objectKey
../lib/native/addon.cc:184:20: error: expected primary-expression before ‘>’ token
184 | Handle<Object>::Cast(quad->Get(objectKey));
| ^
../lib/native/addon.cc:184:23: error: ‘::Cast’ has not been declared
184 | Handle<Object>::Cast(quad->Get(objectKey));
| ^~~~
../lib/native/addon.cc:185:18: error: expected primary-expression before ‘>’ token
185 | Handle<Object> graph =
| ^
../lib/native/addon.cc:185:20: error: ‘graph’ was not declared in this scope; did you mean ‘isgraph’?
185 | Handle<Object> graph =
| ^~~~~
| isgraph
../lib/native/addon.cc:186:20: error: expected primary-expression before ‘>’ token
186 | Handle<Object>::Cast(quad->Get(graphKey));
| ^
../lib/native/addon.cc:186:23: error: ‘::Cast’ has not been declared
186 | Handle<Object>::Cast(quad->Get(graphKey));
| ^~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:217:9: error: ‘Handle’ does not name a type
217 | const Handle<Object>& object,
| ^~~~~~
../lib/native/addon.cc:217:15: error: expected ‘,’ or ‘...’ before ‘<’ token
217 | const Handle<Object>& object,
| ^
../lib/native/addon.cc: In function ‘bool createTerm(RdfCanonize::Term*&, int)’:
../lib/native/addon.cc:222:8: error: ‘object’ was not declared in this scope
222 | if(!(object->Has(termTypeKey) && object->Get(termTypeKey)->IsString())) {
| ^~~~~~
../lib/native/addon.cc:222:20: error: ‘termTypeKey’ was not declared in this scope
222 | if(!(object->Has(termTypeKey) && object->Get(termTypeKey)->IsString())) {
| ^~~~~~~~~~~
../lib/native/addon.cc:229:23: error: ‘object’ was not declared in this scope
229 | Utf8String termType(object->Get(termTypeKey));
| ^~~~~~
../lib/native/addon.cc:229:35: error: ‘termTypeKey’ was not declared in this scope; did you mean ‘termType’?
229 | Utf8String termType(object->Get(termTypeKey));
| ^~~~~~~~~~~
| termType
../lib/native/addon.cc:238:20: error: ‘datatypeKey’ was not declared in this scope
238 | if(object->Has(datatypeKey)) {
| ^~~~~~~~~~~
../lib/native/addon.cc:239:7: error: ‘Handle’ was not declared in this scope
239 | Handle<Object> datatype =
| ^~~~~~
../lib/native/addon.cc:239:20: error: expected primary-expression before ‘>’ token
239 | Handle<Object> datatype =
| ^
../lib/native/addon.cc:239:22: error: ‘datatype’ was not declared in this scope
239 | Handle<Object> datatype =
| ^~~~~~~~
../lib/native/addon.cc:240:22: error: expected primary-expression before ‘>’ token
240 | Handle<Object>::Cast(object->Get(datatypeKey));
| ^
../lib/native/addon.cc:240:25: error: ‘::Cast’ has not been declared
240 | Handle<Object>::Cast(object->Get(datatypeKey));
| ^~~~
../lib/native/addon.cc:250:22: error: ‘valueKey’ was not declared in this scope
250 | termTypeKey, valueKey, datatypeKey, languageKey)) {
| ^~~~~~~~
../lib/native/addon.cc:250:45: error: ‘languageKey’ was not declared in this scope
250 | termTypeKey, valueKey, datatypeKey, languageKey)) {
| ^~~~~~~~~~~
../lib/native/addon.cc:260:20: error: ‘languageKey’ was not declared in this scope
260 | if(object->Has(languageKey)) {
| ^~~~~~~~~~~
../lib/native/addon.cc:272:41: error: ‘valueKey’ was not declared in this scope
272 | term->value = *Utf8String(object->Get(valueKey));
| ^~~~~~~~
In file included from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
../lib/native/addon.cc: At global scope:
/home/eko/.cache/node-gyp/12.9.1/include/node/node.h:556:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
556 | (node::addon_register_func) (regfunc), \
| ^
/home/eko/.cache/node-gyp/12.9.1/include/node/node.h:590:3: note: in expansion of macro ‘NODE_MODULE_X’
590 | NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage)
| ^~~~~~~~~~~~~
../lib/native/addon.cc:286:1: note: in expansion of macro ‘NODE_MODULE’
286 | NODE_MODULE(addon, InitAll)
| ^~~~~~~~~~~
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
from ../../nan/nan.h:52,
from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h: In instantiation of ‘void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = node::ObjectWrap; T = v8::Object; typename v8::WeakCallbackInfo<P>::Callback = void (*)(const v8::WeakCallbackInfo<node::ObjectWrap>&)]’:
/home/eko/.cache/node-gyp/12.9.1/include/node/node_object_wrap.h:84:78: required from here
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:9893:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<node::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<node::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]
9893 | reinterpret_cast<Callback>(callback), type);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h: In instantiation of ‘void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = Nan::ObjectWrap; T = v8::Object; typename v8::WeakCallbackInfo<P>::Callback = void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)]’:
../../nan/nan_object_wrap.h:66:61: required from here
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:9893:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<Nan::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]
../lib/native/addon.cc:215:13: warning: ‘bool createTerm(RdfCanonize::Term*&, int)’ defined but not used [-Wunused-function]
215 | static bool createTerm(
| ^~~~~~~~~~
../lib/native/addon.cc:162:13: warning: ‘bool fillDataset(RdfCanonize::Dataset&, int)’ defined but not used [-Wunused-function]
162 | static bool fillDataset(Dataset& dataset, const Handle<Array>& datasetArray) {
| ^~~~~~~~~~~
make: *** [urdna2015.target.mk:113: Release/obj.target/urdna2015/lib/native/addon.o] Error 1
make: Leaving directory '/home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/node-gyp/lib/build.js:190:23)
gyp ERR! stack at ChildProcess.emit (events.js:209:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 5.2.11-arch1-1-ARCH
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize
gyp ERR! node -v v12.9.1
gyp ERR! node-gyp -v v5.0.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] 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/eko/.npm/_logs/2019-09-07T16_22_15_820Z-debug.log
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.