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

Support for Deno v1.13 FFI #63

Closed
jjallaire opened this issue Sep 5, 2021 · 5 comments
Closed

Support for Deno v1.13 FFI #63

jjallaire opened this issue Sep 5, 2021 · 5 comments

Comments

@jjallaire
Copy link

With the release of v1.13 Deno has replaced their native Rust plugin system with a more generic FFI interface (https://deno.com/blog/v1.13#experimental-ffi-replaces-native-plugin-system). Sadly Deno.openPlugin is now gone so deno_dom doesn't work w/ v1.13 and higher.

Are there plans to implement an FFI compatible version of deno_dom? We'd be happy to contribute to this effort if you can point us in the right direction.

@b-fuze
Copy link
Owner

b-fuze commented Sep 5, 2021

Yes, I plan to implement it. If you're interested you can take a jab at it. However, the new FFI feature doesn't support buffers yet. It can only pass number types. When they implement buffers I'll definitely get the native backend working again.

For reference, here's the (open as of this writing) PR tracking string and buffer support for the new FFI interface denoland/deno#11648

@jjallaire
Copy link
Author

Okay, great to know that FFI is on your radar and hope that the string and buffer support lands soon.

I think that #64 would likely be enough for us until FFI lands, in the case that we did also want to try using the native plugin version (as that would give us the perf win both at load time for deno_dom code path and of course at runtime) do you still have reservations about the Deno plugin system stability? (saw these noted here: #48). We'd be running with Deno v1.12.2 (the last version to support native plugins).

@b-fuze
Copy link
Owner

b-fuze commented Sep 5, 2021

do you still have reservations about the Deno plugin system stability?

Yes. The previous incarnation (that Deno DOM implements currently) of the plugin system was very unstable. If you want to use the last stable version of the native plugin you'll need to use v0.1.9-alpha with Deno v1.9 as v1.10 introduced the new and buggy native plugin interface.

@jjallaire
Copy link
Author

jjallaire commented Sep 6, 2021 via email

@b-fuze
Copy link
Owner

b-fuze commented Nov 12, 2021

Deno DOM Native works with FFI now, closing this

@b-fuze b-fuze closed this as completed Nov 12, 2021
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

2 participants