With the latest node.js this doesn't compile anymore.
It looks like some argument count has changed.
make: Entering directory '/src/tor/node_modules/fast-xml2js/build'
CXX(target) Release/obj.target/fast-xml2js/fast-xml2js.o
../fast-xml2js.cpp: In function 'void fastxml2js::ParseString(const v8::FunctionCallbackInfo<v8::Value>&)':
../fast-xml2js.cpp:46:46: warning: 'v8::Local<v8::String> v8::Value::ToString() const' is deprecated: Use maybe version [-Wdeprecated-declarations]
String::Utf8Value param1(args[0]->ToString());
^
In file included from /root/.node-gyp/11.11.0/include/node/node.h:63:0,
from ../fast-xml2js.cpp:2:
/root/.node-gyp/11.11.0/include/node/v8.h:10251:15: note: declared here
Local<String> Value::ToString() const {
^~~~~
../fast-xml2js.cpp:46:47: warning: 'v8::String::Utf8Value::Utf8Value(v8::Local<v8::Value>)' is deprecated: Use Isolate version [-Wdeprecated-declarations]
String::Utf8Value param1(args[0]->ToString());
^
In file included from /root/.node-gyp/11.11.0/include/node/v8.h:26:0,
from /root/.node-gyp/11.11.0/include/node/node.h:63,
from ../fast-xml2js.cpp:2:
/root/.node-gyp/11.11.0/include/node/v8.h:2992:28: note: declared here
explicit Utf8Value(Local<v8::Value> obj));
^
/root/.node-gyp/11.11.0/include/node/v8config.h:326:3: note: in definition of macro 'V8_DEPRECATED'
declarator __attribute__((deprecated(message)))
^~~~~~~~~~
../fast-xml2js.cpp:90:76: error: no matching function for call to 'v8::Object::HasOwnProperty(v8::Local<v8::String>)'
if(obj->HasOwnProperty(String::NewFromUtf8(isolate, node->name())))
^
In file included from /root/.node-gyp/11.11.0/include/node/node.h:63:0,
from ../fast-xml2js.cpp:2:
/root/.node-gyp/11.11.0/include/node/v8.h:3617:37: note: candidate: v8::Maybe<bool> v8::Object::HasOwnProperty(v8::Local<v8::Context>, v8::Local<v8::Name>)
V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context,
^~~~~~~~~~~~~~
/root/.node-gyp/11.11.0/include/node/v8.h:3617:37: note: candidate expects 2 arguments, 1 provided
/root/.node-gyp/11.11.0/include/node/v8.h:3619:37: note: candidate: v8::Maybe<bool> v8::Object::HasOwnProperty(v8::Local<v8::Context>, uint32_t)
V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context,
^~~~~~~~~~~~~~
/root/.node-gyp/11.11.0/include/node/v8.h:3619:37: note: candidate expects 2 arguments, 1 provided
../fast-xml2js.cpp:113:76: error: no matching function for call to 'v8::Object::HasOwnProperty(v8::Local<v8::String>)'
if(obj->HasOwnProperty(String::NewFromUtf8(isolate, node->name())))
^
In file included from /root/.node-gyp/11.11.0/include/node/node.h:63:0,
from ../fast-xml2js.cpp:2:
/root/.node-gyp/11.11.0/include/node/v8.h:3617:37: note: candidate: v8::Maybe<bool> v8::Object::HasOwnProperty(v8::Local<v8::Context>, v8::Local<v8::Name>)
V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context,
^~~~~~~~~~~~~~
/root/.node-gyp/11.11.0/include/node/v8.h:3617:37: note: candidate expects 2 arguments, 1 provided
/root/.node-gyp/11.11.0/include/node/v8.h:3619:37: note: candidate: v8::Maybe<bool> v8::Object::HasOwnProperty(v8::Local<v8::Context>, uint32_t)
V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context,
^~~~~~~~~~~~~~
/root/.node-gyp/11.11.0/include/node/v8.h:3619:37: note: candidate expects 2 arguments, 1 provided
make: *** [fast-xml2js.target.mk:97: Release/obj.target/fast-xml2js/fast-xml2js.o] Error 1
make: Leaving directory '/src/tor/node_modules/fast-xml2js/build'