Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Node 20 Support? #8

Closed
halfmatthalfcat opened this issue Feb 21, 2024 · 7 comments
Closed

Node 20 Support? #8

halfmatthalfcat opened this issue Feb 21, 2024 · 7 comments

Comments

@halfmatthalfcat
Copy link

For reference, getting this stack:

FATAL ERROR: HandleScope::HandleScope Entering the V8 API without proper locking in place
 1: 0x102b11c15 node::Abort() [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
 2: 0x102b11d01 node::OnFatalError(char const*, char const*) [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
 3: 0x102cc2e95 v8::HandleScope::HandleScope(v8::Isolate*) [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
 4: 0x102ac7e88 napi_open_handle_scope [(redacted)/nvm/versions/node/v20.5.1/bin/node]
 5: 0x14b5da11d node_webrtc::AsyncContextReleaser::GetDefault() [(redacted)/node_modules/@roamhq/wrtc-darwin-x64/wrtc.node]
 6: 0x14b593088 node_webrtc::AsyncObjectWrap<node_webrtc::RTCPeerConnection>::AsyncObjectWrap(char const*, Napi::CallbackInfo const&) [(redacted)/node_modules/@roamhq/wrtc-darwin-x64/wrtc.node]
 7: 0x14b58343f node_webrtc::AsyncObjectWrapWithLoop<node_webrtc::RTCPeerConnection>::AsyncObjectWrapWithLoop(char const*, node_webrtc::RTCPeerConnection&, Napi::CallbackInfo const&) [(redacted)/node_modules/@roamhq/wrtc-darwin-x64/wrtc.node]
 8: 0x14b582b5f node_webrtc::RTCPeerConnection::RTCPeerConnection(Napi::CallbackInfo const&) [(redacted)/node_modules/@roamhq/wrtc-darwin-x64/wrtc.node]
 9: 0x14b5a5dba napi_value__* Napi::details::WrapCallback<Napi::ObjectWrap<node_webrtc::RTCPeerConnection>::ConstructorCallbackWrapper(napi_env__*, napi_callback_info__*)::'lambda0'()>(Napi::ObjectWrap<node_webrtc::RTCPeerConnection>::ConstructorCallbackWrapper(napi_env__*, napi_callback_info__*)::'lambda0'()) [(redacted)/node_modules/@roamhq/wrtc-darwin-x64/wrtc.node]
10: 0x14b5a54a9 Napi::ObjectWrap<node_webrtc::RTCPeerConnection>::ConstructorCallbackWrapper(napi_env__*, napi_callback_info__*) [(redacted)/node_modules/@roamhq/wrtc-darwin-x64/wrtc.node]
11: 0x102aca1e0 v8impl::(anonymous namespace)::FunctionCallbackWrapper::Invoke(v8::FunctionCallbackInfo<v8::Value> const&) [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
12: 0x102d29683 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<true>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, unsigned long*, int) [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
13: 0x102d2914a v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
14: 0x1036d5eb6 Builtins_CEntry_Return1_ArgvOnStack_BuiltinExit [(redacted)/.nvm/versions/node/v20.5.1/bin/node]
@duvallj
Copy link
Collaborator

duvallj commented Feb 21, 2024

Oh wow! Looks like there is some new requirements for Node 20 that weren't present in Node 18. From #7 as well, it does seem like I'll need to rewrite the whole object manager to make it properly compatible. Thanks for the report!

Unfortunately, my company hasn't allocated me any cycles for this project, and I've been doing other stuff in my spare time, sorry for the lack of support.

@halfmatthalfcat
Copy link
Author

Oh wow! Looks like there is some new requirements for Node 20 that weren't present in Node 18. From #7 as well, it does seem like I'll need to rewrite the whole object manager to make it properly compatible. Thanks for the report!

Unfortunately, my company hasn't allocated me any cycles for this project, and I've been doing other stuff in my spare time, sorry for the lack of support.

No prob, I'll probably take this up at some point myself if need be. I can get by on Node 18 for now. May reach out eventually for some help navigating things, if you have time then.

@duvallj
Copy link
Collaborator

duvallj commented Feb 21, 2024

May reach out eventually for some help navigating things, if you have time then.

Of course! Always happy to answer any questions. You can reach me at jack ro.am (work email) or theduvallj gmail.com (personal email)

@o0101
Copy link

o0101 commented Feb 27, 2024

About node 20, I can say that I've successfully compiled / used pre-compiled libs for a range of x64 platforms, for both node 20, and node 21. It is possible, just try to recompile on the target system, that might help, I'm not sure!

@duvallj
Copy link
Collaborator

duvallj commented Feb 28, 2024

I've published binaries to the 0.7.2 version of @roamhq/wrtc package that I think work with Node 20, insofar as "they pass unit tests" on all my x64 machines. Clearly there are many other problem with this library, but the exact title of this issue has been solved, so I will close it for now.

If this error still occurs, please provide reproduction steps & change the title and I will re-open it.

@duvallj duvallj closed this as completed Feb 28, 2024
@o0101
Copy link

o0101 commented Feb 29, 2024

You're awesome @duvallj - we love your work! ❤️

@halfmatthalfcat
Copy link
Author

Thank you so much @duvallj!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants