Build failing
ardentbriar opened this issue · 2 comments
Prerequisites
- Put an X between the brackets on this line if you have done all of the following:
- Reproduced the problem in Safe Mode: https://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
- Followed all applicable steps in the debugging guide: https://flight-manual.atom.io/hacking-atom/sections/debugging/
- Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
- Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
- Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages
Description
Builds are currently failing. This failed build on Travis is an unchanged copy of master
:
https://travis-ci.org/github/ardentbriar/tree-view/jobs/700467325
Steps to Reproduce
- Clone a fresh copy of
tree-view
. - Run
apm install
to install deps.
Expected behavior:
Deps install successfully.
Actual behavior:
The node-gyp build of pathwatcher
fails. I see the same error in the Travis build and locally:
$ apm install
Installing modules ✗
> pathwatcher@8.0.2 install /home/user/repo/github/tree-view/node_modules/pathwatcher
> node-gyp rebuild
make: Entering directory '/home/user/repo/github/tree-view/node_modules/pathwatcher/build'
CXX(target) Release/obj.target/pathwatcher/src/main.o
make: Leaving directory '/home/user/repo/github/tree-view/node_modules/pathwatcher/build'
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8-internal.h:13,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:25,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8config.h:307:49: warning: ‘BufferReference’ is deprecated: Use MemorySpan<const uint8_t> [-Wdeprecated-declarations]
307 | declarator __attribute__((deprecated(message)))
| ^
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:4444:3: note: in expansion of macro ‘V8_DEPRECATED’
4444 | V8_DEPRECATED("Use CompiledWasmModule::GetWireBytesRef()",
| ^~~~~~~~~~~~~
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:4386:58: note: declared here
4386 | V8_DEPRECATED("Use MemorySpan<const uint8_t>", struct) BufferReference {
| ^~~~~~~~~~~~~~~
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8-internal.h:13,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:25,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8config.h:307:49: warning: ‘v8::WasmModuleObject::SerializedModule’ is deprecated: Use OwnedBuffer [-Wdeprecated-declarations]
307 | declarator __attribute__((deprecated(message)))
| ^
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:4457:3: note: in expansion of macro ‘V8_DEPRECATED’
4457 | V8_DEPRECATED("Use CompiledWasmModule::Serialize()",
| ^~~~~~~~~~~~~
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:4380:55: note: declared here
4380 | std::pair<std::unique_ptr<const uint8_t[]>, size_t> SerializedModule;
| ^~~~~~~~~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h: In member function ‘v8::Local<v8::Boolean> v8::Value::ToBoolean() const’:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:10172:62: warning: ‘v8::MaybeLocal<v8::Boolean> v8::Value::ToBoolean(v8::Local<v8::Context>) const’ is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
10172 | return ToBoolean(Isolate::GetCurrent()->GetCurrentContext())
| ^
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8-internal.h:13,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:25,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:2388:63: note: declared here
2388 | V8_WARN_UNUSED_RESULT MaybeLocal<Boolean> ToBoolean(
| ^~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
322 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../../nan/nan_converters.h:67,
from ../../nan/nan.h:222,
from ../src/common.h:6,
from ../src/main.cc:1:
../../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/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8-internal.h:13,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:25,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:2388:63: note: declared here
2388 | V8_WARN_UNUSED_RESULT MaybeLocal<Boolean> ToBoolean(
| ^~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
322 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../../nan/nan_converters.h:67,
from ../../nan/nan.h:222,
from ../src/common.h:6,
from ../src/main.cc:1:
../../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/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8-internal.h:13,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:25,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:2433:55: note: declared here
2433 | V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
| ^~~~~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
322 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from ../src/common.h:6,
from ../src/main.cc:1:
../../nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker*)’:
../../nan/nan.h:2232: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]
2232 | , reinterpret_cast<uv_after_work_cb>(AsyncExecuteComplete)
| ^
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node_object_wrap.h:26,
from ../../nan/nan.h:55,
from ../src/common.h:6,
from ../src/main.cc:1:
../../nan/nan_object_wrap.h: In destructor ‘virtual Nan::ObjectWrap::~ObjectWrap()’:
../../nan/nan_object_wrap.h:24:37: warning: ‘bool v8::PersistentBase<T>::IsNearDeath() const [with T = v8::Object]’ is deprecated: Garbage collection internal state should not be relied on. [-Wdeprecated-declarations]
24 | assert(persistent().IsNearDeath());
| ^
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8-internal.h:13,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:25,
from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:573:22: note: declared here
573 | V8_INLINE bool IsNearDeath() const);
| ^~~~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
322 | declarator __attribute__((deprecated(message)))
| ^~~~~~~~~~
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node_object_wrap.h:26,
from ../../nan/nan.h:55,
from ../src/common.h:6,
from ../src/main.cc:1:
../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’:
../../nan/nan_object_wrap.h:127:38: warning: ‘bool v8::PersistentBase<T>::IsNearDeath() const [with T = v8::Object]’ is deprecated: Garbage collection internal state should not be relied on. [-Wdeprecated-declarations]
127 | assert(wrap->handle_.IsNearDeath());
| ^
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:9579:6: note: declared here
9579 | bool PersistentBase<T>::IsNearDeath() const {
| ^~~~~~~~~~~~~~~~~
In file included from ../src/handle_map.h:7,
from ../src/main.cc:2:
../src/unsafe_persistent.h: At global scope:
../src/unsafe_persistent.h:30:9: error: ‘v8::Handle’ has not been declared
30 | , v8::Handle<T> obj) {
| ^~~~~~
../src/unsafe_persistent.h:30:15: error: expected ‘,’ or ‘...’ before ‘<’ token
30 | , v8::Handle<T> obj) {
| ^
../src/unsafe_persistent.h: In function ‘void NanAssignUnsafePersistent(NanUnsafePersistent<T>&, int)’:
../src/unsafe_persistent.h:32:64: error: ‘obj’ was not declared in this scope
32 | handle = NanUnsafePersistent<T>(v8::Isolate::GetCurrent(), obj);
| ^~~
In file included from ../src/main.cc:2:
../src/handle_map.h: At global scope:
../src/handle_map.h:11:26: error: ‘Handle’ has not been declared
11 | static void Initialize(Handle<Object> target);
| ^~~~~~
../src/handle_map.h:11:32: error: expected ‘,’ or ‘...’ before ‘<’ token
11 | static void Initialize(Handle<Object> target);
| ^
../src/main.cc:6:11: error: variable or field ‘Init’ declared void
6 | void Init(Handle<Object> exports) {
| ^~~~~~
../src/main.cc:6:11: error: ‘Handle’ was not declared in this scope; did you mean ‘HandleMap’?
6 | void Init(Handle<Object> exports) {
| ^~~~~~
| HandleMap
../src/main.cc:6:24: error: expected primary-expression before ‘>’ token
6 | void Init(Handle<Object> exports) {
| ^
../src/main.cc:6:26: error: ‘exports’ was not declared in this scope
6 | void Init(Handle<Object> exports) {
| ^~~~~~~
In file included from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
../src/main.cc:19:26: error: ‘Init’ was not declared in this scope; did you mean ‘node::Init’?
19 | NODE_MODULE(pathwatcher, Init)
| ^~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:560:36: note: in definition of macro ‘NODE_MODULE_X’
560 | (node::addon_register_func) (regfunc), \
| ^~~~~~~
../src/main.cc:19:1: note: in expansion of macro ‘NODE_MODULE’
19 | NODE_MODULE(pathwatcher, Init)
| ^~~~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:221:18: note: ‘node::Init’ declared here
221 | NODE_EXTERN void Init(int* argc,
| ^~~~
In file included from /home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node.h:63,
from ../../nan/nan.h:53,
from ../src/common.h:6,
from ../src/main.cc:1:
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/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/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/node_object_wrap.h:84:78: required from here
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:9634: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]
9634 | reinterpret_cast<Callback>(callback), type);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/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/user/.atom/.node-gyp/.cache/node-gyp/5.0.13/include/node/v8.h:9634: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]
make: *** [pathwatcher.target.mk:112: Release/obj.target/pathwatcher/src/main.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (events.js:198:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12)
gyp ERR! System Linux 4.19.125-1.pvops.qubes.x86_64
gyp ERR! command "/usr/share/atom/resources/app/apm/bin/node" "/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/user/repo/github/tree-view/node_modules/pathwatcher
gyp ERR! node -v v10.20.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! pathwatcher@8.0.2 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the pathwatcher@8.0.2 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/user/.atom/.apm/_logs/2020-06-21T00_06_18_078Z-debug.log
Reproduces how often:
100%.
Versions
Full version info from the failing Travis build:
Using Atom version:
Atom : 1.48.0
Electron: 5.0.13
Chrome : 73.0.3683.121
Node : 12.0.0
Using APM version:
apm 2.5.0
npm 6.14.5
node 10.20.1 x64
atom 1.48.0
python 2.7.17
git 2.24.1
Additional Information
My suspicion is a change to the Atom version has caused this. The last Travis build in this repo succeeded on the same code. That happened 3 months ago.
https://travis-ci.org/github/atom/tree-view/jobs/667366843
The versions are different:
Using Atom version:
Atom : 1.45.0
Electron: 4.2.7
Chrome : 69.0.3497.128
Node : 10.11.0
Using APM version:
apm 2.4.3
npm 6.2.0
node 10.2.1 x64
atom 1.45.0
python 2.7.17
git 2.24.1
In the failing build, Atom and apm minor versions have changed, and Electron, Chrome, and Node major versions have changed.
Thanks for reviewing.
An AppVeyor build on master
also fails. I haven't looked at the details: