thegecko / webbluetooth

Node.js implementation of the Web Bluetooth Specification
https://thegecko.github.io/webbluetooth/
MIT License
141 stars 21 forks source link

Build error on raspberry 4 #179

Closed Apollon77 closed 2 months ago

Apollon77 commented 3 months ago

When using webbluetooth I get (after installing cmake):

ingof@raspi16g:~/official-matter.js$ npm i
npm ERR! code 1
npm ERR! path /home/ingof/official-matter.js/node_modules/webbluetooth
npm ERR! command failed
npm ERR! command sh -c prebuild-install --backend cmake-js --runtime napi || cmake-js rebuild
npm ERR! Not searching for unused variables given on the command line.
npm ERR! -- The C compiler identification is GNU 11.4.0
npm ERR! -- The CXX compiler identification is GNU 11.4.0
npm ERR! -- Detecting C compiler ABI info
npm ERR! -- Detecting C compiler ABI info - done
npm ERR! -- Check for working C compiler: /usr/bin/cc - skipped
npm ERR! -- Detecting C compile features
npm ERR! -- Detecting C compile features - done
npm ERR! -- Detecting CXX compiler ABI info
npm ERR! -- Detecting CXX compiler ABI info - done
npm ERR! -- Check for working CXX compiler: /usr/bin/c++ - skipped
npm ERR! -- Detecting CXX compile features
npm ERR! -- Detecting CXX compile features - done
npm ERR! -- Configuring incomplete, errors occurred!
npm ERR! See also "/home/ingof/official-matter.js/node_modules/webbluetooth/build/CMakeFiles/CMakeOutput.log".
npm ERR! prebuild-install warn install No prebuilt binaries found (target=6 runtime=napi arch=arm64 libc= platform=linux)
npm ERR! info TOOL Using Unix Makefiles generator.
npm ERR! info CMD CLEAN
npm ERR! info RUN [
npm ERR! info RUN   'cmake',
npm ERR! info RUN   '-E',
npm ERR! info RUN   'remove_directory',
npm ERR! info RUN   '/home/ingof/official-matter.js/node_modules/webbluetooth/build'
npm ERR! info RUN ]
npm ERR! info CMD CONFIGURE
npm ERR! info RUN [
npm ERR! info RUN   'cmake',
npm ERR! info RUN   '/home/ingof/official-matter.js/node_modules/webbluetooth',
npm ERR! info RUN   '--no-warn-unused-cli',
npm ERR! info RUN   '-G',
npm ERR! info RUN   'Unix Makefiles',
npm ERR! info RUN   '-DCMAKE_JS_VERSION=7.3.0',
npm ERR! info RUN   '-DCMAKE_BUILD_TYPE=Release',
npm ERR! info RUN   '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/home/ingof/official-matter.js/node_modules/webbluetooth/build/Release',
npm ERR! info RUN   '-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded$<$<CONFIG:Debug>:Debug>',
npm ERR! info RUN   '-DCMAKE_JS_INC=/home/ingof/official-matter.js/node_modules/node-api-headers/include;/home/ingof/official-matter.js/node_modules/webbluetooth/node_modules/node-addon-api',
npm ERR! info RUN   '-DCMAKE_JS_SRC=',
npm ERR! info RUN   '-DNODE_RUNTIME=node',
npm ERR! info RUN   '-DNODE_RUNTIMEVERSION=18.17.1',
npm ERR! info RUN   '-DNODE_ARCH=arm64',
npm ERR! info RUN   '-DCMAKE_JS_LIB=',
npm ERR! info RUN   '-DCMAKE_CXX_FLAGS=-DBUILDING_NODE_EXTENSION'
npm ERR! info RUN ]
npm ERR! CMake Error at CMakeLists.txt:14 (add_subdirectory):
npm ERR!   add_subdirectory given source "SimpleBLE/simpleble" which is not an
npm ERR!   existing directory.
npm ERR! 
npm ERR! 
npm ERR! ERR! OMG Process terminated: 1

npm ERR! A complete log of this run can be found in: /home/ingof/.npm/_logs/2024-03-23T16_03_00_266Z-debug-0.log

It seems that SimpleBLE is not delivered as source files in the npm package -.. which is true ... https://github.com/thegecko/webbluetooth/blob/master/.npmignore#L4

SHould it be added to allow fallback local builds?

thegecko commented 3 months ago

SHould it be added to allow fallback local builds?

Hmm, good question. We should either ship the source or a prebuilt binary for your scenario. We currently do neither.

I could add the missing prebuild targets similar to https://github.com/node-usb/node-usb/blob/master/.github/workflows/prebuild.yml#L18 which would be the best long term fix, but short-term would you mind crafting a PR to modify the .vscodeignore file to ship exactly what you need to build locally?

Apollon77 commented 3 months ago

Ideally both :-) So shiop soiurce that - for the special cases you can not prebuild - always a local build works ... and yes you could add common sources like armhf, armv7 and such targets too. But that could never be really complete, so I would go both ways. Yes I can do a PR

FirokOtaku commented 3 months ago

I get the same error when trying to run npm i webbluetooth on a X64 Windows machine. 🤣

thegecko commented 2 months ago

I get the same error when trying to run npm i webbluetooth on a X64 Windows machine. 🤣

Which architecture do you have?

FirokOtaku commented 2 months ago

I get the same error when trying to run npm i webbluetooth on a X64 Windows machine. 🤣

Which architecture do you have?

All my machines are x86_64 based.

thegecko commented 2 months ago

All my machines are x86_64 based.

That should be fine, we bundle the native binary for that. Can you share any further logs?

FirokOtaku commented 2 months ago

That should be fine, we bundle the native binary for that. Can you share any further logs?

Sure.


Commands used:

cd /d "T:\Projects\web-bluetooth-test"
npm install webbluetooth

Short log in command line ```log npm ERR! code 1 npm ERR! path T:\Projects\web-bluetooth-test\node_modules\webbluetooth npm ERR! command failed npm ERR! command C:\Windows\system32\cmd.exe /d /s /c prebuild-install --backend cmake-js --runtime napi || cmake-js rebuild npm ERR! Not searching for unused variables given on the command line. npm ERR! -- Selecting Windows SDK version 10.0.22621.0 to target Windows 10.0.19045. npm ERR! -- The C compiler identification is MSVC 19.38.33133.0 npm ERR! -- The CXX compiler identification is MSVC 19.38.33133.0 npm ERR! -- Detecting C compiler ABI info npm ERR! -- Detecting C compiler ABI info - done npm ERR! -- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped npm ERR! -- Detecting C compile features npm ERR! -- Detecting C compile features - done npm ERR! -- Detecting CXX compiler ABI info npm ERR! -- Detecting CXX compiler ABI info - done npm ERR! -- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped npm ERR! -- Detecting CXX compile features npm ERR! -- Detecting CXX compile features - done npm ERR! Microsoft (R) Library Manager Version 14.38.33133.0 npm ERR! Copyright (C) Microsoft Corporation. All rights reserved. npm ERR! npm ERR! 正在创建库 T:\Projects\web-bluetooth-test\node_modules\webbluetooth\build\node.lib 和对象 T:\Projects\web-bluetooth-test\node_modules\webbluetooth\build\node.exp npm ERR! -- Configuring incomplete, errors occurred! npm ERR! prebuild-install warn install aborted npm ERR! info find VS using VS2022 (17.8.34330.188) found at: npm ERR! info find VS "C:\Program Files\Microsoft Visual Studio\2022\Community" npm ERR! info find VS run with --verbose for detailed information npm ERR! info TOOL Using Visual Studio 17 2022 generator. npm ERR! info CMD CLEAN npm ERR! info RUN [ npm ERR! info RUN 'cmake', npm ERR! info RUN '-E', npm ERR! info RUN 'remove_directory', npm ERR! info RUN 'T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build' npm ERR! info RUN ] npm ERR! info CMD CONFIGURE npm ERR! info find VS using VS2022 (17.8.34330.188) found at: npm ERR! info find VS "C:\Program Files\Microsoft Visual Studio\2022\Community" npm ERR! info find VS run with --verbose for detailed information npm ERR! info RUN [ npm ERR! info RUN 'cmake', npm ERR! info RUN 'T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth', npm ERR! info RUN '--no-warn-unused-cli', npm ERR! info RUN '-G', npm ERR! info RUN 'Visual Studio 17 2022', npm ERR! info RUN '-A', npm ERR! info RUN 'x64', npm ERR! info RUN '-DCMAKE_JS_VERSION=7.3.0', npm ERR! info RUN '-DCMAKE_BUILD_TYPE=Release', npm ERR! info RUN '-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build', npm ERR! info RUN '-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded$<$:Debug>', npm ERR! info RUN '-DCMAKE_JS_INC=T:\\Projects\\web-bluetooth-test\\node_modules\\node-api-headers\\include;T:\\Projects\\web-bluetooth-test\\node_modules\\node-addon-api', npm ERR! info RUN '-DCMAKE_JS_SRC=T:/Projects/web-bluetooth-test/node_modules/cmake-js/lib/cpp/win_delay_load_hook.cc', npm ERR! info RUN '-DNODE_RUNTIME=node', npm ERR! info RUN '-DNODE_RUNTIMEVERSION=20.3.1', npm ERR! info RUN '-DNODE_ARCH=x64', npm ERR! info RUN '-DCMAKE_JS_LIB=T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build\\node.lib', npm ERR! info RUN '-DCMAKE_JS_NODELIB_DEF=T:\\Projects\\web-bluetooth-test\\node_modules\\node-api-headers\\def\\node_api.def', npm ERR! info RUN '-DCMAKE_JS_NODELIB_TARGET=T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build\\node.lib', npm ERR! info RUN '-DCMAKE_SHARED_LINKER_FLAGS=/DELAYLOAD:NODE.EXE' npm ERR! info RUN ] npm ERR! CMake Error at CMakeLists.txt:14 (add_subdirectory): npm ERR! add_subdirectory given source "SimpleBLE/simpleble" which is not an npm ERR! existing directory. npm ERR! npm ERR! npm ERR! ERR! OMG Process terminated: 1 npm ERR! A complete log of this run can be found in: C:\Users\firok\AppData\Local\npm-cache\_logs\2024-04-16T01_30_15_193Z-debug-0.log ```
Full log in log file ```log 0 verbose cli C:\Environments\nodejs\node.exe C:\Environments\nodejs\node_modules\npm\bin\npm-cli.js 1 info using npm@9.6.7 2 info using node@v20.3.1 3 timing npm:load:whichnode Completed in 2ms 4 timing config:load:defaults Completed in 2ms 5 timing config:load:file:C:\Environments\nodejs\node_modules\npm\npmrc Completed in 4ms 6 timing config:load:builtin Completed in 5ms 7 timing config:load:cli Completed in 1ms 8 timing config:load:env Completed in 1ms 9 timing config:load:file:T:\Projects\web-bluetooth-test\.npmrc Completed in 0ms 10 timing config:load:project Completed in 1ms 11 timing config:load:file:C:\Users\firok\.npmrc Completed in 1ms 12 timing config:load:user Completed in 1ms 13 timing config:load:file:C:\Users\firok\AppData\Roaming\npm\etc\npmrc Completed in 0ms 14 timing config:load:global Completed in 0ms 15 timing config:load:setEnvs Completed in 1ms 16 timing config:load Completed in 13ms 17 timing npm:load:configload Completed in 13ms 18 timing npm:load:mkdirpcache Completed in 1ms 19 timing npm:load:mkdirplogs Completed in 0ms 20 verbose title npm install webbluetooth 21 verbose argv "install" "webbluetooth" 22 timing npm:load:setTitle Completed in 1ms 23 timing config:load:flatten Completed in 2ms 24 timing npm:load:display Completed in 3ms 25 verbose logfile logs-max:10 dir:C:\Users\firok\AppData\Local\npm-cache\_logs\2024-04-16T01_30_15_193Z- 26 verbose logfile C:\Users\firok\AppData\Local\npm-cache\_logs\2024-04-16T01_30_15_193Z-debug-0.log 27 timing npm:load:logFile Completed in 11ms 28 timing npm:load:timers Completed in 0ms 29 timing npm:load:configScope Completed in 0ms 30 timing npm:load Completed in 32ms 31 timing config:load:flatten Completed in 0ms 32 timing arborist:ctor Completed in 0ms 33 timing arborist:ctor Completed in 1ms 34 silly logfile start cleaning logs, removing 2 files 35 timing idealTree:init Completed in 15ms 36 timing idealTree:userRequests Completed in 3ms 37 silly idealTree buildDeps 38 silly fetch manifest webbluetooth@* 39 silly logfile done cleaning log files 40 http fetch GET 200 https://registry.npmjs.org/webbluetooth 1878ms (cache revalidated) 41 silly placeDep ROOT webbluetooth@3.2.1 OK for: want: * 42 silly fetch manifest bindings@^1.5.0 43 silly fetch manifest cmake-js@^7.0.0 44 silly fetch manifest node-addon-api@^7.0.0 45 silly fetch manifest prebuild-install@^7.1.1 46 http fetch GET 200 https://registry.npmjs.org/node-addon-api 308ms (cache revalidated) 47 http fetch GET 200 https://registry.npmjs.org/cmake-js 1609ms (cache revalidated) 48 http fetch GET 200 https://registry.npmjs.org/prebuild-install 3793ms (cache revalidated) 49 http fetch GET 200 https://registry.npmjs.org/bindings 4035ms (cache revalidated) 50 timing idealTree:#root Completed in 5925ms 51 silly placeDep ROOT bindings@1.5.0 OK for: webbluetooth@3.2.1 want: ^1.5.0 52 silly fetch manifest file-uri-to-path@1.0.0 53 silly placeDep ROOT cmake-js@7.3.0 OK for: webbluetooth@3.2.1 want: ^7.0.0 54 silly fetch manifest axios@^1.6.5 55 silly fetch manifest debug@^4 56 silly fetch manifest fs-extra@^11.2.0 57 silly fetch manifest lodash.isplainobject@^4.0.6 58 silly fetch manifest memory-stream@^1.0.0 59 silly fetch manifest node-api-headers@^1.1.0 60 silly fetch manifest npmlog@^6.0.2 61 silly fetch manifest rc@^1.2.7 62 silly fetch manifest semver@^7.5.4 63 silly fetch manifest tar@^6.2.0 64 silly fetch manifest url-join@^4.0.1 65 silly fetch manifest which@^2.0.2 66 silly fetch manifest yargs@^17.7.2 67 silly placeDep ROOT node-addon-api@7.1.0 OK for: webbluetooth@3.2.1 want: ^7.0.0 68 silly placeDep ROOT prebuild-install@7.1.2 OK for: webbluetooth@3.2.1 want: ^7.1.1 69 silly fetch manifest detect-libc@^2.0.0 70 silly fetch manifest expand-template@^2.0.3 71 silly fetch manifest github-from-package@0.0.0 72 silly fetch manifest minimist@^1.2.3 73 silly fetch manifest mkdirp-classic@^0.5.3 74 silly fetch manifest napi-build-utils@^1.0.1 75 silly fetch manifest node-abi@^3.3.0 76 silly fetch manifest pump@^3.0.0 77 silly fetch manifest simple-get@^4.0.0 78 silly fetch manifest tar-fs@^2.0.0 79 silly fetch manifest tunnel-agent@^0.6.0 80 http fetch GET 200 https://registry.npmjs.org/axios 363ms (cache revalidated) 81 http fetch GET 200 https://registry.npmjs.org/detect-libc 364ms (cache revalidated) 82 http fetch GET 200 https://registry.npmjs.org/lodash.isplainobject 375ms (cache revalidated) 83 http fetch GET 200 https://registry.npmjs.org/npmlog 448ms (cache revalidated) 84 http fetch GET 200 https://registry.npmjs.org/yargs 554ms (cache revalidated) 85 http fetch GET 200 https://registry.npmjs.org/expand-template 577ms (cache revalidated) 86 http fetch GET 200 https://registry.npmjs.org/memory-stream 639ms (cache revalidated) 87 http fetch GET 200 https://registry.npmjs.org/simple-get 770ms (cache revalidated) 88 http fetch GET 200 https://registry.npmjs.org/rc 793ms (cache revalidated) 89 http fetch GET 200 https://registry.npmjs.org/semver 817ms (cache revalidated) 90 http fetch GET 200 https://registry.npmjs.org/pump 817ms (cache revalidated) 91 http fetch GET 200 https://registry.npmjs.org/url-join 1003ms (cache revalidated) 92 http fetch GET 200 https://registry.npmjs.org/node-abi 1031ms (cache updated) 93 http fetch GET 200 https://registry.npmjs.org/tar 1065ms (cache updated) 94 http fetch GET 200 https://registry.npmjs.org/tunnel-agent 1186ms (cache revalidated) 95 http fetch GET 200 https://registry.npmjs.org/minimist 1279ms (cache revalidated) 96 http fetch GET 200 https://registry.npmjs.org/node-api-headers 1292ms (cache revalidated) 97 http fetch GET 200 https://registry.npmjs.org/fs-extra 1509ms (cache revalidated) 98 http fetch GET 200 https://registry.npmjs.org/github-from-package 1558ms (cache revalidated) 99 http fetch GET 200 https://registry.npmjs.org/file-uri-to-path 1938ms (cache revalidated) 100 http fetch GET 200 https://registry.npmjs.org/tar-fs 2063ms (cache revalidated) 101 http fetch GET 200 https://registry.npmjs.org/which 2278ms (cache revalidated) 102 http fetch GET 200 https://registry.npmjs.org/napi-build-utils 2286ms (cache revalidated) 103 http fetch GET 200 https://registry.npmjs.org/debug 2541ms (cache revalidated) 104 http fetch GET 200 https://registry.npmjs.org/mkdirp-classic 5021ms (cache revalidated) 105 timing idealTree:node_modules/webbluetooth Completed in 5040ms 106 silly placeDep ROOT file-uri-to-path@1.0.0 OK for: bindings@1.5.0 want: 1.0.0 107 timing idealTree:node_modules/bindings Completed in 2ms 108 silly placeDep ROOT axios@1.6.8 OK for: cmake-js@7.3.0 want: ^1.6.5 109 silly fetch manifest follow-redirects@^1.15.6 110 silly fetch manifest form-data@^4.0.0 111 silly fetch manifest proxy-from-env@^1.1.0 112 silly placeDep ROOT debug@4.3.4 OK for: cmake-js@7.3.0 want: ^4 113 silly fetch manifest ms@2.1.2 114 silly placeDep ROOT fs-extra@11.2.0 OK for: cmake-js@7.3.0 want: ^11.2.0 115 silly fetch manifest graceful-fs@^4.2.0 116 silly fetch manifest jsonfile@^6.0.1 117 silly fetch manifest universalify@^2.0.0 118 silly placeDep ROOT lodash.isplainobject@4.0.6 OK for: cmake-js@7.3.0 want: ^4.0.6 119 silly placeDep ROOT memory-stream@1.0.0 OK for: cmake-js@7.3.0 want: ^1.0.0 120 silly fetch manifest readable-stream@^3.4.0 121 silly placeDep ROOT node-api-headers@1.1.0 OK for: cmake-js@7.3.0 want: ^1.1.0 122 silly placeDep ROOT npmlog@6.0.2 OK for: cmake-js@7.3.0 want: ^6.0.2 123 silly fetch manifest are-we-there-yet@^3.0.0 124 silly fetch manifest console-control-strings@^1.1.0 125 silly fetch manifest gauge@^4.0.3 126 silly fetch manifest set-blocking@^2.0.0 127 silly placeDep ROOT rc@1.2.8 OK for: cmake-js@7.3.0 want: ^1.2.7 128 silly fetch manifest deep-extend@^0.6.0 129 silly fetch manifest ini@~1.3.0 130 silly fetch manifest minimist@^1.2.0 131 silly fetch manifest strip-json-comments@~2.0.1 132 silly placeDep ROOT semver@7.6.0 OK for: cmake-js@7.3.0 want: ^7.5.4 133 silly fetch manifest lru-cache@^6.0.0 134 silly placeDep ROOT tar@6.2.1 OK for: cmake-js@7.3.0 want: ^6.2.0 135 silly fetch manifest chownr@^2.0.0 136 silly fetch manifest fs-minipass@^2.0.0 137 silly fetch manifest minipass@^5.0.0 138 silly fetch manifest minizlib@^2.1.1 139 silly fetch manifest mkdirp@^1.0.3 140 silly fetch manifest yallist@^4.0.0 141 silly placeDep ROOT url-join@4.0.1 OK for: cmake-js@7.3.0 want: ^4.0.1 142 silly placeDep ROOT which@2.0.2 OK for: cmake-js@7.3.0 want: ^2.0.2 143 silly fetch manifest isexe@^2.0.0 144 silly placeDep ROOT yargs@17.7.2 OK for: cmake-js@7.3.0 want: ^17.7.2 145 silly fetch manifest cliui@^8.0.1 146 silly fetch manifest escalade@^3.1.1 147 silly fetch manifest get-caller-file@^2.0.5 148 silly fetch manifest require-directory@^2.1.1 149 silly fetch manifest string-width@^4.2.3 150 silly fetch manifest y18n@^5.0.5 151 silly fetch manifest yargs-parser@^21.1.1 152 http fetch GET 200 https://registry.npmjs.org/follow-redirects 345ms (cache revalidated) 153 http fetch GET 200 https://registry.npmjs.org/proxy-from-env 346ms (cache revalidated) 154 http fetch GET 200 https://registry.npmjs.org/universalify 340ms (cache revalidated) 155 http fetch GET 200 https://registry.npmjs.org/form-data 349ms (cache revalidated) 156 http fetch GET 200 https://registry.npmjs.org/gauge 356ms (cache revalidated) 157 http fetch GET 200 https://registry.npmjs.org/fs-minipass 349ms (cache revalidated) 158 http fetch GET 200 https://registry.npmjs.org/strip-json-comments 355ms (cache revalidated) 159 http fetch GET 200 https://registry.npmjs.org/deep-extend 363ms (cache revalidated) 160 http fetch GET 200 https://registry.npmjs.org/lru-cache 363ms (cache revalidated) 161 http fetch GET 200 https://registry.npmjs.org/graceful-fs 384ms (cache revalidated) 162 http fetch GET 200 https://registry.npmjs.org/ini 374ms (cache revalidated) 163 http fetch GET 200 https://registry.npmjs.org/readable-stream 385ms (cache revalidated) 164 http fetch GET 200 https://registry.npmjs.org/are-we-there-yet 387ms (cache revalidated) 165 http fetch GET 200 https://registry.npmjs.org/ms 399ms (cache revalidated) 166 http fetch GET 200 https://registry.npmjs.org/set-blocking 561ms (cache revalidated) 167 http fetch GET 200 https://registry.npmjs.org/jsonfile 576ms (cache revalidated) 168 http fetch GET 200 https://registry.npmjs.org/mkdirp 558ms (cache revalidated) 169 http fetch GET 200 https://registry.npmjs.org/minipass 564ms (cache revalidated) 170 http fetch GET 200 https://registry.npmjs.org/yargs-parser 561ms (cache revalidated) 171 http fetch GET 200 https://registry.npmjs.org/chownr 586ms (cache updated) 172 http fetch GET 200 https://registry.npmjs.org/require-directory 575ms (cache revalidated) 173 http fetch GET 200 https://registry.npmjs.org/escalade 580ms (cache revalidated) 174 http fetch GET 200 https://registry.npmjs.org/minizlib 588ms (cache updated) 175 http fetch GET 200 https://registry.npmjs.org/cliui 584ms (cache revalidated) 176 http fetch GET 200 https://registry.npmjs.org/console-control-strings 614ms (cache revalidated) 177 http fetch GET 200 https://registry.npmjs.org/yallist 605ms (cache revalidated) 178 http fetch GET 200 https://registry.npmjs.org/get-caller-file 602ms (cache revalidated) 179 http fetch GET 200 https://registry.npmjs.org/string-width 602ms (cache revalidated) 180 http fetch GET 200 https://registry.npmjs.org/isexe 610ms (cache revalidated) 181 http fetch GET 200 https://registry.npmjs.org/y18n 721ms (cache revalidated) 182 timing idealTree:node_modules/cmake-js Completed in 766ms 183 silly placeDep ROOT follow-redirects@1.15.6 OK for: axios@1.6.8 want: ^1.15.6 184 silly placeDep ROOT form-data@4.0.0 OK for: axios@1.6.8 want: ^4.0.0 185 silly fetch manifest asynckit@^0.4.0 186 silly fetch manifest combined-stream@^1.0.8 187 silly fetch manifest mime-types@^2.1.12 188 silly placeDep ROOT proxy-from-env@1.1.0 OK for: axios@1.6.8 want: ^1.1.0 189 http fetch GET 200 https://registry.npmjs.org/asynckit 250ms (cache revalidated) 190 http fetch GET 200 https://registry.npmjs.org/combined-stream 272ms (cache revalidated) 191 http fetch GET 200 https://registry.npmjs.org/mime-types 304ms (cache revalidated) 192 timing idealTree:node_modules/axios Completed in 309ms 193 silly placeDep ROOT ms@2.1.2 OK for: debug@4.3.4 want: 2.1.2 194 timing idealTree:node_modules/debug Completed in 0ms 195 timing idealTree:node_modules/file-uri-to-path Completed in 0ms 196 timing idealTree:node_modules/follow-redirects Completed in 0ms 197 silly placeDep ROOT asynckit@0.4.0 OK for: form-data@4.0.0 want: ^0.4.0 198 silly placeDep ROOT combined-stream@1.0.8 OK for: form-data@4.0.0 want: ^1.0.8 199 silly fetch manifest delayed-stream@~1.0.0 200 silly placeDep ROOT mime-types@2.1.35 OK for: form-data@4.0.0 want: ^2.1.12 201 silly fetch manifest mime-db@1.52.0 202 http fetch GET 200 https://registry.npmjs.org/delayed-stream 260ms (cache revalidated) 203 http fetch GET 200 https://registry.npmjs.org/mime-db 316ms (cache revalidated) 204 timing idealTree:node_modules/form-data Completed in 322ms 205 timing idealTree:node_modules/asynckit Completed in 0ms 206 silly placeDep ROOT delayed-stream@1.0.0 OK for: combined-stream@1.0.8 want: ~1.0.0 207 timing idealTree:node_modules/combined-stream Completed in 1ms 208 timing idealTree:node_modules/delayed-stream Completed in 0ms 209 silly placeDep ROOT graceful-fs@4.2.11 OK for: fs-extra@11.2.0 want: ^4.2.0 210 silly placeDep ROOT jsonfile@6.1.0 OK for: fs-extra@11.2.0 want: ^6.0.1 211 silly placeDep ROOT universalify@2.0.1 OK for: fs-extra@11.2.0 want: ^2.0.0 212 timing idealTree:node_modules/fs-extra Completed in 3ms 213 timing idealTree:node_modules/graceful-fs Completed in 0ms 214 timing idealTree:node_modules/jsonfile Completed in 0ms 215 timing idealTree:node_modules/lodash.isplainobject Completed in 0ms 216 silly placeDep ROOT readable-stream@3.6.2 OK for: memory-stream@1.0.0 want: ^3.4.0 217 silly fetch manifest inherits@^2.0.3 218 silly fetch manifest string_decoder@^1.1.1 219 silly fetch manifest util-deprecate@^1.0.1 220 http fetch GET 200 https://registry.npmjs.org/util-deprecate 243ms (cache revalidated) 221 http fetch GET 200 https://registry.npmjs.org/string_decoder 245ms (cache revalidated) 222 http fetch GET 200 https://registry.npmjs.org/inherits 272ms (cache revalidated) 223 timing idealTree:node_modules/memory-stream Completed in 274ms 224 silly placeDep ROOT mime-db@1.52.0 OK for: mime-types@2.1.35 want: 1.52.0 225 timing idealTree:node_modules/mime-types Completed in 1ms 226 timing idealTree:node_modules/mime-db Completed in 0ms 227 timing idealTree:node_modules/ms Completed in 0ms 228 timing idealTree:node_modules/node-addon-api Completed in 0ms 229 timing idealTree:node_modules/node-api-headers Completed in 0ms 230 silly placeDep ROOT are-we-there-yet@3.0.1 OK for: npmlog@6.0.2 want: ^3.0.0 231 silly fetch manifest delegates@^1.0.0 232 silly placeDep ROOT console-control-strings@1.1.0 OK for: npmlog@6.0.2 want: ^1.1.0 233 silly placeDep ROOT gauge@4.0.4 OK for: npmlog@6.0.2 want: ^4.0.3 234 silly fetch manifest aproba@^1.0.3 || ^2.0.0 235 silly fetch manifest color-support@^1.1.3 236 silly fetch manifest has-unicode@^2.0.1 237 silly fetch manifest signal-exit@^3.0.7 238 silly fetch manifest strip-ansi@^6.0.1 239 silly fetch manifest wide-align@^1.1.5 240 silly placeDep ROOT set-blocking@2.0.0 OK for: npmlog@6.0.2 want: ^2.0.0 241 http fetch GET 200 https://registry.npmjs.org/has-unicode 274ms (cache revalidated) 242 http fetch GET 200 https://registry.npmjs.org/aproba 277ms (cache revalidated) 243 http fetch GET 200 https://registry.npmjs.org/strip-ansi 276ms (cache revalidated) 244 http fetch GET 200 https://registry.npmjs.org/delegates 283ms (cache revalidated) 245 http fetch GET 200 https://registry.npmjs.org/signal-exit 280ms (cache revalidated) 246 http fetch GET 200 https://registry.npmjs.org/wide-align 285ms (cache revalidated) 247 http fetch GET 200 https://registry.npmjs.org/color-support 328ms (cache revalidated) 248 timing idealTree:node_modules/npmlog Completed in 335ms 249 silly placeDep ROOT delegates@1.0.0 OK for: are-we-there-yet@3.0.1 want: ^1.0.0 250 timing idealTree:node_modules/are-we-there-yet Completed in 1ms 251 timing idealTree:node_modules/console-control-strings Completed in 0ms 252 timing idealTree:node_modules/delegates Completed in 0ms 253 silly placeDep ROOT aproba@2.0.0 OK for: gauge@4.0.4 want: ^1.0.3 || ^2.0.0 254 silly placeDep ROOT color-support@1.1.3 OK for: gauge@4.0.4 want: ^1.1.3 255 silly placeDep ROOT has-unicode@2.0.1 OK for: gauge@4.0.4 want: ^2.0.1 256 silly placeDep ROOT signal-exit@3.0.7 OK for: gauge@4.0.4 want: ^3.0.7 257 silly placeDep ROOT string-width@4.2.3 OK for: gauge@4.0.4 want: ^4.2.3 258 silly fetch manifest emoji-regex@^8.0.0 259 silly fetch manifest is-fullwidth-code-point@^3.0.0 260 silly placeDep ROOT strip-ansi@6.0.1 OK for: gauge@4.0.4 want: ^6.0.1 261 silly fetch manifest ansi-regex@^5.0.1 262 silly placeDep ROOT wide-align@1.1.5 OK for: gauge@4.0.4 want: ^1.1.5 263 http fetch GET 200 https://registry.npmjs.org/ansi-regex 276ms (cache revalidated) 264 http fetch GET 200 https://registry.npmjs.org/emoji-regex 292ms (cache revalidated) 265 http fetch GET 200 https://registry.npmjs.org/is-fullwidth-code-point 326ms (cache revalidated) 266 timing idealTree:node_modules/gauge Completed in 332ms 267 timing idealTree:node_modules/aproba Completed in 0ms 268 timing idealTree:node_modules/color-support Completed in 0ms 269 timing idealTree:node_modules/has-unicode Completed in 0ms 270 silly placeDep ROOT detect-libc@2.0.3 OK for: prebuild-install@7.1.2 want: ^2.0.0 271 silly placeDep ROOT expand-template@2.0.3 OK for: prebuild-install@7.1.2 want: ^2.0.3 272 silly placeDep ROOT github-from-package@0.0.0 OK for: prebuild-install@7.1.2 want: 0.0.0 273 silly placeDep ROOT minimist@1.2.8 OK for: prebuild-install@7.1.2 want: ^1.2.3 274 silly placeDep ROOT mkdirp-classic@0.5.3 OK for: prebuild-install@7.1.2 want: ^0.5.3 275 silly placeDep ROOT napi-build-utils@1.0.2 OK for: prebuild-install@7.1.2 want: ^1.0.1 276 silly placeDep ROOT node-abi@3.58.0 OK for: prebuild-install@7.1.2 want: ^3.3.0 277 silly placeDep ROOT pump@3.0.0 OK for: prebuild-install@7.1.2 want: ^3.0.0 278 silly fetch manifest end-of-stream@^1.1.0 279 silly fetch manifest once@^1.3.1 280 silly placeDep ROOT simple-get@4.0.1 OK for: prebuild-install@7.1.2 want: ^4.0.0 281 silly fetch manifest decompress-response@^6.0.0 282 silly fetch manifest simple-concat@^1.0.0 283 silly placeDep ROOT tar-fs@2.1.1 OK for: prebuild-install@7.1.2 want: ^2.0.0 284 silly fetch manifest chownr@^1.1.1 285 silly fetch manifest tar-stream@^2.1.4 286 silly placeDep ROOT tunnel-agent@0.6.0 OK for: prebuild-install@7.1.2 want: ^0.6.0 287 silly fetch manifest safe-buffer@^5.0.1 288 http fetch GET 200 https://registry.npmjs.org/safe-buffer 252ms (cache revalidated) 289 http fetch GET 200 https://registry.npmjs.org/simple-concat 256ms (cache revalidated) 290 http fetch GET 200 https://registry.npmjs.org/end-of-stream 262ms (cache revalidated) 291 http fetch GET 200 https://registry.npmjs.org/tar-stream 258ms (cache revalidated) 292 http fetch GET 200 https://registry.npmjs.org/once 284ms (cache revalidated) 293 http fetch GET 200 https://registry.npmjs.org/decompress-response 282ms (cache revalidated) 294 timing idealTree:node_modules/prebuild-install Completed in 294ms 295 timing idealTree:node_modules/detect-libc Completed in 0ms 296 timing idealTree:node_modules/expand-template Completed in 0ms 297 timing idealTree:node_modules/github-from-package Completed in 0ms 298 timing idealTree:node_modules/minimist Completed in 0ms 299 timing idealTree:node_modules/mkdirp-classic Completed in 0ms 300 timing idealTree:node_modules/napi-build-utils Completed in 0ms 301 timing idealTree:node_modules/node-abi Completed in 0ms 302 timing idealTree:node_modules/proxy-from-env Completed in 0ms 303 silly placeDep ROOT end-of-stream@1.4.4 OK for: pump@3.0.0 want: ^1.1.0 304 silly fetch manifest once@^1.4.0 305 silly placeDep ROOT once@1.4.0 OK for: pump@3.0.0 want: ^1.3.1 306 silly fetch manifest wrappy@1 307 http fetch GET 200 https://registry.npmjs.org/wrappy 269ms (cache revalidated) 308 timing idealTree:node_modules/pump Completed in 275ms 309 timing idealTree:node_modules/end-of-stream Completed in 0ms 310 silly placeDep ROOT wrappy@1.0.2 OK for: once@1.4.0 want: 1 311 timing idealTree:node_modules/once Completed in 1ms 312 silly placeDep ROOT deep-extend@0.6.0 OK for: rc@1.2.8 want: ^0.6.0 313 silly placeDep ROOT ini@1.3.8 OK for: rc@1.2.8 want: ~1.3.0 314 silly placeDep ROOT strip-json-comments@2.0.1 OK for: rc@1.2.8 want: ~2.0.1 315 timing idealTree:node_modules/rc Completed in 3ms 316 timing idealTree:node_modules/deep-extend Completed in 0ms 317 timing idealTree:node_modules/ini Completed in 0ms 318 silly placeDep ROOT inherits@2.0.4 OK for: readable-stream@3.6.2 want: ^2.0.3 319 silly placeDep ROOT string_decoder@1.3.0 OK for: readable-stream@3.6.2 want: ^1.1.1 320 silly fetch manifest safe-buffer@~5.2.0 321 silly placeDep ROOT util-deprecate@1.0.2 OK for: readable-stream@3.6.2 want: ^1.0.1 322 timing idealTree:node_modules/readable-stream Completed in 3ms 323 timing idealTree:node_modules/inherits Completed in 0ms 324 silly placeDep ROOT lru-cache@6.0.0 OK for: semver@7.6.0 want: ^6.0.0 325 timing idealTree:node_modules/semver Completed in 0ms 326 silly placeDep ROOT yallist@4.0.0 OK for: lru-cache@6.0.0 want: ^4.0.0 327 timing idealTree:node_modules/lru-cache Completed in 0ms 328 timing idealTree:node_modules/set-blocking Completed in 0ms 329 timing idealTree:node_modules/signal-exit Completed in 0ms 330 silly placeDep ROOT decompress-response@6.0.0 OK for: simple-get@4.0.1 want: ^6.0.0 331 silly fetch manifest mimic-response@^3.1.0 332 silly placeDep ROOT simple-concat@1.0.1 OK for: simple-get@4.0.1 want: ^1.0.0 333 http fetch GET 200 https://registry.npmjs.org/mimic-response 244ms (cache revalidated) 334 timing idealTree:node_modules/simple-get Completed in 246ms 335 silly placeDep ROOT mimic-response@3.1.0 OK for: decompress-response@6.0.0 want: ^3.1.0 336 timing idealTree:node_modules/decompress-response Completed in 1ms 337 timing idealTree:node_modules/mimic-response Completed in 0ms 338 timing idealTree:node_modules/simple-concat Completed in 0ms 339 silly placeDep ROOT safe-buffer@5.2.1 OK for: string_decoder@1.3.0 want: ~5.2.0 340 timing idealTree:node_modules/string_decoder Completed in 1ms 341 timing idealTree:node_modules/safe-buffer Completed in 0ms 342 silly placeDep ROOT emoji-regex@8.0.0 OK for: string-width@4.2.3 want: ^8.0.0 343 silly placeDep ROOT is-fullwidth-code-point@3.0.0 OK for: string-width@4.2.3 want: ^3.0.0 344 timing idealTree:node_modules/string-width Completed in 3ms 345 timing idealTree:node_modules/emoji-regex Completed in 0ms 346 timing idealTree:node_modules/is-fullwidth-code-point Completed in 0ms 347 silly placeDep ROOT ansi-regex@5.0.1 OK for: strip-ansi@6.0.1 want: ^5.0.1 348 timing idealTree:node_modules/strip-ansi Completed in 1ms 349 timing idealTree:node_modules/ansi-regex Completed in 0ms 350 timing idealTree:node_modules/strip-json-comments Completed in 0ms 351 silly placeDep ROOT chownr@2.0.0 OK for: tar@6.2.1 want: ^2.0.0 352 silly placeDep ROOT fs-minipass@2.1.0 OK for: tar@6.2.1 want: ^2.0.0 353 silly fetch manifest minipass@^3.0.0 354 silly placeDep ROOT minipass@5.0.0 OK for: tar@6.2.1 want: ^5.0.0 355 silly placeDep ROOT minizlib@2.1.2 OK for: tar@6.2.1 want: ^2.1.1 356 silly placeDep ROOT mkdirp@1.0.4 OK for: tar@6.2.1 want: ^1.0.3 357 timing idealTree:node_modules/tar Completed in 10ms 358 timing idealTree:node_modules/chownr Completed in 0ms 359 silly placeDep node_modules/fs-minipass minipass@3.3.6 OK for: fs-minipass@2.1.0 want: ^3.0.0 360 timing idealTree:node_modules/fs-minipass Completed in 3ms 361 timing idealTree:node_modules/minipass Completed in 0ms 362 silly placeDep node_modules/minizlib minipass@3.3.6 OK for: minizlib@2.1.2 want: ^3.0.0 363 timing idealTree:node_modules/minizlib Completed in 1ms 364 timing idealTree:node_modules/mkdirp Completed in 0ms 365 silly placeDep node_modules/tar-fs chownr@1.1.4 OK for: tar-fs@2.1.1 want: ^1.1.1 366 silly placeDep ROOT tar-stream@2.2.0 OK for: tar-fs@2.1.1 want: ^2.1.4 367 silly fetch manifest bl@^4.0.3 368 silly fetch manifest fs-constants@^1.0.0 369 http fetch GET 200 https://registry.npmjs.org/fs-constants 254ms (cache revalidated) 370 http fetch GET 200 https://registry.npmjs.org/bl 307ms (cache revalidated) 371 timing idealTree:node_modules/tar-fs Completed in 312ms 372 silly placeDep ROOT bl@4.1.0 OK for: tar-stream@2.2.0 want: ^4.0.3 373 silly fetch manifest buffer@^5.5.0 374 silly placeDep ROOT fs-constants@1.0.0 OK for: tar-stream@2.2.0 want: ^1.0.0 375 http fetch GET 200 https://registry.npmjs.org/buffer 289ms (cache revalidated) 376 timing idealTree:node_modules/tar-stream Completed in 293ms 377 silly placeDep ROOT buffer@5.7.1 OK for: bl@4.1.0 want: ^5.5.0 378 silly fetch manifest base64-js@^1.3.1 379 silly fetch manifest ieee754@^1.1.13 380 http fetch GET 200 https://registry.npmjs.org/ieee754 196ms (cache revalidated) 381 http fetch GET 200 https://registry.npmjs.org/base64-js 242ms (cache revalidated) 382 timing idealTree:node_modules/bl Completed in 244ms 383 silly placeDep ROOT base64-js@1.5.1 OK for: buffer@5.7.1 want: ^1.3.1 384 silly placeDep ROOT ieee754@1.2.1 OK for: buffer@5.7.1 want: ^1.1.13 385 timing idealTree:node_modules/buffer Completed in 2ms 386 timing idealTree:node_modules/base64-js Completed in 0ms 387 timing idealTree:node_modules/fs-constants Completed in 0ms 388 timing idealTree:node_modules/ieee754 Completed in 0ms 389 timing idealTree:node_modules/tunnel-agent Completed in 0ms 390 timing idealTree:node_modules/universalify Completed in 0ms 391 timing idealTree:node_modules/url-join Completed in 0ms 392 timing idealTree:node_modules/util-deprecate Completed in 0ms 393 silly placeDep ROOT isexe@2.0.0 OK for: which@2.0.2 want: ^2.0.0 394 timing idealTree:node_modules/which Completed in 1ms 395 timing idealTree:node_modules/isexe Completed in 0ms 396 timing idealTree:node_modules/wide-align Completed in 0ms 397 timing idealTree:node_modules/wrappy Completed in 0ms 398 timing idealTree:node_modules/yallist Completed in 0ms 399 silly placeDep ROOT cliui@8.0.1 OK for: yargs@17.7.2 want: ^8.0.1 400 silly fetch manifest wrap-ansi@^7.0.0 401 silly placeDep ROOT escalade@3.1.2 OK for: yargs@17.7.2 want: ^3.1.1 402 silly placeDep ROOT get-caller-file@2.0.5 OK for: yargs@17.7.2 want: ^2.0.5 403 silly placeDep ROOT require-directory@2.1.1 OK for: yargs@17.7.2 want: ^2.1.1 404 silly placeDep ROOT y18n@5.0.8 OK for: yargs@17.7.2 want: ^5.0.5 405 silly placeDep ROOT yargs-parser@21.1.1 OK for: yargs@17.7.2 want: ^21.1.1 406 http fetch GET 200 https://registry.npmjs.org/wrap-ansi 258ms (cache revalidated) 407 timing idealTree:node_modules/yargs Completed in 262ms 408 silly placeDep ROOT wrap-ansi@7.0.0 OK for: cliui@8.0.1 want: ^7.0.0 409 silly fetch manifest ansi-styles@^4.0.0 410 http fetch GET 200 https://registry.npmjs.org/ansi-styles 326ms (cache revalidated) 411 timing idealTree:node_modules/cliui Completed in 329ms 412 timing idealTree:node_modules/escalade Completed in 0ms 413 timing idealTree:node_modules/get-caller-file Completed in 0ms 414 timing idealTree:node_modules/require-directory Completed in 0ms 415 silly placeDep ROOT ansi-styles@4.3.0 OK for: wrap-ansi@7.0.0 want: ^4.0.0 416 silly fetch manifest color-convert@^2.0.1 417 http fetch GET 200 https://registry.npmjs.org/color-convert 242ms (cache revalidated) 418 timing idealTree:node_modules/wrap-ansi Completed in 244ms 419 silly placeDep ROOT color-convert@2.0.1 OK for: ansi-styles@4.3.0 want: ^2.0.1 420 silly fetch manifest color-name@~1.1.4 421 http fetch GET 200 https://registry.npmjs.org/color-name 250ms (cache revalidated) 422 timing idealTree:node_modules/ansi-styles Completed in 252ms 423 silly placeDep ROOT color-name@1.1.4 OK for: color-convert@2.0.1 want: ~1.1.4 424 timing idealTree:node_modules/color-convert Completed in 1ms 425 timing idealTree:node_modules/color-name Completed in 0ms 426 timing idealTree:node_modules/y18n Completed in 0ms 427 timing idealTree:node_modules/yargs-parser Completed in 0ms 428 timing idealTree:node_modules/fs-minipass/node_modules/minipass Completed in 0ms 429 timing idealTree:node_modules/minizlib/node_modules/minipass Completed in 0ms 430 timing idealTree:node_modules/tar-fs/node_modules/chownr Completed in 0ms 431 timing idealTree:buildDeps Completed in 16104ms 432 timing idealTree:fixDepFlags Completed in 1ms 433 timing idealTree Completed in 16126ms 434 timing reify:loadTrees Completed in 16126ms 435 timing reify:diffTrees Completed in 2ms 436 silly reify moves {} 437 timing reify:retireShallow Completed in 1ms 438 timing reify:createSparse Completed in 29ms 439 timing reify:loadBundles Completed in 0ms 440 silly tarball no local data for node-abi@https://registry.npmjs.org/node-abi/-/node-abi-3.58.0.tgz. Extracting by manifest. 441 timing reifyNode:node_modules/color-name Completed in 366ms 442 timing reifyNode:node_modules/wrap-ansi Completed in 365ms 443 timing reifyNode:node_modules/chownr Completed in 367ms 444 timing reifyNode:node_modules/wrappy Completed in 367ms 445 timing reifyNode:node_modules/end-of-stream Completed in 368ms 446 timing reifyNode:node_modules/strip-json-comments Completed in 368ms 447 timing reifyNode:node_modules/once Completed in 368ms 448 timing reifyNode:node_modules/ini Completed in 368ms 449 timing reifyNode:node_modules/mkdirp-classic Completed in 369ms 450 timing reifyNode:node_modules/wide-align Completed in 369ms 451 timing reifyNode:node_modules/has-unicode Completed in 369ms 452 timing reifyNode:node_modules/universalify Completed in 368ms 453 timing reifyNode:node_modules/ms Completed in 370ms 454 timing reifyNode:node_modules/lodash.isplainobject Completed in 370ms 455 timing reifyNode:node_modules/bindings Completed in 370ms 456 timing reifyNode:node_modules/fs-minipass Completed in 374ms 457 timing reifyNode:node_modules/lru-cache Completed in 375ms 458 timing reifyNode:node_modules/tunnel-agent Completed in 376ms 459 timing reifyNode:node_modules/tar-fs/node_modules/chownr Completed in 381ms 460 timing reifyNode:node_modules/string_decoder Completed in 383ms 461 timing reifyNode:node_modules/npmlog Completed in 384ms 462 timing reifyNode:node_modules/fs-constants Completed in 391ms 463 timing reifyNode:node_modules/ieee754 Completed in 392ms 464 timing reifyNode:node_modules/ansi-regex Completed in 393ms 465 timing reifyNode:node_modules/mimic-response Completed in 393ms 466 timing reifyNode:node_modules/inherits Completed in 393ms 467 timing reifyNode:node_modules/decompress-response Completed in 393ms 468 timing reifyNode:node_modules/is-fullwidth-code-point Completed in 395ms 469 timing reifyNode:node_modules/string-width Completed in 395ms 470 timing reifyNode:node_modules/signal-exit Completed in 395ms 471 timing reifyNode:node_modules/strip-ansi Completed in 395ms 472 timing reifyNode:node_modules/set-blocking Completed in 394ms 473 timing reifyNode:node_modules/console-control-strings Completed in 394ms 474 timing reifyNode:node_modules/aproba Completed in 396ms 475 timing reifyNode:node_modules/ansi-styles Completed in 399ms 476 timing reifyNode:node_modules/minizlib Completed in 398ms 477 timing reifyNode:node_modules/yallist Completed in 398ms 478 timing reifyNode:node_modules/napi-build-utils Completed in 400ms 479 timing reifyNode:node_modules/combined-stream Completed in 399ms 480 timing reifyNode:node_modules/mime-types Completed in 400ms 481 timing reifyNode:node_modules/safe-buffer Completed in 405ms 482 timing reifyNode:node_modules/base64-js Completed in 412ms 483 timing reifyNode:node_modules/get-caller-file Completed in 412ms 484 timing reifyNode:node_modules/util-deprecate Completed in 412ms 485 timing reifyNode:node_modules/fs-minipass/node_modules/minipass Completed in 413ms 486 timing reifyNode:node_modules/minizlib/node_modules/minipass Completed in 414ms 487 timing reifyNode:node_modules/expand-template Completed in 413ms 488 timing reifyNode:node_modules/color-support Completed in 414ms 489 timing reifyNode:node_modules/simple-concat Completed in 416ms 490 timing reifyNode:node_modules/deep-extend Completed in 417ms 491 timing reifyNode:node_modules/jsonfile Completed in 416ms 492 timing reifyNode:node_modules/delayed-stream Completed in 417ms 493 timing reifyNode:node_modules/which Completed in 417ms 494 timing reifyNode:node_modules/pump Completed in 423ms 495 timing reifyNode:node_modules/minipass Completed in 424ms 496 timing reifyNode:node_modules/graceful-fs Completed in 423ms 497 timing reifyNode:node_modules/color-convert Completed in 427ms 498 timing reifyNode:node_modules/require-directory Completed in 426ms 499 timing reifyNode:node_modules/simple-get Completed in 425ms 500 timing reifyNode:node_modules/buffer Completed in 427ms 501 timing reifyNode:node_modules/memory-stream Completed in 429ms 502 timing reifyNode:node_modules/detect-libc Completed in 430ms 503 timing reifyNode:node_modules/proxy-from-env Completed in 429ms 504 timing reifyNode:node_modules/follow-redirects Completed in 431ms 505 timing reifyNode:node_modules/debug Completed in 431ms 506 http fetch GET 200 https://registry.npmjs.org/node-abi/-/node-abi-3.58.0.tgz 404ms (cache miss) 507 timing reifyNode:node_modules/delegates Completed in 439ms 508 timing reifyNode:node_modules/isexe Completed in 442ms 509 timing reifyNode:node_modules/tar-stream Completed in 442ms 510 timing reifyNode:node_modules/are-we-there-yet Completed in 442ms 511 timing reifyNode:node_modules/node-abi Completed in 443ms 512 timing reifyNode:node_modules/emoji-regex Completed in 446ms 513 timing reifyNode:node_modules/form-data Completed in 444ms 514 timing reifyNode:node_modules/url-join Completed in 445ms 515 timing reifyNode:node_modules/mime-db Completed in 446ms 516 timing reifyNode:node_modules/escalade Completed in 450ms 517 timing reifyNode:node_modules/cliui Completed in 453ms 518 timing reifyNode:node_modules/y18n Completed in 454ms 519 timing reifyNode:node_modules/file-uri-to-path Completed in 455ms 520 timing reifyNode:node_modules/bl Completed in 464ms 521 timing reifyNode:node_modules/mkdirp Completed in 470ms 522 timing reifyNode:node_modules/rc Completed in 471ms 523 timing reifyNode:node_modules/github-from-package Completed in 474ms 524 timing reifyNode:node_modules/yargs-parser Completed in 476ms 525 timing reifyNode:node_modules/prebuild-install Completed in 482ms 526 timing reifyNode:node_modules/node-api-headers Completed in 487ms 527 timing reifyNode:node_modules/gauge Completed in 499ms 528 timing reifyNode:node_modules/asynckit Completed in 504ms 529 timing reifyNode:node_modules/tar-fs Completed in 513ms 530 timing reifyNode:node_modules/node-addon-api Completed in 520ms 531 timing reifyNode:node_modules/minimist Completed in 524ms 532 timing reifyNode:node_modules/readable-stream Completed in 525ms 533 timing reifyNode:node_modules/cmake-js Completed in 532ms 534 timing reifyNode:node_modules/tar Completed in 535ms 535 timing reifyNode:node_modules/fs-extra Completed in 542ms 536 timing reifyNode:node_modules/semver Completed in 568ms 537 timing reifyNode:node_modules/yargs Completed in 593ms 538 timing reifyNode:node_modules/webbluetooth Completed in 608ms 539 timing reifyNode:node_modules/axios Completed in 632ms 540 timing reify:unpack Completed in 635ms 541 timing reify:unretire Completed in 0ms 542 timing build:queue Completed in 4ms 543 timing build:link:node_modules/cmake-js Completed in 8ms 544 timing build:link:node_modules/mkdirp Completed in 8ms 545 timing build:link:node_modules/color-support Completed in 8ms 546 timing build:link:node_modules/prebuild-install Completed in 8ms 547 timing build:link:node_modules/rc Completed in 8ms 548 timing build:link:node_modules/semver Completed in 7ms 549 timing build:link:node_modules/which Completed in 7ms 550 timing build:link Completed in 9ms 551 info run webbluetooth@3.2.1 install node_modules/webbluetooth prebuild-install --backend cmake-js --runtime napi || cmake-js rebuild 552 info run webbluetooth@3.2.1 install { code: 1, signal: null } 553 timing reify:rollback:createSparse Completed in 129ms 554 timing reify:rollback:retireShallow Completed in 0ms 555 timing command:install Completed in 38292ms 556 verbose stack Error: command failed 556 verbose stack at ChildProcess. (C:\Environments\nodejs\node_modules\npm\node_modules\@npmcli\promise-spawn\lib\index.js:53:27) 556 verbose stack at ChildProcess.emit (node:events:511:28) 556 verbose stack at maybeClose (node:internal/child_process:1098:16) 556 verbose stack at ChildProcess._handle.onexit (node:internal/child_process:304:5) 557 verbose pkgid webbluetooth@3.2.1 558 verbose cwd T:\Projects\web-bluetooth-test 559 verbose Windows_NT 10.0.19045 560 verbose node v20.3.1 561 verbose npm v9.6.7 562 error code 1 563 error path T:\Projects\web-bluetooth-test\node_modules\webbluetooth 564 error command failed 565 error command C:\Windows\system32\cmd.exe /d /s /c prebuild-install --backend cmake-js --runtime napi || cmake-js rebuild 566 error Not searching for unused variables given on the command line. 566 error -- Selecting Windows SDK version 10.0.22621.0 to target Windows 10.0.19045. 566 error -- The C compiler identification is MSVC 19.38.33133.0 566 error -- The CXX compiler identification is MSVC 19.38.33133.0 566 error -- Detecting C compiler ABI info 566 error -- Detecting C compiler ABI info - done 566 error -- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped 566 error -- Detecting C compile features 566 error -- Detecting C compile features - done 566 error -- Detecting CXX compiler ABI info 566 error -- Detecting CXX compiler ABI info - done 566 error -- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped 566 error -- Detecting CXX compile features 566 error -- Detecting CXX compile features - done 566 error Microsoft (R) Library Manager Version 14.38.33133.0 566 error Copyright (C) Microsoft Corporation. All rights reserved. 566 error 566 error 正在创建库 T:\Projects\web-bluetooth-test\node_modules\webbluetooth\build\node.lib 和对象 T:\Projects\web-bluetooth-test\node_modules\webbluetooth\build\node.exp 566 error -- Configuring incomplete, errors occurred! 567 error prebuild-install warn install aborted 567 error info find VS using VS2022 (17.8.34330.188) found at: 567 error info find VS "C:\Program Files\Microsoft Visual Studio\2022\Community" 567 error info find VS run with --verbose for detailed information 567 error info TOOL Using Visual Studio 17 2022 generator. 567 error info CMD CLEAN 567 error info RUN [ 567 error info RUN 'cmake', 567 error info RUN '-E', 567 error info RUN 'remove_directory', 567 error info RUN 'T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build' 567 error info RUN ] 567 error info CMD CONFIGURE 567 error info find VS using VS2022 (17.8.34330.188) found at: 567 error info find VS "C:\Program Files\Microsoft Visual Studio\2022\Community" 567 error info find VS run with --verbose for detailed information 567 error info RUN [ 567 error info RUN 'cmake', 567 error info RUN 'T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth', 567 error info RUN '--no-warn-unused-cli', 567 error info RUN '-G', 567 error info RUN 'Visual Studio 17 2022', 567 error info RUN '-A', 567 error info RUN 'x64', 567 error info RUN '-DCMAKE_JS_VERSION=7.3.0', 567 error info RUN '-DCMAKE_BUILD_TYPE=Release', 567 error info RUN '-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build', 567 error info RUN '-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded$<$:Debug>', 567 error info RUN '-DCMAKE_JS_INC=T:\\Projects\\web-bluetooth-test\\node_modules\\node-api-headers\\include;T:\\Projects\\web-bluetooth-test\\node_modules\\node-addon-api', 567 error info RUN '-DCMAKE_JS_SRC=T:/Projects/web-bluetooth-test/node_modules/cmake-js/lib/cpp/win_delay_load_hook.cc', 567 error info RUN '-DNODE_RUNTIME=node', 567 error info RUN '-DNODE_RUNTIMEVERSION=20.3.1', 567 error info RUN '-DNODE_ARCH=x64', 567 error info RUN '-DCMAKE_JS_LIB=T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build\\node.lib', 567 error info RUN '-DCMAKE_JS_NODELIB_DEF=T:\\Projects\\web-bluetooth-test\\node_modules\\node-api-headers\\def\\node_api.def', 567 error info RUN '-DCMAKE_JS_NODELIB_TARGET=T:\\Projects\\web-bluetooth-test\\node_modules\\webbluetooth\\build\\node.lib', 567 error info RUN '-DCMAKE_SHARED_LINKER_FLAGS=/DELAYLOAD:NODE.EXE' 567 error info RUN ] 567 error CMake Error at CMakeLists.txt:14 (add_subdirectory): 567 error add_subdirectory given source "SimpleBLE/simpleble" which is not an 567 error existing directory. 567 error 567 error 567 error ERR! OMG Process terminated: 1 568 verbose exit 1 569 timing npm Completed in 43736ms 570 verbose unfinished npm timer reify 1713231020605 571 verbose unfinished npm timer reify:build 1713231037405 572 verbose unfinished npm timer build 1713231037406 573 verbose unfinished npm timer build:deps 1713231037406 574 verbose unfinished npm timer build:run:install 1713231037419 575 verbose unfinished npm timer build:run:install:node_modules/webbluetooth 1713231037419 576 verbose code 1 577 error A complete log of this run can be found in: C:\Users\firok\AppData\Local\npm-cache\_logs\2024-04-16T01_30_15_193Z-debug-0.log ```

Enviroment information:

thegecko commented 2 months ago

Thanks for the logs, the install should be getting the prebuild binary for your platform rather than running a build

thegecko commented 2 months ago

@FirokOtaku I've just tested this on x86_64 Windows 10 machine and it worked as expected.

npm install webbluetooth downloaded a prebuild for the host rather than running the build process.

npm: 10.x node: 20.x

This may be an issue with your specific machine, but #180 will now allow builds to run locally anyway (if all prerequisites are met).

FirokOtaku commented 2 months ago

@thegecko It's wired that I just tried npm i webbluetooth on my home PC (with the same architecture of x86_64 windows. Only different is it runs with NodeJS 19) and it runs successfully.

But it still not works on my work PC (which generated the error logs above).

So, yeah, that seems an machine-specific issue. 🤣 Maybe I should wipe some environment variables or have a full clean install of NodeJS.

Apollon77 commented 2 months ago

@thegecko One question ... when looking at https://github.com/thegecko/webbluetooth/blob/master/.github/workflows/prebuild.yml#L42 I could guess that prebuild is only done for nodejs 16 ?! SO not 18, not 20 ... (ok also not 19) ... but ok I do not know example when N-ABI potentially changed or was stabkle, but could it be taht 16..19 had the same ABI and Node.js 20 has a different one? (just guessing).

And yes without #180 any local build will fail

thegecko commented 2 months ago

We use NAPI which is backwards compatible and not tied to specific node versions:

NAPI 6: https://github.com/thegecko/webbluetooth/blob/master/package.json#L55

Which should be v10.20.0+, v12.17.0+, 14.0.0 and all later versions: https://nodejs.org/docs/v20.12.1/api/n-api.html#node-api-version-matrix

thegecko commented 2 months ago

@FirokOtaku I'm going to close this issue as it seems to be setup specific and a little OT :) Feel free to open a new issue if you get to the bottom of it.