UPDATE: Doesn’t seem to be an issue with couchbase 2.6.9
Hi @brett19,
I’m running into the same issue (couchbase v2.4.3, node v12.14.0, running on OSX Catalina 10.15.1). For me 15 errors are produced. I will list them below in case they’re helpful. Nodejs12 did upgrade to use TLS 1.3 as default.
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
In file included from ../node_modules/nan/nan.h:203:
In file included from ../node_modules/nan/nan_new.h:189:
../node_modules/nan/nan_implementation_12_inl.h:103:42: error: no viable conversion from 'v8::Isolate *' to
'Local<v8::Context>'
return scope.Escape(v8::Function::New( isolate
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
In file included from ../node_modules/nan/nan.h:203:
In file included from ../node_modules/nan/nan_new.h:189:
../node_modules/nan/nan_implementation_12_inl.h:337:37: error: too few arguments to function call, expected 2, have
1
return v8::StringObject::New(value).As<v8::StringObject>();
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
In file included from ../node_modules/nan/nan.h:203:
In file included from ../node_modules/nan/nan_new.h:189:
../node_modules/nan/nan_implementation_12_inl.h:337:58: error: expected '(' for function-style cast or type
construction
return v8::StringObject::New(value).As<v8::StringObject>();
../node_modules/nan/nan_implementation_12_inl.h:337:60: error: expected expression
return v8::StringObject::New(value).As<v8::StringObject>();
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
../node_modules/nan/nan.h:916:44: error: no matching member function for call to 'ToString'
v8::Local<v8::String> string = from->ToString();
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
../node_modules/nan/nan.h:926:37: error: cannot initialize a parameter of type 'v8::Isolate *' with an lvalue of
type 'char *'
length_ = string->WriteUtf8(str_, static_cast<int>(len), 0, flags);
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
In file included from ../node_modules/nan/nan.h:2365:
../node_modules/nan/nan_object_wrap.h:24:25: error: no member named 'IsNearDeath' in 'Nan::Persistent<v8::Object,
v8::NonCopyablePersistentTraits<v8::Object> >'
assert(persistent().IsNearDeath());
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:40:
In file included from ../node_modules/nan/nan.h:2365:
../node_modules/nan/nan_object_wrap.h:124:26: error: no member named 'IsNearDeath' in 'Nan::Persistent<v8::Object,
v8::NonCopyablePersistentTraits<v8::Object> >'
assert(wrap->handle_.IsNearDeath());
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:59:
../src/cas.h:33:16: error: no template named 'Handle' in namespace 'v8'
static v8::Handle<v8::Value> CreateCas(uint64_t);
~~~~^
In file included from ../src/couchbase_impl.cc:21:
In file included from ../src/couchbase_impl.h:60:
../src/token.h:38:16: error: no template named 'Handle' in namespace 'v8'
static v8::Handle<v8::Value> CreateToken(lcb_t instance, const lcb_MUTATION_TOKEN*);
../src/token.h:39:16: error: no template named 'Handle' in namespace 'v8'
static v8::Handle<v8::Value> CreateToken(lcb_t instance, int cbtype, const lcb_RESPBASE*);
In file included from ../src/couchbase_impl.cc:21:
../src/couchbase_impl.h:72:11: error: no member named 'Handle' in namespace 'v8'
using v8::Handle;
~~~~^
../src/couchbase_impl.h:101:12: error: no template named 'Handle'
static Handle<Object> createConstants();
^
../src/couchbase_impl.h:145:5: error: no template named 'Handle'
Handle<Value> decodeDoc(const void *bytes, size_t nbytes, lcb_U32 flags);
^
../src/couchbase_impl.cc:107:1: error: no template named 'Handle'
Handle<Value> CouchbaseImpl::decodeDoc(
../src/couchbase_impl.cc:116:16: error: no viable conversion from returned value of type 'v8::Local<v8::Value>' to
function return type 'int'
return transDecodeFunc->Call(1, args);
../src/couchbase_impl.cc:119:12: error: no viable conversion from returned value of type 'Local<v8::Value>' to
function return type 'int'
return DefaultTranscoder::decode(bytes, nbytes, flags);
../src/couchbase_impl.cc:140:15: error: use of undeclared identifier 'Handle'; did you mean 'handle'?
Handle<Object> encObj = res.As<Object>();
handle
../node_modules/nan/nan_object_wrap.h:42:32: note: 'handle' declared here
inline v8::Local<v8::Object> handle() const {
../src/couchbase_impl.cc:140:15: error: 'handle' does not name a template but is followed by template arguments
Handle<Object> encObj = res.As<Object>();