[GH-ISSUE #216] Failed to install on Arch/EndeavorOS #60

Open
opened 2026-03-03 13:52:39 +03:00 by kerem · 2 comments
Owner

Originally created by @sSasha-uwu on GitHub (Nov 18, 2024).
Original GitHub issue: https://github.com/jehna/humanify/issues/216

Tried on Arch initially, figured I did something wrong with Arch and installed EndeavorOS to test, and it still fails with the same massive error.

Notably works just fine on Windows 10.

[sasha@sasha-x570ud ~]$ sudo npm install -g humanifyjs
(node:428084) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
npm warn deprecated gauge@4.0.4: This package is no longer supported.
npm warn deprecated are-we-there-yet@3.0.1: This package is no longer supported.
npm warn deprecated npmlog@6.0.2: This package is no longer supported.
npm error code 1
npm error path /usr/lib/node_modules/humanifyjs/node_modules/isolated-vm
npm error command failed
npm error command sh -c prebuild-install || (node-gyp rebuild --release -j max && node-gyp clean)
npm error make: Entering directory '/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm/build'
npm error   CXX(target) Release/obj.target/nortti/src/isolate/allocator_nortti.o
npm error   CXX(target) Release/obj.target/nortti/src/external_copy/serializer_nortti.o
npm error make: Leaving directory '/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm/build'
npm error prebuild-install warn install No prebuilt binaries found (target=23.1.0 runtime=node arch=x64 libc= platform=linux)
npm error gyp info it worked if it ends with ok
npm error gyp info using node-gyp@10.2.0
npm error gyp info using node@23.1.0 | linux | x64
npm error gyp info find Python using Python version 3.12.7 found at "/usr/bin/python3"
npm error gyp http GET https://nodejs.org/download/release/v23.1.0/node-v23.1.0-headers.tar.gz
npm error gyp http 200 https://nodejs.org/download/release/v23.1.0/node-v23.1.0-headers.tar.gz
npm error gyp http GET https://nodejs.org/download/release/v23.1.0/SHASUMS256.txt
npm error gyp http 200 https://nodejs.org/download/release/v23.1.0/SHASUMS256.txt
npm error gyp info spawn /usr/bin/python3
npm error gyp info spawn args [
npm error gyp info spawn args '/usr/lib/node_modules/node-gyp/gyp/gyp_main.py',
npm error gyp info spawn args 'binding.gyp',
npm error gyp info spawn args '-f',
npm error gyp info spawn args 'make',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm/build/config.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/usr/lib/node_modules/node-gyp/addon.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/root/.cache/node-gyp/23.1.0/include/node/common.gypi',
npm error gyp info spawn args '-Dlibrary=shared_library',
npm error gyp info spawn args '-Dvisibility=default',
npm error gyp info spawn args '-Dnode_root_dir=/root/.cache/node-gyp/23.1.0',
npm error gyp info spawn args '-Dnode_gyp_dir=/usr/lib/node_modules/node-gyp',
npm error gyp info spawn args '-Dnode_lib_file=/root/.cache/node-gyp/23.1.0/<(target_arch)/node.lib',
npm error gyp info spawn args '-Dmodule_root_dir=/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm',
npm error gyp info spawn args '-Dnode_engine=v8',
npm error gyp info spawn args '--depth=.',
npm error gyp info spawn args '--no-parallel',
npm error gyp info spawn args '--generator-output',
npm error gyp info spawn args 'build',
npm error gyp info spawn args '-Goutput_dir=.'
npm error gyp info spawn args ]
npm error gyp info spawn make
npm error gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build', '--jobs', 16 ]
npm error In file included from /root/.cache/node-gyp/23.1.0/include/node/cppgc/common.h:8,
npm error                  from /root/.cache/node-gyp/23.1.0/include/node/v8.h:23,
npm error                  from ../src/isolate/allocator.h:2,
npm error                  from ../src/isolate/allocator_nortti.cc:1:
npm error /root/.cache/node-gyp/23.1.0/include/node/v8config.h:13:2: error: #error "C++20 or later required."
npm error    13 | #error "C++20 or later required."
npm error       |  ^~~~~
npm error In file included from /root/.cache/node-gyp/23.1.0/include/node/cppgc/common.h:8,
npm error                  from /root/.cache/node-gyp/23.1.0/include/node/v8.h:23,
npm error                  from ../src/external_copy/external_copy.h:2,
npm error                  from ../src/external_copy/serializer.h:2,
npm error                  from ../src/external_copy/serializer_nortti.cc:1:
npm error /root/.cache/node-gyp/23.1.0/include/node/v8config.h:13:2: error: #error "C++20 or later required."
npm error    13 | #error "C++20 or later required."
npm error       |  ^~~~~
npm error In file included from ../src/external_copy/external_copy.h:12:
npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’?
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                        ^~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                                        NonCopyablePersistentTraits
npm error ../src/isolate/util.h:30:65: error: template argument 2 is invalid
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                                                 ^
npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’?
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                        ^~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                                        NonCopyablePersistentTraits
npm error ../src/isolate/util.h:30:66: error: template argument 2 is invalid
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                                                  ^~
npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’?
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                        ^~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                                        NonCopyablePersistentTraits
npm error ../src/isolate/util.h:30:66: error: template argument 2 is invalid
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                                                  ^~
npm error ../src/isolate/util.h:30:18: error: invalid template-id
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                  ^~
npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’?
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                        ^~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                                        NonCopyablePersistentTraits
npm error ../src/isolate/util.h:30:66: error: ‘template<class T> auto ivm::Deref’ conflicts with a previous declaration
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                                                  ^~
npm error ../src/isolate/util.h:25:6: note: previous declaration ‘v8::Local<T> ivm::Deref(const v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&)’
npm error    25 | auto Deref(const v8::Persistent<T>& handle) -> v8::Local<T> {
npm error       |      ^~~~~
npm error ../src/isolate/util.h:30:12: error: expected primary-expression before ‘const’
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |            ^~~~~
npm error ../src/isolate/util.h:30:77: error: expected ‘;’ before ‘->’ token
npm error    30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> {
npm error       |                                                                             ^~~
npm error       |                                                                             ;
npm error In file included from ../src/isolate/holder.h:2,
npm error                  from ../src/isolate/executor.h:6,
npm error                  from ../src/isolate/environment.h:7,
npm error                  from ../src/isolate/allocator_nortti.cc:2:
npm error ../src/isolate/platform_delegate.h:15:22: error: ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘override’, but does not override
npm error    15 |                 void PostTask(std::unique_ptr<v8::Task> task) override = 0;
npm error       |                      ^~~~~~~~
npm error ../src/isolate/platform_delegate.h:15:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’
npm error ../src/isolate/platform_delegate.h:16:22: error: ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘override’, but does not override
npm error    16 |                 void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) override = 0;
npm error       |                      ^~~~~~~~~~~~~~~
npm error ../src/isolate/platform_delegate.h:16:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’
npm error ../src/isolate/platform_delegate.h:17:22: error: ‘void ivm::TaskRunner::PostIdleTask(std::unique_ptr<v8::IdleTask>)’ marked ‘final’, but is not virtual
npm error    17 |                 void PostIdleTask(std::unique_ptr<v8::IdleTask> /*task*/) final { std::terminate(); }
npm error       |                      ^~~~~~~~~~~~
npm error ../src/isolate/platform_delegate.h:21:22: error: ‘void ivm::TaskRunner::PostNonNestableDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual
npm error    21 |                 void PostNonNestableDelayedTask(std::unique_ptr<v8::Task> /*task*/, double /*delay_in_seconds*/) final { std::terminate(); }
npm error       |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
npm error ../src/isolate/holder.h:55:22: error: ‘void ivm::IsolateTaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual
npm error    55 |                 void PostTask(std::unique_ptr<v8::Task> task) final;
npm error       |                      ^~~~~~~~
npm error ../src/isolate/holder.h:56:22: error: ‘void ivm::IsolateTaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual
npm error    56 |                 void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) final;
npm error       |                      ^~~~~~~~~~~~~~~
npm error ../src/isolate/holder.h:57:22: error: ‘void ivm::IsolateTaskRunner::PostNonNestableTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual
npm error    57 |                 void PostNonNestableTask(std::unique_ptr<v8::Task> task) final { PostTask(std::move(task)); }
npm error       |                      ^~~~~~~~~~~~~~~~~~~
npm error In file included from ../src/isolate/holder.h:2,
npm error                  from ../src/isolate/remote_handle.h:2,
npm error                  from ../src/isolate/util.h:36:
npm error ../src/isolate/platform_delegate.h:15:22: error: ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘override’, but does not override
npm error    15 |                 void PostTask(std::unique_ptr<v8::Task> task) override = 0;
npm error       |                      ^~~~~~~~
npm error ../src/isolate/platform_delegate.h:15:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’
npm error ../src/isolate/platform_delegate.h:16:22: error: ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘override’, but does not override
npm error    16 |                 void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) override = 0;
npm error       |                      ^~~~~~~~~~~~~~~
npm error ../src/isolate/platform_delegate.h:16:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’
npm error ../src/isolate/platform_delegate.h:17:22: error: ‘void ivm::TaskRunner::PostIdleTask(std::unique_ptr<v8::IdleTask>)’ marked ‘final’, but is not virtual
npm error    17 |                 void PostIdleTask(std::unique_ptr<v8::IdleTask> /*task*/) final { std::terminate(); }
npm error       |                      ^~~~~~~~~~~~
npm error ../src/isolate/platform_delegate.h:21:22: error: ‘void ivm::TaskRunner::PostNonNestableDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual
npm error    21 |                 void PostNonNestableDelayedTask(std::unique_ptr<v8::Task> /*task*/, double /*delay_in_seconds*/) final { std::terminate(); }
npm error       |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
npm error ../src/isolate/holder.h:55:22: error: ‘void ivm::IsolateTaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual
npm error    55 |                 void PostTask(std::unique_ptr<v8::Task> task) final;
npm error       |                      ^~~~~~~~
npm error ../src/isolate/holder.h:56:22: error: ‘void ivm::IsolateTaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual
npm error    56 |                 void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) final;
npm error       |                      ^~~~~~~~~~~~~~~
npm error ../src/isolate/holder.h:57:22: error: ‘void ivm::IsolateTaskRunner::PostNonNestableTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual
npm error    57 |                 void PostNonNestableTask(std::unique_ptr<v8::Task> task) final { PostTask(std::move(task)); }
npm error       |                      ^~~~~~~~~~~~~~~~~~~
npm error ../src/isolate/environment.h:111:60: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’?
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                            ^~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                                                            NonCopyablePersistentTraits
npm error ../src/isolate/environment.h:111:89: error: template argument 2 is invalid
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                                                         ^~~~~~~
npm error ../src/isolate/environment.h:111:96: error: template argument 1 is invalid
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                                                                ^~
npm error ../src/isolate/environment.h:111:96: error: template argument 2 is invalid
npm error ../src/isolate/environment.h:111:98: error: expected unqualified-id before ‘>’ token
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                                                                  ^
npm error In file included from ../src/external_copy/serializer.h:3:
npm error ../src/isolate/environment.h:111:60: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’?
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                            ^~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                                                            NonCopyablePersistentTraits
npm error ../src/isolate/environment.h:111:89: error: template argument 2 is invalid
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                                                         ^~~~~~~
npm error ../src/isolate/environment.h:111:96: error: template argument 1 is invalid
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                                                                ^~
npm error ../src/isolate/environment.h:111:96: error: template argument 2 is invalid
npm error ../src/isolate/environment.h:111:98: error: expected unqualified-id before ‘>’ token
npm error   111 |                 std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections;
npm error       |                                                                                                  ^
npm error In file included from ../src/module/transferable.h:2,
npm error                  from ../src/external_copy/serializer_nortti.cc:3:
npm error ../src/isolate/class_handle.h: In member function ‘void ivm::ClassHandle::TemplateDefinition::Add(const char*, ivm::detail::MemberAccessorHolder, Args ...)’:
npm error ../src/isolate/class_handle.h:95:40: error: ‘class v8::ObjectTemplate’ has no member named ‘SetAccessor’
npm error    95 |                                 proto->SetAccessor(name_handle, impl.getter.callback, impl.setter.callback);
npm error       |                                        ^~~~~~~~~~~
npm error make: *** [nortti.target.mk:155: Release/obj.target/nortti/src/isolate/allocator_nortti.o] Error 1
npm error make: *** Waiting for unfinished jobs....
npm error make: *** [nortti.target.mk:155: Release/obj.target/nortti/src/external_copy/serializer_nortti.o] Error 1
npm error gyp ERR! build error
npm error gyp ERR! stack Error: `make` failed with exit code: 2
npm error gyp ERR! stack at ChildProcess.<anonymous> (/usr/lib/node_modules/node-gyp/lib/build.js:216:23)
npm error gyp ERR! System Linux 6.11.8-zen1-2-zen
npm error gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--release" "-j" "max"
npm error gyp ERR! cwd /usr/lib/node_modules/humanifyjs/node_modules/isolated-vm
npm error gyp ERR! node -v v23.1.0
npm error gyp ERR! node-gyp -v v10.2.0
npm error gyp ERR! not ok
Originally created by @sSasha-uwu on GitHub (Nov 18, 2024). Original GitHub issue: https://github.com/jehna/humanify/issues/216 Tried on Arch initially, figured I did something wrong with Arch and installed EndeavorOS to test, and it still fails with the same massive error. Notably works just fine on Windows 10. ``` [sasha@sasha-x570ud ~]$ sudo npm install -g humanifyjs (node:428084) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require(). Support for loading ES Module in require() is an experimental feature and might change at any time (Use `node --trace-warnings ...` to show where the warning was created) npm warn deprecated gauge@4.0.4: This package is no longer supported. npm warn deprecated are-we-there-yet@3.0.1: This package is no longer supported. npm warn deprecated npmlog@6.0.2: This package is no longer supported. npm error code 1 npm error path /usr/lib/node_modules/humanifyjs/node_modules/isolated-vm npm error command failed npm error command sh -c prebuild-install || (node-gyp rebuild --release -j max && node-gyp clean) npm error make: Entering directory '/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm/build' npm error CXX(target) Release/obj.target/nortti/src/isolate/allocator_nortti.o npm error CXX(target) Release/obj.target/nortti/src/external_copy/serializer_nortti.o npm error make: Leaving directory '/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm/build' npm error prebuild-install warn install No prebuilt binaries found (target=23.1.0 runtime=node arch=x64 libc= platform=linux) npm error gyp info it worked if it ends with ok npm error gyp info using node-gyp@10.2.0 npm error gyp info using node@23.1.0 | linux | x64 npm error gyp info find Python using Python version 3.12.7 found at "/usr/bin/python3" npm error gyp http GET https://nodejs.org/download/release/v23.1.0/node-v23.1.0-headers.tar.gz npm error gyp http 200 https://nodejs.org/download/release/v23.1.0/node-v23.1.0-headers.tar.gz npm error gyp http GET https://nodejs.org/download/release/v23.1.0/SHASUMS256.txt npm error gyp http 200 https://nodejs.org/download/release/v23.1.0/SHASUMS256.txt npm error gyp info spawn /usr/bin/python3 npm error gyp info spawn args [ npm error gyp info spawn args '/usr/lib/node_modules/node-gyp/gyp/gyp_main.py', npm error gyp info spawn args 'binding.gyp', npm error gyp info spawn args '-f', npm error gyp info spawn args 'make', npm error gyp info spawn args '-I', npm error gyp info spawn args '/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm/build/config.gypi', npm error gyp info spawn args '-I', npm error gyp info spawn args '/usr/lib/node_modules/node-gyp/addon.gypi', npm error gyp info spawn args '-I', npm error gyp info spawn args '/root/.cache/node-gyp/23.1.0/include/node/common.gypi', npm error gyp info spawn args '-Dlibrary=shared_library', npm error gyp info spawn args '-Dvisibility=default', npm error gyp info spawn args '-Dnode_root_dir=/root/.cache/node-gyp/23.1.0', npm error gyp info spawn args '-Dnode_gyp_dir=/usr/lib/node_modules/node-gyp', npm error gyp info spawn args '-Dnode_lib_file=/root/.cache/node-gyp/23.1.0/<(target_arch)/node.lib', npm error gyp info spawn args '-Dmodule_root_dir=/usr/lib/node_modules/humanifyjs/node_modules/isolated-vm', npm error gyp info spawn args '-Dnode_engine=v8', npm error gyp info spawn args '--depth=.', npm error gyp info spawn args '--no-parallel', npm error gyp info spawn args '--generator-output', npm error gyp info spawn args 'build', npm error gyp info spawn args '-Goutput_dir=.' npm error gyp info spawn args ] npm error gyp info spawn make npm error gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build', '--jobs', 16 ] npm error In file included from /root/.cache/node-gyp/23.1.0/include/node/cppgc/common.h:8, npm error from /root/.cache/node-gyp/23.1.0/include/node/v8.h:23, npm error from ../src/isolate/allocator.h:2, npm error from ../src/isolate/allocator_nortti.cc:1: npm error /root/.cache/node-gyp/23.1.0/include/node/v8config.h:13:2: error: #error "C++20 or later required." npm error 13 | #error "C++20 or later required." npm error | ^~~~~ npm error In file included from /root/.cache/node-gyp/23.1.0/include/node/cppgc/common.h:8, npm error from /root/.cache/node-gyp/23.1.0/include/node/v8.h:23, npm error from ../src/external_copy/external_copy.h:2, npm error from ../src/external_copy/serializer.h:2, npm error from ../src/external_copy/serializer_nortti.cc:1: npm error /root/.cache/node-gyp/23.1.0/include/node/v8config.h:13:2: error: #error "C++20 or later required." npm error 13 | #error "C++20 or later required." npm error | ^~~~~ npm error In file included from ../src/external_copy/external_copy.h:12: npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’? npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~~~~~~~~~~~~~~~~~~~~~~~ npm error | NonCopyablePersistentTraits npm error ../src/isolate/util.h:30:65: error: template argument 2 is invalid npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^ npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’? npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~~~~~~~~~~~~~~~~~~~~~~~ npm error | NonCopyablePersistentTraits npm error ../src/isolate/util.h:30:66: error: template argument 2 is invalid npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~ npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’? npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~~~~~~~~~~~~~~~~~~~~~~~ npm error | NonCopyablePersistentTraits npm error ../src/isolate/util.h:30:66: error: template argument 2 is invalid npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~ npm error ../src/isolate/util.h:30:18: error: invalid template-id npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~ npm error ../src/isolate/util.h:30:40: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’? npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~~~~~~~~~~~~~~~~~~~~~~~ npm error | NonCopyablePersistentTraits npm error ../src/isolate/util.h:30:66: error: ‘template<class T> auto ivm::Deref’ conflicts with a previous declaration npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~ npm error ../src/isolate/util.h:25:6: note: previous declaration ‘v8::Local<T> ivm::Deref(const v8::Persistent<T, v8::NonCopyablePersistentTraits<T> >&)’ npm error 25 | auto Deref(const v8::Persistent<T>& handle) -> v8::Local<T> { npm error | ^~~~~ npm error ../src/isolate/util.h:30:12: error: expected primary-expression before ‘const’ npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~~~~ npm error ../src/isolate/util.h:30:77: error: expected ‘;’ before ‘->’ token npm error 30 | auto Deref(const v8::Persistent<T, v8::CopyablePersistentTraits<T>>& handle) -> v8::Local<T> { npm error | ^~~ npm error | ; npm error In file included from ../src/isolate/holder.h:2, npm error from ../src/isolate/executor.h:6, npm error from ../src/isolate/environment.h:7, npm error from ../src/isolate/allocator_nortti.cc:2: npm error ../src/isolate/platform_delegate.h:15:22: error: ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘override’, but does not override npm error 15 | void PostTask(std::unique_ptr<v8::Task> task) override = 0; npm error | ^~~~~~~~ npm error ../src/isolate/platform_delegate.h:15:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’ npm error ../src/isolate/platform_delegate.h:16:22: error: ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘override’, but does not override npm error 16 | void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) override = 0; npm error | ^~~~~~~~~~~~~~~ npm error ../src/isolate/platform_delegate.h:16:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ npm error ../src/isolate/platform_delegate.h:17:22: error: ‘void ivm::TaskRunner::PostIdleTask(std::unique_ptr<v8::IdleTask>)’ marked ‘final’, but is not virtual npm error 17 | void PostIdleTask(std::unique_ptr<v8::IdleTask> /*task*/) final { std::terminate(); } npm error | ^~~~~~~~~~~~ npm error ../src/isolate/platform_delegate.h:21:22: error: ‘void ivm::TaskRunner::PostNonNestableDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual npm error 21 | void PostNonNestableDelayedTask(std::unique_ptr<v8::Task> /*task*/, double /*delay_in_seconds*/) final { std::terminate(); } npm error | ^~~~~~~~~~~~~~~~~~~~~~~~~~ npm error ../src/isolate/holder.h:55:22: error: ‘void ivm::IsolateTaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual npm error 55 | void PostTask(std::unique_ptr<v8::Task> task) final; npm error | ^~~~~~~~ npm error ../src/isolate/holder.h:56:22: error: ‘void ivm::IsolateTaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual npm error 56 | void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) final; npm error | ^~~~~~~~~~~~~~~ npm error ../src/isolate/holder.h:57:22: error: ‘void ivm::IsolateTaskRunner::PostNonNestableTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual npm error 57 | void PostNonNestableTask(std::unique_ptr<v8::Task> task) final { PostTask(std::move(task)); } npm error | ^~~~~~~~~~~~~~~~~~~ npm error In file included from ../src/isolate/holder.h:2, npm error from ../src/isolate/remote_handle.h:2, npm error from ../src/isolate/util.h:36: npm error ../src/isolate/platform_delegate.h:15:22: error: ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘override’, but does not override npm error 15 | void PostTask(std::unique_ptr<v8::Task> task) override = 0; npm error | ^~~~~~~~ npm error ../src/isolate/platform_delegate.h:15:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostTask(std::unique_ptr<v8::Task>)’ npm error ../src/isolate/platform_delegate.h:16:22: error: ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘override’, but does not override npm error 16 | void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) override = 0; npm error | ^~~~~~~~~~~~~~~ npm error ../src/isolate/platform_delegate.h:16:22: error: initializer specified for non-virtual method ‘void ivm::TaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ npm error ../src/isolate/platform_delegate.h:17:22: error: ‘void ivm::TaskRunner::PostIdleTask(std::unique_ptr<v8::IdleTask>)’ marked ‘final’, but is not virtual npm error 17 | void PostIdleTask(std::unique_ptr<v8::IdleTask> /*task*/) final { std::terminate(); } npm error | ^~~~~~~~~~~~ npm error ../src/isolate/platform_delegate.h:21:22: error: ‘void ivm::TaskRunner::PostNonNestableDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual npm error 21 | void PostNonNestableDelayedTask(std::unique_ptr<v8::Task> /*task*/, double /*delay_in_seconds*/) final { std::terminate(); } npm error | ^~~~~~~~~~~~~~~~~~~~~~~~~~ npm error ../src/isolate/holder.h:55:22: error: ‘void ivm::IsolateTaskRunner::PostTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual npm error 55 | void PostTask(std::unique_ptr<v8::Task> task) final; npm error | ^~~~~~~~ npm error ../src/isolate/holder.h:56:22: error: ‘void ivm::IsolateTaskRunner::PostDelayedTask(std::unique_ptr<v8::Task>, double)’ marked ‘final’, but is not virtual npm error 56 | void PostDelayedTask(std::unique_ptr<v8::Task> task, double delay_in_seconds) final; npm error | ^~~~~~~~~~~~~~~ npm error ../src/isolate/holder.h:57:22: error: ‘void ivm::IsolateTaskRunner::PostNonNestableTask(std::unique_ptr<v8::Task>)’ marked ‘final’, but is not virtual npm error 57 | void PostNonNestableTask(std::unique_ptr<v8::Task> task) final { PostTask(std::move(task)); } npm error | ^~~~~~~~~~~~~~~~~~~ npm error ../src/isolate/environment.h:111:60: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’? npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^~~~~~~~~~~~~~~~~~~~~~~~ npm error | NonCopyablePersistentTraits npm error ../src/isolate/environment.h:111:89: error: template argument 2 is invalid npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^~~~~~~ npm error ../src/isolate/environment.h:111:96: error: template argument 1 is invalid npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^~ npm error ../src/isolate/environment.h:111:96: error: template argument 2 is invalid npm error ../src/isolate/environment.h:111:98: error: expected unqualified-id before ‘>’ token npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^ npm error In file included from ../src/external_copy/serializer.h:3: npm error ../src/isolate/environment.h:111:60: error: ‘CopyablePersistentTraits’ is not a member of ‘v8’; did you mean ‘NonCopyablePersistentTraits’? npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^~~~~~~~~~~~~~~~~~~~~~~~ npm error | NonCopyablePersistentTraits npm error ../src/isolate/environment.h:111:89: error: template argument 2 is invalid npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^~~~~~~ npm error ../src/isolate/environment.h:111:96: error: template argument 1 is invalid npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^~ npm error ../src/isolate/environment.h:111:96: error: template argument 2 is invalid npm error ../src/isolate/environment.h:111:98: error: expected unqualified-id before ‘>’ token npm error 111 | std::deque<v8::Persistent<v8::Promise, v8::CopyablePersistentTraits<v8::Promise>>> unhandled_promise_rejections; npm error | ^ npm error In file included from ../src/module/transferable.h:2, npm error from ../src/external_copy/serializer_nortti.cc:3: npm error ../src/isolate/class_handle.h: In member function ‘void ivm::ClassHandle::TemplateDefinition::Add(const char*, ivm::detail::MemberAccessorHolder, Args ...)’: npm error ../src/isolate/class_handle.h:95:40: error: ‘class v8::ObjectTemplate’ has no member named ‘SetAccessor’ npm error 95 | proto->SetAccessor(name_handle, impl.getter.callback, impl.setter.callback); npm error | ^~~~~~~~~~~ npm error make: *** [nortti.target.mk:155: Release/obj.target/nortti/src/isolate/allocator_nortti.o] Error 1 npm error make: *** Waiting for unfinished jobs.... npm error make: *** [nortti.target.mk:155: Release/obj.target/nortti/src/external_copy/serializer_nortti.o] Error 1 npm error gyp ERR! build error npm error gyp ERR! stack Error: `make` failed with exit code: 2 npm error gyp ERR! stack at ChildProcess.<anonymous> (/usr/lib/node_modules/node-gyp/lib/build.js:216:23) npm error gyp ERR! System Linux 6.11.8-zen1-2-zen npm error gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--release" "-j" "max" npm error gyp ERR! cwd /usr/lib/node_modules/humanifyjs/node_modules/isolated-vm npm error gyp ERR! node -v v23.1.0 npm error gyp ERR! node-gyp -v v10.2.0 npm error gyp ERR! not ok ```
Author
Owner

@j4k0xb commented on GitHub (Nov 18, 2024):

node v23 isn't supported by isolated-vm
switch to v22 with e.g. fnm

<!-- gh-comment-id:2483762369 --> @j4k0xb commented on GitHub (Nov 18, 2024): node v23 isn't supported by isolated-vm switch to v22 with e.g. [fnm](https://github.com/Schniz/fnm)
Author
Owner

@0xdevalias commented on GitHub (Feb 16, 2025):

node v23 isn't supported by isolated-vm

  • https://github.com/laverdet/isolated-vm#security
    • Additionally, it is wise to keep nodejs up to date through point releases which affect v8. You can find these on the nodejs changelog by looking for entries such as "update V8 to 9.1.269.36 (Michaël Zasso) #38273". Historically there have usually been 3-5 of these updates within a single nodejs LTS release cycle. It is not recommended to use odd-numbered nodejs releases since these frequently break ABI and API compatibility and isolated-vm doesn't aim to be compatible with bleeding edge v8.

  • https://nodejs.org/en/about/previous-releases
    • Major Node.js versions enter Current release status for six months, which gives library authors time to add support for them. After six months, odd-numbered releases (9, 11, etc.) become unsupported, and even-numbered releases (10, 12, etc.) move to Active LTS status and are ready for general use. LTS release status is "long-term support", which typically guarantees that critical bugs will be fixed for a total of 30 months. Production applications should only use Active LTS or Maintenance LTS releases.

<!-- gh-comment-id:2661343307 --> @0xdevalias commented on GitHub (Feb 16, 2025): > node v23 isn't supported by isolated-vm - https://github.com/laverdet/isolated-vm#security - > Additionally, it is wise to keep nodejs up to date through point releases which affect v8. You can find these on the [nodejs changelog](https://github.com/nodejs/node/blob/master/CHANGELOG.md) by looking for entries such as "update V8 to 9.1.269.36 (Michaël Zasso) \#38273". Historically there have usually been 3-5 of these updates within a single nodejs LTS release cycle. **It is _not_ recommended to use odd-numbered nodejs releases since these frequently break ABI and API compatibility and isolated-vm doesn't aim to be compatible with bleeding edge v8.** - https://nodejs.org/en/about/previous-releases - > Major Node.js versions enter Current release status for six months, which gives library authors time to add support for them. **After six months, odd-numbered releases (9, 11, etc.) become unsupported**, and even-numbered releases (10, 12, etc.) move to Active LTS status and are ready for general use. LTS release status is "long-term support", which typically guarantees that critical bugs will be fixed for a total of 30 months. Production applications should only use Active LTS or Maintenance LTS releases.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/humanify#60
No description provided.